Selaa lähdekoodia

Merge branch 'master' of git+ssh://openadk.org/git/openadk

Waldemar Brodkorb 11 vuotta sitten
vanhempi
commit
c0e617ea56
52 muutettua tiedostoa jossa 307 lisäystä ja 356 poistoa
  1. 1 6
      Makefile
  2. 1 1
      docs/customize-libc-config.txt
  3. 2 7
      docs/make-tips.txt
  4. 3 12
      mk/build.mk
  5. 2 2
      mk/modules.mk
  6. 21 14
      mk/vars.mk
  7. 3 1
      package/aiccu/Makefile
  8. 12 0
      package/aiccu/patches/patch-common_common_h
  9. 5 5
      package/aiccu/src/common/dn_skipname.c
  10. 2 0
      package/atftp/Makefile
  11. 3 3
      package/binutils/Makefile
  12. 3 3
      package/glibc/Makefile
  13. 5 7
      package/pcc/Makefile
  14. 13 1
      package/strace/patches/patch-desc_c
  15. 0 2
      target/arm/kernel/cubox-i
  16. 0 13
      target/arm/kernel/qemu-arm-versatilepb
  17. 0 3
      target/arm/kernel/qemu-arm-vexpress-a9
  18. 57 51
      target/config/Config.in
  19. 7 7
      target/config/Config.in.runtime
  20. 2 1
      target/linux/config/Config.in.audio
  21. 46 2
      target/linux/config/Config.in.block
  22. 1 1
      target/linux/config/Config.in.debug
  23. 12 3
      target/linux/config/Config.in.flash
  24. 16 0
      target/linux/config/Config.in.netdevice
  25. 0 8
      target/linux/config/Config.in.network
  26. 3 7
      target/linux/config/Config.in.nls
  27. 3 1
      target/linux/kernel.config
  28. 0 2
      target/m68k/kernel/aranym-m68k
  29. 4 7
      target/microblaze/kernel/qemu-microblaze-ml605
  30. 2 5
      target/microblaze/kernel/qemu-microblaze-s3adsp1800
  31. 0 1
      target/microblaze/sys-available/qemu-microblaze
  32. 0 1
      target/microblaze/sys-available/qemu-microblazeel
  33. 0 3
      target/mips/kernel/lemote-yeelong
  34. 3 16
      target/mips/kernel/qemu-mips
  35. 3 16
      target/mips/kernel/qemu-mips64
  36. 3 14
      target/mips/kernel/qemu-mips64el
  37. 3 16
      target/mips/kernel/qemu-mipsel
  38. 2 1
      target/packages/pkg-available/test
  39. 0 11
      target/ppc/kernel/qemu-ppc
  40. 0 9
      target/ppc64/kernel/qemu-ppc64
  41. 0 13
      target/sh/kernel/qemu-sh
  42. 0 8
      target/sparc/kernel/qemu-sparc
  43. 1 8
      target/sparc64/kernel/qemu-sparc64
  44. 0 3
      target/x86/kernel/ibm-x40
  45. 2 13
      target/x86/kernel/qemu-i686
  46. 2 13
      target/x86_64/kernel/qemu-x86_64
  47. 2 6
      toolchain/Config.in
  48. 6 1
      toolchain/binutils/Makefile
  49. 24 17
      toolchain/gcc/Makefile
  50. 3 3
      toolchain/glibc/Makefile
  51. 12 8
      toolchain/glibc/Makefile.inc
  52. 12 0
      toolchain/musl/patches/musl-x32.patch

+ 1 - 6
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
 

+ 1 - 1
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.

+ 2 - 7
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

+ 3 - 12
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 \

+ 2 - 2
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))
 
 #

+ 21 - 14
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' \

+ 3 - 1
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)
 

+ 12 - 0
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>

+ 5 - 5
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);

+ 2 - 0
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

+ 3 - 3
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))

+ 3 - 3
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

+ 5 - 7
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)

+ 13 - 1
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

+ 0 - 2
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

+ 0 - 13
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

+ 0 - 3
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

+ 57 - 51
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
@@ -221,6 +218,63 @@ config ADK_QEMU_ARGS
 	string
 	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

+ 7 - 7
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
 

+ 2 - 1
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

+ 46 - 2
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

+ 1 - 1
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.
 

+ 12 - 3
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
 

+ 16 - 0
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

+ 0 - 8
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

+ 3 - 7
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

+ 3 - 1
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

+ 0 - 2
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

+ 4 - 7
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

+ 2 - 5
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

+ 0 - 1
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.
 

+ 0 - 1
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.
 

+ 0 - 3
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

+ 3 - 16
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

+ 3 - 16
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

+ 3 - 14
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

+ 3 - 16
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

+ 2 - 1
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.

+ 0 - 11
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

+ 0 - 9
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

+ 0 - 13
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

+ 0 - 8
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

+ 1 - 8
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

+ 0 - 3
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

+ 2 - 13
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

+ 2 - 13
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

+ 2 - 6
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"

+ 6 - 1
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 \

+ 24 - 17
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}' \

+ 3 - 3
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

+ 12 - 8
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 \

+ 12 - 0
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 ;;