summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile7
-rw-r--r--docs/customize-libc-config.txt2
-rw-r--r--docs/make-tips.txt9
-rw-r--r--mk/build.mk15
-rw-r--r--mk/modules.mk4
-rw-r--r--mk/vars.mk35
-rw-r--r--package/aiccu/Makefile4
-rw-r--r--package/aiccu/patches/patch-common_common_h12
-rw-r--r--package/aiccu/src/common/dn_skipname.c10
-rw-r--r--package/atftp/Makefile2
-rw-r--r--package/binutils/Makefile6
-rw-r--r--package/glibc/Makefile6
-rw-r--r--package/pcc/Makefile12
-rw-r--r--package/strace/patches/patch-desc_c14
-rw-r--r--target/arm/kernel/cubox-i2
-rw-r--r--target/arm/kernel/qemu-arm-versatilepb13
-rw-r--r--target/arm/kernel/qemu-arm-vexpress-a93
-rw-r--r--target/config/Config.in108
-rw-r--r--target/config/Config.in.runtime14
-rw-r--r--target/linux/config/Config.in.audio3
-rw-r--r--target/linux/config/Config.in.block48
-rw-r--r--target/linux/config/Config.in.debug2
-rw-r--r--target/linux/config/Config.in.flash15
-rw-r--r--target/linux/config/Config.in.netdevice16
-rw-r--r--target/linux/config/Config.in.network8
-rw-r--r--target/linux/config/Config.in.nls10
-rw-r--r--target/linux/kernel.config4
-rw-r--r--target/m68k/kernel/aranym-m68k2
-rw-r--r--target/microblaze/kernel/qemu-microblaze-ml60511
-rw-r--r--target/microblaze/kernel/qemu-microblaze-s3adsp18007
-rw-r--r--target/microblaze/sys-available/qemu-microblaze1
-rw-r--r--target/microblaze/sys-available/qemu-microblazeel1
-rw-r--r--target/mips/kernel/lemote-yeelong3
-rw-r--r--target/mips/kernel/qemu-mips19
-rw-r--r--target/mips/kernel/qemu-mips6419
-rw-r--r--target/mips/kernel/qemu-mips64el17
-rw-r--r--target/mips/kernel/qemu-mipsel19
-rw-r--r--target/packages/pkg-available/test3
-rw-r--r--target/ppc/kernel/qemu-ppc11
-rw-r--r--target/ppc64/kernel/qemu-ppc649
-rw-r--r--target/sh/kernel/qemu-sh13
-rw-r--r--target/sparc/kernel/qemu-sparc8
-rw-r--r--target/sparc64/kernel/qemu-sparc649
-rw-r--r--target/x86/kernel/ibm-x403
-rw-r--r--target/x86/kernel/qemu-i68615
-rw-r--r--target/x86_64/kernel/qemu-x86_6415
-rw-r--r--toolchain/Config.in8
-rw-r--r--toolchain/binutils/Makefile7
-rw-r--r--toolchain/gcc/Makefile41
-rw-r--r--toolchain/glibc/Makefile6
-rw-r--r--toolchain/glibc/Makefile.inc20
-rw-r--r--toolchain/musl/patches/musl-x32.patch12
52 files changed, 307 insertions, 356 deletions
diff --git a/Makefile b/Makefile
index 8ca346b8b..8c603e196 100644
--- a/Makefile
+++ b/Makefile
@@ -32,8 +32,7 @@ help:
@echo ' kernelconfig - Modify the target kernel configuration'
@echo ''
@echo 'Cleaning targets:'
- @echo ' clean - Remove bin and build_dir directories'
- @echo ' cleantarget - Same as "clean", but also remove toolchain for target'
+ @echo ' clean - Remove firmware and build directories'
@echo ' cleandir - Same as "clean", but also remove all built toolchains'
@echo ' cleankernel - Remove kernel dir, useful if you changed any kernel patches'
@echo ' distclean - Same as "cleandir", but also remove downloaded'
@@ -100,10 +99,6 @@ cleandir dirclean: .prereq_done
-@${GMAKE_INV} cleandir
@-rm -f make.log .prereq_done
-cleantarget targetclean: .prereq_done
- -@${GMAKE_INV} cleantarget
- @-rm -f make.log
-
cleantoolchain toolchainclean: .prereq_done
-@${GMAKE_INV} cleantoolchain
diff --git a/docs/customize-libc-config.txt b/docs/customize-libc-config.txt
index 075a272a0..438e630f8 100644
--- a/docs/customize-libc-config.txt
+++ b/docs/customize-libc-config.txt
@@ -27,7 +27,7 @@ and rebuild your targetsystem, including the toolchain components:
----------------
$ cp .config ../target/<arch>/uclibc.config
- $ cd .. && make cleantarget && make
+ $ cd .. && make cleandir && make
----------------
There are no customization options for GNU libc or musl available.
diff --git a/docs/make-tips.txt b/docs/make-tips.txt
index 787121cb4..f508633e9 100644
--- a/docs/make-tips.txt
+++ b/docs/make-tips.txt
@@ -42,13 +42,8 @@ and pkg trees, the firmware and the toolchain for all targets):
$ make cleandir
--------------------
-If you only want to clean your specific configured target, just use:
-
---------------------
- $ make cleantarget
---------------------
-
-If you even want to clean any downloaded source:
+If you even want to clean any downloaded source and your
+confiuration +.config+:
--------------------
$ make distclean
diff --git a/mk/build.mk b/mk/build.mk
index 90168586a..821548428 100644
--- a/mk/build.mk
+++ b/mk/build.mk
@@ -41,8 +41,6 @@ DEFCONFIG= ADK_DEBUG=n \
ADK_PKG_TEST=n \
ADK_PKG_MPDBOX=n \
ADK_PKG_DEVELOPMENT=n \
- ADK_PKG_CONSOLE=n \
- ADK_PKG_TEST=n \
ADK_TOOLCHAIN_GCC_USE_SSP=n \
ADK_TOOLCHAIN_GCC_USE_LTO=n \
BUSYBOX_IFPLUGD=n \
@@ -122,7 +120,7 @@ POSTCONFIG= -@\
make kernelclean;\
fi; \
if [ "$$(grep ^ADK_LINUX_ARM_WITH_THUMB .config|md5sum)" != "$$(grep ^ADK_LINUX_ARM_WITH_THUMB .config.old|md5sum)" ];then \
- echo "You should make cleantarget, after changing thumb mode";\
+ echo "You should make cleandir, after changing thumb mode";\
fi; \
if [ $$rebuild -eq 1 ];then \
cp .config .config.old;\
@@ -144,7 +142,7 @@ ${TOPDIR}/package/Depends.mk: ${TOPDIR}/.config $(wildcard ${TOPDIR}/package/*/M
$(STAGING_HOST_DIR)/usr/bin/depmaker > ${TOPDIR}/package/Depends.mk
.NOTPARALLEL:
-.PHONY: all world clean cleantarget cleandir cleantoolchain distclean image_clean
+.PHONY: all world clean cleandir cleantoolchain distclean image_clean
world:
mkdir -p $(DL_DIR) $(BUILD_DIR) $(TARGET_DIR) $(FW_DIR) \
@@ -275,13 +273,6 @@ cleantoolchain:
@rm -rf $(STAGING_TARGET_DIR_PFX) $(STAGING_PKG_DIR_PFX)
@rm -f .menu .tmpconfig.h .rebuild* ${TOPDIR}/package/Depends.mk
-cleantarget:
- @$(TRACE) cleantarget
- @$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE)
- rm -rf $(BUILD_DIR) $(FW_DIR) $(TARGET_DIR)
- rm -rf $(TOOLCHAIN_BUILD_DIR) $(STAGING_HOST_DIR) $(STAGING_TARGET_DIR) $(STAGING_PKG_DIR)
- rm -f .tmpconfig.h all.config .defconfig
-
distclean:
@$(TRACE) distclean
@$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE)
@@ -593,7 +584,7 @@ bulkallmod:
$(GMAKE) prereq && \
$(GMAKE) ARCH=$$arch SYSTEM=$$system LIBC=$$libc FS=archive allmodconfig; \
$(GMAKE) VERBOSE=1 all; if [ $$? -ne 0 ]; then echo $$system-$$libc >.exit; exit 1;fi; \
- $(GMAKE) cleantarget; \
+ $(GMAKE) clean; \
rm .config; \
) 2>&1 | tee $(TOPDIR)/firmware/$${system}_$${arch}_$$libc/build.log; \
if [ -f .exit ]; then break;fi \
diff --git a/mk/modules.mk b/mk/modules.mk
index 52678042c..e8a0821de 100644
--- a/mk/modules.mk
+++ b/mk/modules.mk
@@ -1294,7 +1294,7 @@ $(eval $(call KMOD_template,PCMCIA,pcmcia,\
,60))
$(eval $(call KMOD_template,SERIAL_8250_CS,serial-8250-cs,\
- $(MODULES_DIR)/kernel/drivers/tty/serial/serial_cs \
+ $(MODULES_DIR)/kernel/drivers/tty/serial/8250/serial_cs \
,70))
#
@@ -1743,7 +1743,7 @@ $(eval $(call KMOD_template,PARPORT_PC,parport-pc,\
,55))
$(eval $(call KMOD_template,PLIP,plip,\
- $(MODULES_DIR)/kernel/drivers/net/plip \
+ $(MODULES_DIR)/kernel/drivers/net/plip/plip \
,60))
#
diff --git a/mk/vars.mk b/mk/vars.mk
index 5fd4a51aa..dc030f0ca 100644
--- a/mk/vars.mk
+++ b/mk/vars.mk
@@ -21,7 +21,7 @@ TOOLS_BUILD_DIR= $(BASE_DIR)/tools_build
SCRIPT_DIR:= $(BASE_DIR)/scripts
STAGING_HOST_DIR:= ${BASE_DIR}/host_${GNU_HOST_NAME}
-# PFX dirs for cleandir
+# dirs for cleandir
FW_DIR_PFX:= $(BASE_DIR)/firmware
BUILD_DIR_PFX:= $(BASE_DIR)/build_*
STAGING_PKG_DIR_PFX:= ${BASE_DIR}/pkg_*
@@ -56,18 +56,13 @@ TARGET_PATH= ${SCRIPT_DIR}:${STAGING_TARGET_DIR}/scripts:${STAGING_HOST_DIR}/bi
HOST_PATH= ${SCRIPT_DIR}:${STAGING_HOST_DIR}/bin:${STAGING_HOST_DIR}/usr/bin:${_PATH}
AUTOTOOL_PATH= ${STAGING_HOST_DIR}/bin:${STAGING_HOST_DIR}/usr/bin:${STAGING_TARGET_DIR}/scripts:${_PATH}
-ifeq ($(ADK_TARGET_ABI_X32),y)
-GNU_TARGET_NAME= $(CPU_ARCH)-x32-linux-$(ADK_TARGET_SUFFIX)
-else
-GNU_TARGET_NAME= $(CPU_ARCH)-$(ADK_VENDOR)-linux-$(ADK_TARGET_SUFFIX)
-endif
-
ifeq ($(ADK_DISABLE_HONOUR_CFLAGS),)
GCC_CHECK:= GCC_HONOUR_COPTS=2
else
GCC_CHECK:=
endif
+GNU_TARGET_NAME:= $(CPU_ARCH)-$(ADK_VENDOR)-linux-$(ADK_TARGET_SUFFIX)
TARGET_CROSS:= $(STAGING_HOST_DIR)/bin/$(GNU_TARGET_NAME)-
TARGET_COMPILER_PREFIX?=${TARGET_CROSS}
CONFIGURE_TRIPLE:= --build=${GNU_HOST_NAME} --host=${GNU_TARGET_NAME} --target=${GNU_TARGET_NAME}
@@ -76,10 +71,17 @@ ifneq ($(strip ${ADK_USE_CCACHE}),)
TARGET_COMPILER_PREFIX=ccache ${TARGET_CROSS}
endif
-# target compiler flags
+# target tools
TARGET_CC:= ${TARGET_COMPILER_PREFIX}gcc
TARGET_CXX:= ${TARGET_COMPILER_PREFIX}g++
TARGET_LD:= ${TARGET_COMPILER_PREFIX}ld
+TARGET_AR:= ${TARGET_COMPILER_PREFIX}ar
+TARGET_RANLIB:= ${TARGET_COMPILER_PREFIX}ranlib
+
+ifneq ($(ADK_TARGET_ABI_CFLAGS),)
+TARGET_CC+= $(ADK_TARGET_ABI_CFLAGS)
+TARGET_CXX+= $(ADK_TARGET_ABI_CFLAGS)
+endif
MODE_FLAGS:=
ifeq ($(ADK_LINUX_ARM),y)
@@ -91,13 +93,13 @@ endif
endif
TARGET_CPPFLAGS:=
-TARGET_CFLAGS:= $(TARGET_CFLAGS_ARCH) -fwrapv -fno-ident -fhonour-copts $(ADK_TARGET_ABI_CFLAGS) $(MODE_FLAGS)
-TARGET_CFLAGS_LIBC:= $(TARGET_CFLAGS_ARCH) -fwrapv -fno-ident -fhonour-copts $(TARGET_OPTIMIZATION) $(MODE_FLAGS)
-TARGET_CXXFLAGS:= $(TARGET_CFLAGS_ARCH) -fwrapv -fno-ident $(MODE_FLAGS)
+TARGET_CFLAGS:= $(TARGET_CFLAGS_ARCH) -fwrapv -fno-ident -fhonour-copts
+TARGET_CXXFLAGS:= $(TARGET_CFLAGS_ARCH) -fwrapv -fno-ident
TARGET_LDFLAGS:= -L$(STAGING_TARGET_DIR)/lib -L$(STAGING_TARGET_DIR)/usr/lib \
-Wl,-O1 -Wl,-rpath -Wl,/usr/lib \
-Wl,-rpath-link -Wl,${STAGING_TARGET_DIR}/usr/lib \
$(ADK_TARGET_ABI_LDFLAGS)
+
# security optimization, see http://www.akkadia.org/drepper/dsohowto.pdf
TARGET_LDFLAGS+= -Wl,-z,relro,-z,now
# needed for musl ppc
@@ -130,6 +132,10 @@ TARGET_CFLAGS+= -fno-unwind-tables -fno-asynchronous-unwind-tables
TARGET_CFLAGS+= -g3
endif
+ifneq ($(MODE_FLAGS),)
+TARGET_CFLAGS+= $(MODE_CFLAGS)
+TARGET_CXXFLAGS+= $(MODE_CFLAGS)
+endif
# A nifty macro to make testing gcc features easier (from uClibc project)
check_gcc=$(shell \
@@ -139,7 +145,6 @@ check_gcc=$(shell \
CF_FOR_BUILD=$(call check_gcc,-fhonour-copts,)
# host compiler flags
-CXX_FOR_BUILD?= g++
CPPFLAGS_FOR_BUILD?= -I$(STAGING_HOST_DIR)/usr/include
CFLAGS_FOR_BUILD= -O2 -Wall $(CF_FOR_BUILD)
CXXFLAGS_FOR_BUILD?= -O2 -Wall
@@ -150,9 +155,11 @@ PATCH= ${BASH} $(SCRIPT_DIR)/patch.sh
SED:= PATH=${HOST_PATH} sed -i -e
LINUX_DIR:= $(BUILD_DIR)/linux
KERNEL_MODULE_FLAGS:= ARCH=${ARCH} \
- KERNEL_PATH=${LINUX_DIR} KERNELDIR=${LINUX_DIR} KERNEL_DIR=${LINUX_DIR} \
+ KERNEL_PATH=${LINUX_DIR} \
+ KERNELDIR=${LINUX_DIR} \
+ KERNEL_DIR=${LINUX_DIR} \
PREFIX=/usr CROSS_COMPILE="${TARGET_CROSS}" \
- LDFLAGS="$(ADK_TARGET_KERNEL_LDFLAGS)" CFLAGS_MODULE="-fhonour-copts" V=1
+ CFLAGS_MODULE="-fhonour-copts" V=1
TARGET_CONFIGURE_OPTS= PATH='${TARGET_PATH}' \
AR='$(TARGET_CROSS)ar' \
diff --git a/package/aiccu/Makefile b/package/aiccu/Makefile
index d009394f7..407c3a65c 100644
--- a/package/aiccu/Makefile
+++ b/package/aiccu/Makefile
@@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:= aiccu
PKG_VERSION:= 20070115
-PKG_RELEASE:= 10
+PKG_RELEASE:= 11
PKG_MD5SUM:= c9bcc83644ed788e22a7c3f3d4021350
PKG_DESCR:= SixXS Automatic IPv6 Connectivity Client Utility
PKG_SECTION:= ipv6
@@ -13,6 +13,8 @@ PKG_DEPENDS:= kmod-ipv6 kmod-tun libpthread
PKG_URL:= http://www.sixxs.net/
PKG_SITES:= http://www.sixxs.net/archive/sixxs/aiccu/unix/
+PKG_LIBC_DEPENDS:= uclibc glibc
+
DISTFILES:= $(PKG_NAME)_$(PKG_VERSION).tar.gz
WRKDIST= ${WRKDIR}/$(PKG_NAME)
diff --git a/package/aiccu/patches/patch-common_common_h b/package/aiccu/patches/patch-common_common_h
new file mode 100644
index 000000000..42cd7b5a2
--- /dev/null
+++ b/package/aiccu/patches/patch-common_common_h
@@ -0,0 +1,12 @@
+--- aiccu.orig/common/common.h 2007-01-11 15:50:51.000000000 +0100
++++ aiccu/common/common.h 2014-03-16 21:47:28.000000000 +0100
+@@ -91,7 +91,9 @@
+ #include <sys/select.h>
+
+ #include <net/if.h>
++#ifdef __GLIBC__
+ #include <netinet/if_ether.h>
++#endif
+ #ifdef linux
+ #include <netpacket/packet.h>
+ #include <linux/if_tun.h>
diff --git a/package/aiccu/src/common/dn_skipname.c b/package/aiccu/src/common/dn_skipname.c
index f2219f335..3b4a756b9 100644
--- a/package/aiccu/src/common/dn_skipname.c
+++ b/package/aiccu/src/common/dn_skipname.c
@@ -9,10 +9,10 @@
* return:
* 0 on success, -1 (with errno set) on failure.
*/
-int ns_name_skip(const u_char **ptrptr, const u_char *eom)
+int ns_name_skip(const unsigned char **ptrptr, const unsigned char *eom)
{
- const u_char *cp;
- u_int n;
+ const unsigned char *cp;
+ unsigned int n;
cp = *ptrptr;
while (cp < eom && (n = *cp++) != 0)
@@ -40,9 +40,9 @@ int ns_name_skip(const u_char **ptrptr, const u_char *eom)
return (0);
}
-int dn_skipname(const u_char *ptr, const u_char *eom)
+int dn_skipname(const unsigned char *ptr, const unsigned char *eom)
{
- const u_char *saveptr = ptr;
+ const unsigned char *saveptr = ptr;
if(ns_name_skip(&ptr, eom) == -1)
return (-1);
diff --git a/package/atftp/Makefile b/package/atftp/Makefile
index 598f58a06..7d5eefa66 100644
--- a/package/atftp/Makefile
+++ b/package/atftp/Makefile
@@ -14,6 +14,8 @@ PKG_BUILDDEP:= readline ncurses
PKG_URL:= http://freshmeat.net/projects/atftp/
PKG_SITES:= ftp://ftp.mamalinux.com/pub/atftp/
+PKG_LIBC_DEPENDS:= uclibc glibc
+
PKG_SUBPKGS:= ATFTP ATFTPD
PKGSD_ATFTPD:= TFTP server
PKGSS_ATFTPD:= libreadline libncurses
diff --git a/package/binutils/Makefile b/package/binutils/Makefile
index c23bac585..5734e198d 100644
--- a/package/binutils/Makefile
+++ b/package/binutils/Makefile
@@ -25,10 +25,10 @@ include ${TOPDIR}/mk/package.mk
$(eval $(call PKG_template,BINUTILS,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
$(eval $(call PKG_template,LIBBFD,libbfd,${PKG_VERSION}-${PKG_RELEASE},,${PKGSD_LIBBFD},${PKGSC_LIBBFD},${PKG_OPTS}))
-ifeq ($(ADK_TARGET_WITH_MULTILIB),y)
-CONFIGURE_ARGS+= --enable-multilib
-else
+ifeq ($(ADK_LINUX_SH)$(ADK_LINUX_X86_64),)
CONFIGURE_ARGS+= --disable-multilib
+else
+CONFIGURE_ARGS+= --enable-multilib
endif
TARGET_CFLAGS:= $(filter-out -flto,$(TARGET_CFLAGS))
diff --git a/package/glibc/Makefile b/package/glibc/Makefile
index 17c49f3af..92ccf8cd4 100644
--- a/package/glibc/Makefile
+++ b/package/glibc/Makefile
@@ -31,10 +31,10 @@ INSTALL_STYLE:= manual
# compile nothing, glibc is already build in toolchain directory
do-install:
${INSTALL_DIR} ${IDIR_GLIBC}/$(ADK_TARGET_LIBC_PATH)
- $(CP) $(STAGING_TARGET_DIR)/lib/ld*.so* $(IDIR_GLIBC)/$(ADK_TARGET_LIBC_PATH)
+ $(CP) $(STAGING_TARGET_DIR)/$(ADK_TARGET_LIBC_PATH)/ld*.so* $(IDIR_GLIBC)/$(ADK_TARGET_LIBC_PATH)
for file in libc libcrypt libdl libm libnsl libresolv libutil libnss_compat libnss_dns libnss_files; do \
- $(CP) $(STAGING_TARGET_DIR)/lib/$$file.so* $(IDIR_GLIBC)/$(ADK_TARGET_LIBC_PATH); \
- $(CP) $(STAGING_TARGET_DIR)/lib/$$file-$(PKG_VERSION).so $(IDIR_GLIBC)/$(ADK_TARGET_LIBC_PATH); \
+ $(CP) $(STAGING_TARGET_DIR)/$(ADK_TARGET_LIBC_PATH)/$$file.so* $(IDIR_GLIBC)/$(ADK_TARGET_LIBC_PATH); \
+ $(CP) $(STAGING_TARGET_DIR)/$(ADK_TARGET_LIBC_PATH)/$$file-$(PKG_VERSION).so $(IDIR_GLIBC)/$(ADK_TARGET_LIBC_PATH); \
done
${INSTALL_DIR} $(IDIR_GLIBC)/usr/bin
$(CP) $(STAGING_TARGET_DIR)/usr/bin/getconf $(IDIR_GLIBC)/usr/bin
diff --git a/package/pcc/Makefile b/package/pcc/Makefile
index 891651d3a..ef3e70b28 100644
--- a/package/pcc/Makefile
+++ b/package/pcc/Makefile
@@ -22,19 +22,17 @@ include $(TOPDIR)/mk/package.mk
$(eval $(call PKG_template,PCC,pcc,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
# we cross-compile a native compiler for the target system
-CONFIGURE_ARGS+= --host=${GNU_TARGET_NAME}
-CONFIGURE_ARGS+= --target=${GNU_TARGET_NAME}
-CONFIGURE_ARGS+= --with-assembler=/usr/bin/as
-CONFIGURE_ARGS+= --with-linker=/usr/bin/ld
+CONFIGURE_ARGS+= --host=${GNU_TARGET_NAME} \
+ --target=${GNU_TARGET_NAME} \
+ --with-assembler=/usr/bin/as \
+ --with-linker=/usr/bin/ld
ifeq ($(ADK_TARGET_LIB_GLIBC),y)
TARGET_CPPFLAGS+= -DADK_FOR_GLIBC
-else
+endif
ifeq ($(ADK_TARGET_LIB_UCLIBC),y)
TARGET_CPPFLAGS+= -DADK_FOR_UCLIBC
endif
-endif
-endif
pcc-install:
$(INSTALL_DIR) $(IDIR_PCC)
diff --git a/package/strace/patches/patch-desc_c b/package/strace/patches/patch-desc_c
index 9cfb5f505..63a01023e 100644
--- a/package/strace/patches/patch-desc_c
+++ b/package/strace/patches/patch-desc_c
@@ -1,5 +1,5 @@
--- strace-4.8.orig/desc.c 2013-05-02 00:39:10.000000000 +0200
-+++ strace-4.8/desc.c 2014-02-25 15:16:36.000000000 +0100
++++ strace-4.8/desc.c 2014-03-01 19:44:21.000000000 +0100
@@ -223,7 +223,7 @@ static const struct xlat perf_event_open
{ 0, NULL },
};
@@ -9,3 +9,15 @@
/* fcntl/lockf */
static void
printflock64(struct tcb *tcp, long addr, int getlk)
+@@ -255,7 +255,11 @@ printflock(struct tcb *tcp, long addr, i
+ #if SUPPORTED_PERSONALITIES > 1
+ # ifdef X32
+ if (current_personality == 0) {
++#if defined(__GLIBC__)
+ printflock64(tcp, addr, getlk);
++#else
++ printflock(tcp, addr, getlk);
++#endif
+ return;
+ }
+ # endif
diff --git a/target/arm/kernel/cubox-i b/target/arm/kernel/cubox-i
index 9843ee37e..10e5e1a73 100644
--- a/target/arm/kernel/cubox-i
+++ b/target/arm/kernel/cubox-i
@@ -26,11 +26,9 @@ CONFIG_MMC_SDHCI=y
CONFIG_MMC_SDHCI_IO_ACCESSORS=y
CONFIG_MMC_SDHCI_PLTFM=y
CONFIG_MMC_SDHCI_ESDHC_IMX=y
-CONFIG_NETDEVICES=y
CONFIG_MII=y
CONFIG_PHYLIB=y
CONFIG_MICREL_PHY=y
-CONFIG_NET_ETHERNET=y
CONFIG_SMSC911X=y
CONFIG_SERIAL_IMX=y
CONFIG_SERIAL_IMX_CONSOLE=y
diff --git a/target/arm/kernel/qemu-arm-versatilepb b/target/arm/kernel/qemu-arm-versatilepb
index ce52647be..f208772d0 100644
--- a/target/arm/kernel/qemu-arm-versatilepb
+++ b/target/arm/kernel/qemu-arm-versatilepb
@@ -16,20 +16,7 @@ CONFIG_USE_OF=y
CONFIG_ATAGS=y
CONFIG_DTC=y
CONFIG_OF=y
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_SCSI_SPI_ATTRS=y
-CONFIG_SCSI_LOWLEVEL=y
-CONFIG_SCSI_SYM53C8XX_2=y
-CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
-CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
-CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
-CONFIG_SCSI_SYM53C8XX_MMIO=y
-CONFIG_NETDEVICES=y
CONFIG_MII=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_SMSC=y
CONFIG_SMC91X=y
CONFIG_SERIAL_AMBA_PL011=y
diff --git a/target/arm/kernel/qemu-arm-vexpress-a9 b/target/arm/kernel/qemu-arm-vexpress-a9
index b6535116a..7415e31b4 100644
--- a/target/arm/kernel/qemu-arm-vexpress-a9
+++ b/target/arm/kernel/qemu-arm-vexpress-a9
@@ -14,9 +14,6 @@ CONFIG_VFPv3=y
CONFIG_NEON=y
CONFIG_OF=y
CONFIG_DTC=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_SMSC=y
CONFIG_SMSC911X=y
CONFIG_SERIAL_AMBA_PL011=y
diff --git a/target/config/Config.in b/target/config/Config.in
index d2d5b6671..ee6aaa695 100644
--- a/target/config/Config.in
+++ b/target/config/Config.in
@@ -188,9 +188,6 @@ config ADK_TARGET_LIBC_PATH
|| ADK_LINUX_X86_64
default "lib"
-
-# submodel support
-
config ADK_TARGET_KERNEL_MINICONFIG
string
default "qemu-microblaze-s3adsp1800" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
@@ -222,6 +219,63 @@ config ADK_QEMU_ARGS
default "-nographic" if ADK_TARGET_QEMU_WITHOUT_GRAPHIC
choice
+prompt "Qemu MICROBLAZE Emulation"
+depends on ADK_TARGET_SYSTEM_QEMU_MICROBLAZE || ADK_TARGET_SYSTEM_QEMU_MICROBLAZEEL
+
+config ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605
+ boolean "Xilinx ml605"
+ select ADK_TARGET_WITH_MTD
+
+config ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
+ boolean "Xilinx Spartan S3ADSP1800"
+
+endchoice
+
+choice
+prompt "Qemu ARM Emulation"
+depends on ADK_TARGET_SYSTEM_QEMU_ARM || ADK_TARGET_SYSTEM_QEMU_ARMHF
+
+config ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9
+ boolean "ARM Ltd. Versatile Express for Cortex-A9"
+ select ADK_CPU_CORTEX_A9
+
+config ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB
+ boolean "ARM Ltd. Versatile/PB"
+ select ADK_soft_float
+ select ADK_eabi
+ select ADK_CPU_ARM926EJ_S
+ depends on ADK_TARGET_SYSTEM_QEMU_ARM
+
+config ADK_TARGET_QEMU_ARM_MODEL_SPITZ
+ boolean "Xscale PXA270 Spitz PDA"
+ select ADK_soft_float
+ select ADK_eabi
+ select ADK_CPU_XSCALE
+ select ADK_TARGET_WITH_VGA
+ depends on ADK_TARGET_SYSTEM_QEMU_ARM
+
+endchoice
+
+choice
+prompt "Qemu Emulation with permanent storage device (disk/flash)"
+depends on ADK_HARDWARE_QEMU
+
+config ADK_TARGET_QEMU_WITHOUT_BLOCK
+ boolean "disabled"
+
+config ADK_TARGET_QEMU_WITH_BLOCK
+ boolean "enabled"
+ select ADK_KERNEL_SCSI_SYM53C8XX_2 if ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB
+ select ADK_KERNEL_MTD_M25P80 if ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605
+ select ADK_KERNEL_ATA_PIIX if ADK_LINUX_MIPS || ADK_TARGET_SYSTEM_QEMU_I686
+ select ADK_KERNEL_PATA_MACIO if ADK_TARGET_SYSTEM_QEMU_PPC
+ select ADK_KERNEL_SCSI_IBMVSCSI if ADK_TARGET_SYSTEM_QEMU_PPC64
+ select ADK_KERNEL_SCSI_SUNESP if ADK_TARGET_SYSTEM_QEMU_SPARC
+ select ADK_KERNEL_PATA_PLATFORM if ADK_LINUX_SH
+
+endchoice
+
+choice
prompt "Qemu Emulation with graphical output"
depends on ADK_HARDWARE_QEMU
@@ -265,43 +319,6 @@ config ADK_TARGET_QEMU_WITHOUT_VIRTIO
endchoice
-choice
-prompt "Qemu MICROBLAZE Emulation"
-depends on ADK_TARGET_SYSTEM_QEMU_MICROBLAZE || ADK_TARGET_SYSTEM_QEMU_MICROBLAZEEL
-
-config ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605
- boolean "Xilinx ml605"
- select ADK_TARGET_WITH_MTD
-
-config ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
- boolean "Xilinx Spartan S3ADSP1800"
-
-endchoice
-
-choice
-prompt "Qemu ARM Emulation"
-depends on ADK_TARGET_SYSTEM_QEMU_ARM || ADK_TARGET_SYSTEM_QEMU_ARMHF
-
-config ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9
- boolean "ARM Ltd. Versatile Express for Cortex-A9"
- select ADK_CPU_CORTEX_A9
-
-config ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB
- boolean "ARM Ltd. Versatile/PB"
- select ADK_soft_float
- select ADK_eabi
- select ADK_CPU_ARM926EJ_S
- depends on ADK_TARGET_SYSTEM_QEMU_ARM
-
-config ADK_TARGET_QEMU_ARM_MODEL_SPITZ
- boolean "Xscale PXA270 Spitz PDA"
- select ADK_soft_float
- select ADK_eabi
- select ADK_CPU_XSCALE
- select ADK_TARGET_WITH_VGA
- depends on ADK_TARGET_SYSTEM_QEMU_ARM
-
-endchoice
choice
prompt "Use ARM thumb mode"
@@ -578,17 +595,6 @@ config ADK_TARGET_ABI_CFLAGS
default "-mx32" if ADK_x32
default "-m64" if ADK_64
-config ADK_TARGET_ABI_LDFLAGS
- string
- default "-Wl,-m -Wl,elf_i386" if ADK_32
-
-config ADK_TARGET_KERNEL_LDFLAGS
- string
- default "-mabi=64" if ADK_n32 && ADK_TARGET_KERNEL64
- default "-mabi=64" if ADK_o32 && ADK_TARGET_KERNEL64
- default "-mabi=64" if ADK_n64 && ADK_TARGET_KERNEL64
- default ""
-
config ADK_TARGET_CFLAGS
string
default "-march=geode" if ADK_CPU_GEODE
diff --git a/target/config/Config.in.runtime b/target/config/Config.in.runtime
index 7848a25ce..cb0929822 100644
--- a/target/config/Config.in.runtime
+++ b/target/config/Config.in.runtime
@@ -159,14 +159,14 @@ depends on ADK_SIMPLE_NETWORK_CONFIG
choice
prompt "Type"
- default SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC
-
-config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC
- bool "NIC / DHCP"
+ default SIMPLE_NETWORK_CONFIG_ETH0_TYPE_MANUAL
config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL
bool "NIC / manual IP"
+config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC
+ bool "NIC / DHCP"
+
config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP
bool "Bridge with IP"
@@ -180,7 +180,7 @@ endchoice
config SIMPLE_NETWORK_CONFIG_ETH0_IP
depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL || SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP
string "eth0 IP Address"
- default "192.168.1.2"
+ default "10.0.2.15"
config SIMPLE_NETWORK_CONFIG_ETH0_NM
depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL || SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP
@@ -190,7 +190,7 @@ config SIMPLE_NETWORK_CONFIG_ETH0_NM
config SIMPLE_NETWORK_CONFIG_ETH0_GW
depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL
string "eth0 Gateway"
- default "192.168.1.1"
+ default "10.0.2.2"
config SIMPLE_NETWORK_CONFIG_ETH0_BRIDGE
depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE || SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP
@@ -282,7 +282,7 @@ depends on ADK_SIMPLE_NETWORK_CONFIG
config SIMPLE_NETWORK_CONFIG_RESOLV
string "Nameserver"
- default "192.168.1.1"
+ default "10.0.2.3"
endmenu
diff --git a/target/linux/config/Config.in.audio b/target/linux/config/Config.in.audio
index cc84914d2..a1a5077e6 100644
--- a/target/linux/config/Config.in.audio
+++ b/target/linux/config/Config.in.audio
@@ -120,12 +120,13 @@ config ADK_KPACKAGE_KMOD_SND_BCM2835
config ADK_KPACKAGE_KMOD_SND_BCM2708_SOC_I2S
prompt "kmod-snd-bcm2708-soc-i2s...... ALSA SOC I2S Raspberry PI"
+ tristate
select ADK_KPACKAGE_KMOD_SND
select ADK_KERNEL_SND_ARM
select ADK_KPACKAGE_KMOD_SND_SOC
select ADK_KPACKAGE_KMOD_SND_PCM_DMAENGINE
select ADK_KPACKAGE_KMOD_SND_COMPRESS
- boolean
+ depends on ADK_TARGET_SYSTEM_RASPBERRY_PI
default n
config ADK_KPACKAGE_KMOD_SND_BCM2708_SOC_HIFIBERRY_DAC
diff --git a/target/linux/config/Config.in.block b/target/linux/config/Config.in.block
index 0d1a28125..dd7c96dc5 100644
--- a/target/linux/config/Config.in.block
+++ b/target/linux/config/Config.in.block
@@ -21,6 +21,10 @@ config ADK_KERNEL_IOSCHED_CFQ
config ADK_KERNEL_SCSI
boolean
+ default y if ADK_TARGET_SYSTEM_IBM_X40
+
+config ADK_KERNEL_SCSI_DMA
+ boolean
config ADK_KERNEL_BLK_DEV_SD
boolean
@@ -71,7 +75,48 @@ config ADK_KERNEL_MMC_SDHCI_PLTFM
config ADK_KERNEL_MMC_SDHCI_BCM2708_DMA
boolean
+config ADK_KERNEL_ATA_PIIX
+ select ADK_KERNEL_SCSI
+ select ADK_KERNEL_SCSI_DMA
+ select ADK_KERNEL_ATA
+ select ADK_KERNEL_ATA_SFF
+ select ADK_KERNEL_ATA_BMDMA
+ select ADK_KERNEL_BLK_DEV
+ select ADK_KERNEL_BLK_DEV_SD
+ boolean
+
config ADK_KERNEL_SCSI_SYM53C8XX_2
+ select ADK_KERNEL_SCSI
+ select ADK_KERNEL_BLK_DEV
+ select ADK_KERNEL_BLK_DEV_SD
+ boolean
+
+config ADK_KERNEL_SCSI_IBMVSCSI
+ select ADK_KERNEL_SCSI
+ select ADK_KERNEL_BLK_DEV
+ select ADK_KERNEL_BLK_DEV_SD
+ boolean
+
+config ADK_KERNEL_SCSI_SUNESP
+ select ADK_KERNEL_SCSI
+ select ADK_KERNEL_BLK_DEV
+ select ADK_KERNEL_BLK_DEV_SD
+ boolean
+
+config ADK_KERNEL_PATA_MACIO
+ select ADK_KERNEL_SCSI
+ select ADK_KERNEL_ATA
+ select ADK_KERNEL_ATA_BMDMA
+ select ADK_KERNEL_BLK_DEV
+ select ADK_KERNEL_BLK_DEV_SD
+ boolean
+
+config ADK_KERNEL_PATA_PLATFORM
+ select ADK_KERNEL_SCSI
+ select ADK_KERNEL_ATA
+ select ADK_KERNEL_ATA_BMDMA
+ select ADK_KERNEL_BLK_DEV
+ select ADK_KERNEL_BLK_DEV_SD
boolean
config ADK_KERNEL_PATA_PCMCIA
@@ -252,7 +297,6 @@ config ADK_KPACKAGE_KMOD_SCSI
select ADK_KERNEL_LSF
select ADK_KERNEL_IOSCHED_AS
depends on !ADK_KERNEL_SCSI
- depends on !ADK_KERNEL_SATA_AHCI
tristate
help
If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
@@ -268,7 +312,7 @@ config ADK_KPACKAGE_KMOD_SCSI
config ADK_KPACKAGE_KMOD_BLK_DEV_SD
prompt "kmod-scsi-disk.................... SCSI disk support"
- select ADK_KPACKAGE_KMOD_SCSI
+ select ADK_KPACKAGE_KMOD_SCSI if !ADK_KERNEL_SCSI
depends on !ADK_KERNEL_BLK_DEV_SD
tristate
help
diff --git a/target/linux/config/Config.in.debug b/target/linux/config/Config.in.debug
index 80387c627..23c0bd8d2 100644
--- a/target/linux/config/Config.in.debug
+++ b/target/linux/config/Config.in.debug
@@ -34,7 +34,7 @@ config ADK_KERNEL_PRINTK
boolean
select ADK_KERNEL_EARLY_PRINTK
default y
- depends on !ADK_PKG_TEST
+ #depends on !ADK_PKG_TEST
help
Disable printk to save space and quieten bootup.
diff --git a/target/linux/config/Config.in.flash b/target/linux/config/Config.in.flash
index 773c518e8..d8f4faf0f 100644
--- a/target/linux/config/Config.in.flash
+++ b/target/linux/config/Config.in.flash
@@ -87,8 +87,19 @@ config ADK_KERNEL_MTD_OF_PARTS
default n
config ADK_KERNEL_MTD_M25P80
+ select ADK_KERNEL_BLOCK
+ select ADK_KERNEL_MTD
+ select ADK_KERNEL_MTD_PARTITIONS
+ select ADK_KERNEL_MTD_CHAR
+ select ADK_KERNEL_MTD_BLKDEVS
+ select ADK_KERNEL_MTD_BLOCK
+ select ADK_KERNEL_MTD_ROOTFS_ROOT_DEV
+ select ADK_KERNEL_MTD_CFI
+ select ADK_KERNEL_MTD_GEN_PROBE
+ select ADK_KERNEL_MTD_PHYSMAP
+ select ADK_KERNEL_MTD_PHYSMAP_OF
+ select ADK_KERNEL_MTD_OF_PARTS
boolean
- default y if ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605
default n
config ADK_KERNEL_MTD_AR2315
@@ -129,8 +140,6 @@ config ADK_TARGET_MTD
select ADK_KERNEL_MTD_CFI
select ADK_KERNEL_MTD_GEN_PROBE
select ADK_KERNEL_MTD_PHYSMAP
- select ADK_KERNEL_MTD_PHYSMAP_OF if ADK_LINUX_MICROBLAZE
- select ADK_KERNEL_MTD_OF_PARTS if ADK_LINUX_MICROBLAZE
default y if ADK_TARGET_WITH_MTD
default n
diff --git a/target/linux/config/Config.in.netdevice b/target/linux/config/Config.in.netdevice
index 7aabc0b7e..62479c2cb 100644
--- a/target/linux/config/Config.in.netdevice
+++ b/target/linux/config/Config.in.netdevice
@@ -7,6 +7,18 @@ config ADK_KERNEL_NETDEVICES
config ADK_KERNEL_NET_ETHERNET
boolean
+config ADK_KERNEL_NET_VENDOR_NATSEMI
+ boolean
+
+config ADK_KERNEL_NET_VENDOR_8390
+ boolean
+
+config ADK_KERNEL_NET_VENDOR_REALTEK
+ boolean
+
+config ADK_KERNEL_NET_VENDOR_MARVELL
+ boolean
+
config ADK_KERNEL_PHYLIB
boolean
@@ -151,6 +163,8 @@ config ADK_KPACKAGE_KMOD_NE2K_PCI
select ADK_KERNEL_NETDEVICES
select ADK_KERNEL_NET_ETHERNET
select ADK_KERNEL_NET_PCI
+ select ADK_KERNEL_NET_VENDOR_NATSEMI
+ select ADK_KERNEL_NET_VENDOR_8390
select ADK_KERNEL_MII
default n
help
@@ -173,6 +187,7 @@ config ADK_KPACKAGE_KMOD_8139CP
select ADK_KERNEL_NETDEVICES
select ADK_KERNEL_NET_ETHERNET
select ADK_KERNEL_NET_PCI
+ select ADK_KERNEL_NET_VENDOR_REALTEK
select ADK_KERNEL_MII
default n
help
@@ -220,6 +235,7 @@ config ADK_KPACKAGE_KMOD_SKY2
select ADK_KERNEL_NETDEVICES
select ADK_KERNEL_NET_ETHERNET
select ADK_KERNEL_NETDEV_1000
+ select ADK_KERNEL_NET_VENDOR_MARVELL
depends on !ADK_KERNEL_SKY2
default n
help
diff --git a/target/linux/config/Config.in.network b/target/linux/config/Config.in.network
index 00d05dcd4..71a510d69 100644
--- a/target/linux/config/Config.in.network
+++ b/target/linux/config/Config.in.network
@@ -1,13 +1,5 @@
menu "Network support"
-config ADK_KERNEL_INET
- boolean
- default y
-
-config ADK_KERNEL_NET_CORE
- boolean
- default y
-
config ADK_KERNEL_IP_FIB_HASH
boolean
default y
diff --git a/target/linux/config/Config.in.nls b/target/linux/config/Config.in.nls
index 587d5a37b..61dd32752 100644
--- a/target/linux/config/Config.in.nls
+++ b/target/linux/config/Config.in.nls
@@ -1,12 +1,8 @@
menu "Native Language support"
-config ADK_KERNEL_NLS
- boolean
- default y
-
config ADK_KERNEL_NLS_DEFAULT
string
- default "iso8859-1"
+ default "utf-8"
config ADK_KPACKAGE_KMOD_NLS_CODEPAGE_437
prompt "kmod-nls-codepage-437........... Codepage 437 (United States, Canada)"
@@ -325,7 +321,7 @@ config ADK_KPACKAGE_KMOD_NLS_ASCII
config ADK_KPACKAGE_KMOD_NLS_ISO8859_1
prompt "kmod-nls-iso8859-1.............. NLS ISO 8859-1 (Latin-1; Western European Languages)"
tristate
- default n
+ default y
help
If you want to display filenames with native language characters
from the Microsoft FAT file system family or from JOLIET CD-ROMs
@@ -499,7 +495,7 @@ config ADK_KPACKAGE_KMOD_NLS_KOI8_U
config ADK_KPACKAGE_KMOD_NLS_UTF8
prompt "kmod-nls-utf8................... NLS UTF8"
tristate
- default n
+ default y
help
If you want to display filenames with native language characters
from the Microsoft FAT file system family or from JOLIET CD-ROMs
diff --git a/target/linux/kernel.config b/target/linux/kernel.config
index 3afd5bdf5..9c6c96c01 100644
--- a/target/linux/kernel.config
+++ b/target/linux/kernel.config
@@ -12,6 +12,9 @@ CONFIG_PACKET=y
CONFIG_UNIX=y
CONFIG_XFRM=y
CONFIG_INET=y
+CONFIG_NETDEVICES=y
+CONFIG_NET_CORE=y
+CONFIG_ETHERNET=y
CONFIG_PROC_FS=y
CONFIG_PROC_SYSCTL=y
CONFIG_BLOCK=y
@@ -20,7 +23,6 @@ CONFIG_FILE_LOCKING=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
CONFIG_NLS=y
-CONFIG_NLS_DEFAULT="iso8859-1"
CONFIG_EMBEDDED=y
CONFIG_MODULES=y
CONFIG_BINFMT_ELF=y
diff --git a/target/m68k/kernel/aranym-m68k b/target/m68k/kernel/aranym-m68k
index e6efb5b9b..93bf0022f 100644
--- a/target/m68k/kernel/aranym-m68k
+++ b/target/m68k/kernel/aranym-m68k
@@ -4,8 +4,6 @@ CONFIG_M68KCLASSIC=y
CONFIG_M68040=y
CONFIG_FPU=y
CONFIG_ATARI=y
-CONFIG_NETDEVICES=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_AMD=y
CONFIG_NET_CADENCE=y
CONFIG_SERIO=y
diff --git a/target/microblaze/kernel/qemu-microblaze-ml605 b/target/microblaze/kernel/qemu-microblaze-ml605
index 3c331795d..8d13c5ddd 100644
--- a/target/microblaze/kernel/qemu-microblaze-ml605
+++ b/target/microblaze/kernel/qemu-microblaze-ml605
@@ -15,13 +15,10 @@ CONFIG_PCI_XILINX=y
CONFIG_DTC=y
CONFIG_OF=y
CONFIG_PROC_DEVICETREE=y
+CONFIG_NET_VENDOR_XILINX=y
+CONFIG_XILINX_AXI_EMAC=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_SERIAL_8250_NR_UARTS=4
-CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+CONFIG_SERIAL_8250_NR_UARTS=1
+CONFIG_SERIAL_8250_RUNTIME_UARTS=1
CONFIG_SERIAL_OF_PLATFORM=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
-CONFIG_NET_VENDOR_XILINX=y
-CONFIG_XILINX_AXI_EMAC=y
diff --git a/target/microblaze/kernel/qemu-microblaze-s3adsp1800 b/target/microblaze/kernel/qemu-microblaze-s3adsp1800
index c49b961b3..fc43ab5f1 100644
--- a/target/microblaze/kernel/qemu-microblaze-s3adsp1800
+++ b/target/microblaze/kernel/qemu-microblaze-s3adsp1800
@@ -15,10 +15,7 @@ CONFIG_PCI_XILINX=y
CONFIG_DTC=y
CONFIG_OF=y
CONFIG_PROC_DEVICETREE=y
-CONFIG_SERIAL_UARTLITE=y
-CONFIG_SERIAL_UARTLITE_CONSOLE=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_XILINX=y
CONFIG_XILINX_EMACLITE=y
+CONFIG_SERIAL_UARTLITE=y
+CONFIG_SERIAL_UARTLITE_CONSOLE=y
diff --git a/target/microblaze/sys-available/qemu-microblaze b/target/microblaze/sys-available/qemu-microblaze
index a964cf924..63214e39b 100644
--- a/target/microblaze/sys-available/qemu-microblaze
+++ b/target/microblaze/sys-available/qemu-microblaze
@@ -5,7 +5,6 @@ config ADK_TARGET_SYSTEM_QEMU_MICROBLAZE
select ADK_qemu_microblaze
select ADK_HARDWARE_QEMU
select ADK_TARGET_KERNEL_LINUXBIN
- select ADK_TOOLCHAIN_GCC_SJLJ
help
Qemu support for microblaze big endian architecture.
diff --git a/target/microblaze/sys-available/qemu-microblazeel b/target/microblaze/sys-available/qemu-microblazeel
index 4ee4229d2..a58083770 100644
--- a/target/microblaze/sys-available/qemu-microblazeel
+++ b/target/microblaze/sys-available/qemu-microblazeel
@@ -5,7 +5,6 @@ config ADK_TARGET_SYSTEM_QEMU_MICROBLAZEEL
select ADK_little
select ADK_HARDWARE_QEMU
select ADK_TARGET_KERNEL_LINUXBIN
- select ADK_TOOLCHAIN_GCC_SJLJ
help
Qemu support for microblaze little endian architecture.
diff --git a/target/mips/kernel/lemote-yeelong b/target/mips/kernel/lemote-yeelong
index c37d40271..ec7868db2 100644
--- a/target/mips/kernel/lemote-yeelong
+++ b/target/mips/kernel/lemote-yeelong
@@ -15,9 +15,6 @@ CONFIG_COMPAT=y
CONFIG_MIPS32_O32=y
CONFIG_MIPS32_N32=y
CONFIG_BLK_DEV=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_REALTEK=y
CONFIG_8139TOO=y
CONFIG_SERIO=y
diff --git a/target/mips/kernel/qemu-mips b/target/mips/kernel/qemu-mips
index 2ea58176a..4f5c34fd6 100644
--- a/target/mips/kernel/qemu-mips
+++ b/target/mips/kernel/qemu-mips
@@ -1,3 +1,4 @@
+CONFIG_MIPS=y
CONFIG_MIPS_MALTA=y
CONFIG_MIPS_BONITO64=y
CONFIG_MIPS_MSC=y
@@ -6,24 +7,10 @@ CONFIG_CPU_MIPS32_R1=y
CONFIG_PAGE_SIZE_4KB=y
CONFIG_PCI=y
CONFIG_PCI_DOMAINS=y
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-CONFIG_SCSI_PROC_FS=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_ATA=y
-CONFIG_SATA_PMP=y
-CONFIG_ATA_SFF=y
-CONFIG_ATA_BMDMA=y
-CONFIG_ATA_PIIX=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_INTEL=y
CONFIG_E1000=y
CONFIG_PHYLIB=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_SERIAL_8250_NR_UARTS=4
-CONFIG_SERIAL_8250_RUNTIME_UARTS=4
-CONFIG_SERIAL_CORE=y
-CONFIG_SERIAL_CORE_CONSOLE=y
+CONFIG_SERIAL_8250_NR_UARTS=1
+CONFIG_SERIAL_8250_RUNTIME_UARTS=1
diff --git a/target/mips/kernel/qemu-mips64 b/target/mips/kernel/qemu-mips64
index 5ccc48cca..a3accc1a6 100644
--- a/target/mips/kernel/qemu-mips64
+++ b/target/mips/kernel/qemu-mips64
@@ -1,3 +1,4 @@
+CONFIG_MIPS=y
CONFIG_MIPS_MALTA=y
CONFIG_CPU_BIG_ENDIAN=y
CONFIG_CPU_MIPS64_R1=y
@@ -9,23 +10,9 @@ CONFIG_MIPS32_COMPAT=y
CONFIG_MIPS32_O32=y
CONFIG_MIPS32_N32=y
CONFIG_BINFMT_ELF32=y
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-CONFIG_SCSI_PROC_FS=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_ATA=y
-CONFIG_SATA_PMP=y
-CONFIG_ATA_SFF=y
-CONFIG_ATA_BMDMA=y
-CONFIG_ATA_PIIX=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_INTEL=y
CONFIG_E1000=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_SERIAL_8250_NR_UARTS=4
-CONFIG_SERIAL_8250_RUNTIME_UARTS=4
-CONFIG_SERIAL_CORE=y
-CONFIG_SERIAL_CORE_CONSOLE=y
+CONFIG_SERIAL_8250_NR_UARTS=1
+CONFIG_SERIAL_8250_RUNTIME_UARTS=1
diff --git a/target/mips/kernel/qemu-mips64el b/target/mips/kernel/qemu-mips64el
index 11240010d..684b187be 100644
--- a/target/mips/kernel/qemu-mips64el
+++ b/target/mips/kernel/qemu-mips64el
@@ -1,3 +1,4 @@
+CONFIG_MIPS=y
CONFIG_MIPS_MALTA=y
CONFIG_CPU_LITTLE_ENDIAN=y
CONFIG_CPU_MIPS64_R1=y
@@ -9,21 +10,9 @@ CONFIG_MIPS32_COMPAT=y
CONFIG_MIPS32_O32=y
CONFIG_MIPS32_N32=y
CONFIG_BINFMT_ELF32=y
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-CONFIG_SCSI_PROC_FS=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_ATA=y
-CONFIG_SATA_PMP=y
-CONFIG_ATA_SFF=y
-CONFIG_ATA_BMDMA=y
-CONFIG_ATA_PIIX=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_INTEL=y
CONFIG_E1000=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_SERIAL_8250_NR_UARTS=4
-CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+CONFIG_SERIAL_8250_NR_UARTS=1
+CONFIG_SERIAL_8250_RUNTIME_UARTS=1
diff --git a/target/mips/kernel/qemu-mipsel b/target/mips/kernel/qemu-mipsel
index b1b7c8c5b..f1f7adcec 100644
--- a/target/mips/kernel/qemu-mipsel
+++ b/target/mips/kernel/qemu-mipsel
@@ -1,3 +1,4 @@
+CONFIG_MIPS=y
CONFIG_MIPS_MALTA=y
CONFIG_MIPS_BONITO64=y
CONFIG_MIPS_MSC=y
@@ -6,24 +7,10 @@ CONFIG_CPU_MIPS32_R1=y
CONFIG_PAGE_SIZE_4KB=y
CONFIG_PCI=y
CONFIG_PCI_DOMAINS=y
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-CONFIG_SCSI_PROC_FS=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_ATA=y
-CONFIG_SATA_PMP=y
-CONFIG_ATA_SFF=y
-CONFIG_ATA_BMDMA=y
-CONFIG_ATA_PIIX=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_INTEL=y
CONFIG_E1000=y
CONFIG_PHYLIB=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_SERIAL_8250_NR_UARTS=4
-CONFIG_SERIAL_8250_RUNTIME_UARTS=4
-CONFIG_SERIAL_CORE=y
-CONFIG_SERIAL_CORE_CONSOLE=y
+CONFIG_SERIAL_8250_NR_UARTS=1
+CONFIG_SERIAL_8250_RUNTIME_UARTS=1
diff --git a/target/packages/pkg-available/test b/target/packages/pkg-available/test
index 074ce8246..ab8e0a75c 100644
--- a/target/packages/pkg-available/test
+++ b/target/packages/pkg-available/test
@@ -1,6 +1,5 @@
config ADK_PKG_TEST
bool "Compile a ADK test framework system"
- default n
select ADK_PACKAGE_ADK_TEST_TOOLS
select ADK_PACKAGE_STRACE
select ADK_PACKAGE_SOCAT
@@ -8,6 +7,8 @@ config ADK_PKG_TEST
select ADK_KERNEL_BLK_DEV_INITRD
select ADK_KERNEL_COMP_XZ
select ADK_KERNEL_INITRAMFS_COMPRESSION_XZ
+ select ADK_SIMPLE_NETWORK_CONFIG
+ default n
help
Package collection used to build adk-test-framework root
filesystem.
diff --git a/target/ppc/kernel/qemu-ppc b/target/ppc/kernel/qemu-ppc
index 08dd506b5..f45511601 100644
--- a/target/ppc/kernel/qemu-ppc
+++ b/target/ppc/kernel/qemu-ppc
@@ -26,21 +26,10 @@ CONFIG_PCI_DOMAINS=y
CONFIG_PCI_SYSCALL=y
CONFIG_DTC=y
CONFIG_OF=y
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_ATA=y
-CONFIG_SATA_PMP=y
-CONFIG_ATA_SFF=y
-CONFIG_ATA_BMDMA=y
-CONFIG_PATA_MACIO=y
CONFIG_MACINTOSH_DRIVERS=y
CONFIG_ADB=y
CONFIG_ADB_CUDA=y
CONFIG_INPUT_ADBHID=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_NATSEMI=y
CONFIG_NET_VENDOR_8390=y
CONFIG_NE2K_PCI=y
diff --git a/target/ppc64/kernel/qemu-ppc64 b/target/ppc64/kernel/qemu-ppc64
index a9e1abecb..0eb40bd77 100644
--- a/target/ppc64/kernel/qemu-ppc64
+++ b/target/ppc64/kernel/qemu-ppc64
@@ -28,17 +28,8 @@ CONFIG_PCI_SYSCALL=y
CONFIG_PCI_MSI=y
CONFIG_DTC=y
CONFIG_OF=y
-CONFIG_BLOCK=y
-CONFIG_SCSI=y
-CONFIG_SCSI_LOWLEVEL=y
-CONFIG_SCSI_DMA=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_SCSI_IBMVSCSI=y
-CONFIG_NETDEVICES=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_IBM=y
CONFIG_IBMVETH=y
-CONFIG_NET_CORE=y
CONFIG_HVC_DRIVER=y
CONFIG_HVC_IRQ=y
CONFIG_HVC_CONSOLE=y
diff --git a/target/sh/kernel/qemu-sh b/target/sh/kernel/qemu-sh
index 5c38a01fb..c8d6e347c 100644
--- a/target/sh/kernel/qemu-sh
+++ b/target/sh/kernel/qemu-sh
@@ -16,22 +16,9 @@ CONFIG_SH_INTC=y
CONFIG_CMDLINE_OVERWRITE=y
CONFIG_PCI=y
CONFIG_PCI_DOMAINS=y
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_ATA=y
-CONFIG_SATA_PMP=y
-CONFIG_ATA_SFF=y
-CONFIG_ATA_BMDMA=y
-CONFIG_PATA_PLATFORM=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
CONFIG_MII=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_REALTEK=y
CONFIG_8139CP=y
CONFIG_SERIAL_SH_SCI=y
CONFIG_SERIAL_SH_SCI_NR_UARTS=2
CONFIG_SERIAL_SH_SCI_CONSOLE=y
-CONFIG_SERIAL_CORE=y
-CONFIG_SERIAL_CORE_CONSOLE=y
diff --git a/target/sparc/kernel/qemu-sparc b/target/sparc/kernel/qemu-sparc
index 26bd9a29e..f58df04b4 100644
--- a/target/sparc/kernel/qemu-sparc
+++ b/target/sparc/kernel/qemu-sparc
@@ -6,14 +6,6 @@ CONFIG_PCI=y
CONFIG_PCI_SYSCALL=y
CONFIG_PCIC_PCI=y
CONFIG_OF=y
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_SCSI_LOWLEVEL=y
-CONFIG_SCSI_SUNESP=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_AMD=y
CONFIG_SUNLANCE=y
CONFIG_SERIAL_CONSOLE=y
diff --git a/target/sparc64/kernel/qemu-sparc64 b/target/sparc64/kernel/qemu-sparc64
index 5119f1225..e78fd6071 100644
--- a/target/sparc64/kernel/qemu-sparc64
+++ b/target/sparc64/kernel/qemu-sparc64
@@ -1,6 +1,6 @@
-CONFIG_64BIT=y
CONFIG_SPARC=y
CONFIG_SPARC64=y
+CONFIG_64BIT=y
CONFIG_PCI=y
CONFIG_PCI_SYSCALL=y
CONFIG_PCI_DOMAINS=y
@@ -12,13 +12,6 @@ CONFIG_OF_NET=y
CONFIG_OF_PCI=y
CONFIG_IOMMU_SUPPORT=y
CONFIG_OF_IOMMU=y
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_SCSI_LOWLEVEL=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_NATSEMI=y
CONFIG_NET_VENDOR_8390=y
CONFIG_NE2K_PCI=y
diff --git a/target/x86/kernel/ibm-x40 b/target/x86/kernel/ibm-x40
index c1dd930ae..0d57d810a 100644
--- a/target/x86/kernel/ibm-x40
+++ b/target/x86/kernel/ibm-x40
@@ -18,9 +18,6 @@ CONFIG_SATA_PMP=y
CONFIG_ATA_SFF=y
CONFIG_ATA_BMDMA=y
CONFIG_ATA_PIIX=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_INTEL=y
CONFIG_E1000=y
CONFIG_SERIAL_8250=y
diff --git a/target/x86/kernel/qemu-i686 b/target/x86/kernel/qemu-i686
index 802de7cca..275b49592 100644
--- a/target/x86/kernel/qemu-i686
+++ b/target/x86/kernel/qemu-i686
@@ -5,21 +5,10 @@ CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_DOMAINS=y
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_ATA=y
-CONFIG_SATA_PMP=y
-CONFIG_ATA_SFF=y
-CONFIG_ATA_BMDMA=y
-CONFIG_ATA_PIIX=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_INTEL=y
CONFIG_E1000=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_FIX_EARLYCON_MEM=y
-CONFIG_SERIAL_8250_NR_UARTS=4
-CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+CONFIG_SERIAL_8250_NR_UARTS=1
+CONFIG_SERIAL_8250_RUNTIME_UARTS=1
diff --git a/target/x86_64/kernel/qemu-x86_64 b/target/x86_64/kernel/qemu-x86_64
index fa22835b8..9c1a14724 100644
--- a/target/x86_64/kernel/qemu-x86_64
+++ b/target/x86_64/kernel/qemu-x86_64
@@ -19,22 +19,11 @@ CONFIG_ISA_DMA_API=y
CONFIG_AMD_NB=y
CONFIG_IA32_EMULATION=y
CONFIG_X86_X32=y
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_ATA=y
-CONFIG_SATA_PMP=y
-CONFIG_ATA_SFF=y
-CONFIG_ATA_BMDMA=y
-CONFIG_ATA_PIIX=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
CONFIG_NET_VENDOR_INTEL=y
CONFIG_E1000=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_PNP=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_FIX_EARLYCON_MEM=y
-CONFIG_SERIAL_8250_NR_UARTS=4
-CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+CONFIG_SERIAL_8250_NR_UARTS=1
+CONFIG_SERIAL_8250_RUNTIME_UARTS=1
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 ;;