Browse Source

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

Waldemar Brodkorb 11 years ago
parent
commit
c0e617ea56
52 changed files with 307 additions and 356 deletions
  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 '  kernelconfig - Modify the target kernel configuration'
 	@echo ''
 	@echo ''
 	@echo 'Cleaning targets:'
 	@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 '  cleandir     - Same as "clean", but also remove all built toolchains'
 	@echo '  cleankernel  - Remove kernel dir, useful if you changed any kernel patches'
 	@echo '  cleankernel  - Remove kernel dir, useful if you changed any kernel patches'
 	@echo '  distclean    - Same as "cleandir", but also remove downloaded'
 	@echo '  distclean    - Same as "cleandir", but also remove downloaded'
@@ -100,10 +99,6 @@ cleandir dirclean: .prereq_done
 	-@${GMAKE_INV} cleandir
 	-@${GMAKE_INV} cleandir
 	@-rm -f make.log .prereq_done
 	@-rm -f make.log .prereq_done
 
 
-cleantarget targetclean: .prereq_done
-	-@${GMAKE_INV} cleantarget
-	@-rm -f make.log
-
 cleantoolchain toolchainclean: .prereq_done
 cleantoolchain toolchainclean: .prereq_done
 	-@${GMAKE_INV} cleantoolchain
 	-@${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
  $ 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.
 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
  $ 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
  $ make distclean

+ 3 - 12
mk/build.mk

@@ -41,8 +41,6 @@ DEFCONFIG=		ADK_DEBUG=n \
 			ADK_PKG_TEST=n \
 			ADK_PKG_TEST=n \
 			ADK_PKG_MPDBOX=n \
 			ADK_PKG_MPDBOX=n \
 			ADK_PKG_DEVELOPMENT=n \
 			ADK_PKG_DEVELOPMENT=n \
-			ADK_PKG_CONSOLE=n \
-			ADK_PKG_TEST=n \
 			ADK_TOOLCHAIN_GCC_USE_SSP=n \
 			ADK_TOOLCHAIN_GCC_USE_SSP=n \
 			ADK_TOOLCHAIN_GCC_USE_LTO=n \
 			ADK_TOOLCHAIN_GCC_USE_LTO=n \
 			BUSYBOX_IFPLUGD=n \
 			BUSYBOX_IFPLUGD=n \
@@ -122,7 +120,7 @@ POSTCONFIG=		-@\
 			make kernelclean;\
 			make kernelclean;\
 		fi; \
 		fi; \
 		if [ "$$(grep ^ADK_LINUX_ARM_WITH_THUMB .config|md5sum)" != "$$(grep ^ADK_LINUX_ARM_WITH_THUMB .config.old|md5sum)" ];then \
 		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; \
 		fi; \
 		if [ $$rebuild -eq 1 ];then \
 		if [ $$rebuild -eq 1 ];then \
 			cp .config .config.old;\
 			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
 	$(STAGING_HOST_DIR)/usr/bin/depmaker > ${TOPDIR}/package/Depends.mk
 
 
 .NOTPARALLEL:
 .NOTPARALLEL:
-.PHONY: all world clean cleantarget cleandir cleantoolchain distclean image_clean
+.PHONY: all world clean cleandir cleantoolchain distclean image_clean
 
 
 world:
 world:
 	mkdir -p $(DL_DIR) $(BUILD_DIR) $(TARGET_DIR) $(FW_DIR) \
 	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 -rf $(STAGING_TARGET_DIR_PFX) $(STAGING_PKG_DIR_PFX)
 	@rm -f .menu .tmpconfig.h .rebuild* ${TOPDIR}/package/Depends.mk
 	@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:
 distclean:
 	@$(TRACE) distclean
 	@$(TRACE) distclean
 	@$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE)
 	@$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE)
@@ -593,7 +584,7 @@ bulkallmod:
 		$(GMAKE) prereq && \
 		$(GMAKE) prereq && \
 		$(GMAKE) ARCH=$$arch SYSTEM=$$system LIBC=$$libc FS=archive allmodconfig; \
 		$(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) VERBOSE=1 all; if [ $$? -ne 0 ]; then echo $$system-$$libc >.exit; exit 1;fi; \
-		$(GMAKE) cleantarget; \
+		$(GMAKE) clean; \
 		rm .config; \
 		rm .config; \
             ) 2>&1 | tee $(TOPDIR)/firmware/$${system}_$${arch}_$$libc/build.log; \
             ) 2>&1 | tee $(TOPDIR)/firmware/$${system}_$${arch}_$$libc/build.log; \
 	        if [ -f .exit ]; then break;fi \
 	        if [ -f .exit ]; then break;fi \

+ 2 - 2
mk/modules.mk

@@ -1294,7 +1294,7 @@ $(eval $(call KMOD_template,PCMCIA,pcmcia,\
 ,60))
 ,60))
 
 
 $(eval $(call KMOD_template,SERIAL_8250_CS,serial-8250-cs,\
 $(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))
 ,70))
 
 
 #
 #
@@ -1743,7 +1743,7 @@ $(eval $(call KMOD_template,PARPORT_PC,parport-pc,\
 ,55))
 ,55))
 
 
 $(eval $(call KMOD_template,PLIP,plip,\
 $(eval $(call KMOD_template,PLIP,plip,\
-	$(MODULES_DIR)/kernel/drivers/net/plip \
+	$(MODULES_DIR)/kernel/drivers/net/plip/plip \
 ,60))
 ,60))
 
 
 #
 #

+ 21 - 14
mk/vars.mk

@@ -21,7 +21,7 @@ TOOLS_BUILD_DIR=	$(BASE_DIR)/tools_build
 SCRIPT_DIR:=		$(BASE_DIR)/scripts
 SCRIPT_DIR:=		$(BASE_DIR)/scripts
 STAGING_HOST_DIR:=	${BASE_DIR}/host_${GNU_HOST_NAME}
 STAGING_HOST_DIR:=	${BASE_DIR}/host_${GNU_HOST_NAME}
 
 
-# PFX dirs for cleandir
+# dirs for cleandir
 FW_DIR_PFX:=		$(BASE_DIR)/firmware
 FW_DIR_PFX:=		$(BASE_DIR)/firmware
 BUILD_DIR_PFX:=		$(BASE_DIR)/build_*
 BUILD_DIR_PFX:=		$(BASE_DIR)/build_*
 STAGING_PKG_DIR_PFX:=	${BASE_DIR}/pkg_*
 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}
 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}
 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),)
 ifeq ($(ADK_DISABLE_HONOUR_CFLAGS),)
 GCC_CHECK:=		GCC_HONOUR_COPTS=2
 GCC_CHECK:=		GCC_HONOUR_COPTS=2
 else
 else
 GCC_CHECK:=
 GCC_CHECK:=
 endif
 endif
 
 
+GNU_TARGET_NAME:=	$(CPU_ARCH)-$(ADK_VENDOR)-linux-$(ADK_TARGET_SUFFIX)
 TARGET_CROSS:=		$(STAGING_HOST_DIR)/bin/$(GNU_TARGET_NAME)-
 TARGET_CROSS:=		$(STAGING_HOST_DIR)/bin/$(GNU_TARGET_NAME)-
 TARGET_COMPILER_PREFIX?=${TARGET_CROSS}
 TARGET_COMPILER_PREFIX?=${TARGET_CROSS}
 CONFIGURE_TRIPLE:=	--build=${GNU_HOST_NAME} --host=${GNU_TARGET_NAME} --target=${GNU_TARGET_NAME}
 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}
 TARGET_COMPILER_PREFIX=ccache ${TARGET_CROSS}
 endif
 endif
 
 
-# target compiler flags
+# target tools
 TARGET_CC:=		${TARGET_COMPILER_PREFIX}gcc
 TARGET_CC:=		${TARGET_COMPILER_PREFIX}gcc
 TARGET_CXX:=		${TARGET_COMPILER_PREFIX}g++
 TARGET_CXX:=		${TARGET_COMPILER_PREFIX}g++
 TARGET_LD:=		${TARGET_COMPILER_PREFIX}ld
 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:=
 MODE_FLAGS:=
 ifeq ($(ADK_LINUX_ARM),y)
 ifeq ($(ADK_LINUX_ARM),y)
@@ -91,13 +93,13 @@ endif
 endif
 endif
 
 
 TARGET_CPPFLAGS:=	
 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 \
 TARGET_LDFLAGS:=	-L$(STAGING_TARGET_DIR)/lib -L$(STAGING_TARGET_DIR)/usr/lib \
 			-Wl,-O1 -Wl,-rpath -Wl,/usr/lib \
 			-Wl,-O1 -Wl,-rpath -Wl,/usr/lib \
 			-Wl,-rpath-link -Wl,${STAGING_TARGET_DIR}/usr/lib \
 			-Wl,-rpath-link -Wl,${STAGING_TARGET_DIR}/usr/lib \
 			$(ADK_TARGET_ABI_LDFLAGS)
 			$(ADK_TARGET_ABI_LDFLAGS)
+
 # security optimization, see http://www.akkadia.org/drepper/dsohowto.pdf
 # security optimization, see http://www.akkadia.org/drepper/dsohowto.pdf
 TARGET_LDFLAGS+=	-Wl,-z,relro,-z,now
 TARGET_LDFLAGS+=	-Wl,-z,relro,-z,now
 # needed for musl ppc 
 # needed for musl ppc 
@@ -130,6 +132,10 @@ TARGET_CFLAGS+=		-fno-unwind-tables -fno-asynchronous-unwind-tables
 TARGET_CFLAGS+=		-g3
 TARGET_CFLAGS+=		-g3
 endif
 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)
 # A nifty macro to make testing gcc features easier (from uClibc project)
 check_gcc=$(shell \
 check_gcc=$(shell \
@@ -139,7 +145,6 @@ check_gcc=$(shell \
 CF_FOR_BUILD=$(call check_gcc,-fhonour-copts,)
 CF_FOR_BUILD=$(call check_gcc,-fhonour-copts,)
 
 
 # host compiler flags
 # host compiler flags
-CXX_FOR_BUILD?=		g++
 CPPFLAGS_FOR_BUILD?=	-I$(STAGING_HOST_DIR)/usr/include
 CPPFLAGS_FOR_BUILD?=	-I$(STAGING_HOST_DIR)/usr/include
 CFLAGS_FOR_BUILD=	-O2 -Wall $(CF_FOR_BUILD)
 CFLAGS_FOR_BUILD=	-O2 -Wall $(CF_FOR_BUILD)
 CXXFLAGS_FOR_BUILD?=    -O2 -Wall
 CXXFLAGS_FOR_BUILD?=    -O2 -Wall
@@ -150,9 +155,11 @@ PATCH=			${BASH} $(SCRIPT_DIR)/patch.sh
 SED:=			PATH=${HOST_PATH} sed -i -e
 SED:=			PATH=${HOST_PATH} sed -i -e
 LINUX_DIR:=		$(BUILD_DIR)/linux
 LINUX_DIR:=		$(BUILD_DIR)/linux
 KERNEL_MODULE_FLAGS:=	ARCH=${ARCH} \
 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}" \
 			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}' \
 TARGET_CONFIGURE_OPTS=	PATH='${TARGET_PATH}' \
 			AR='$(TARGET_CROSS)ar' \
 			AR='$(TARGET_CROSS)ar' \

+ 3 - 1
package/aiccu/Makefile

@@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk
 
 
 PKG_NAME:=		aiccu
 PKG_NAME:=		aiccu
 PKG_VERSION:=		20070115
 PKG_VERSION:=		20070115
-PKG_RELEASE:=		10
+PKG_RELEASE:=		11
 PKG_MD5SUM:=		c9bcc83644ed788e22a7c3f3d4021350
 PKG_MD5SUM:=		c9bcc83644ed788e22a7c3f3d4021350
 PKG_DESCR:=		SixXS Automatic IPv6 Connectivity Client Utility
 PKG_DESCR:=		SixXS Automatic IPv6 Connectivity Client Utility
 PKG_SECTION:=		ipv6
 PKG_SECTION:=		ipv6
@@ -13,6 +13,8 @@ PKG_DEPENDS:=		kmod-ipv6 kmod-tun libpthread
 PKG_URL:=		http://www.sixxs.net/
 PKG_URL:=		http://www.sixxs.net/
 PKG_SITES:=		http://www.sixxs.net/archive/sixxs/aiccu/unix/
 PKG_SITES:=		http://www.sixxs.net/archive/sixxs/aiccu/unix/
 
 
+PKG_LIBC_DEPENDS:=	uclibc glibc
+
 DISTFILES:=		$(PKG_NAME)_$(PKG_VERSION).tar.gz
 DISTFILES:=		$(PKG_NAME)_$(PKG_VERSION).tar.gz
 WRKDIST=		${WRKDIR}/$(PKG_NAME)
 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:
  * return:
  *      0 on success, -1 (with errno set) on failure.
  *      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;
 	cp = *ptrptr;
 	while (cp < eom && (n = *cp++) != 0)
 	while (cp < eom && (n = *cp++) != 0)
@@ -40,9 +40,9 @@ int ns_name_skip(const u_char **ptrptr, const u_char *eom)
 	return (0);
 	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)
 	if(ns_name_skip(&ptr, eom) == -1)
 		return (-1);
 		return (-1);

+ 2 - 0
package/atftp/Makefile

@@ -14,6 +14,8 @@ PKG_BUILDDEP:=		readline ncurses
 PKG_URL:=		http://freshmeat.net/projects/atftp/
 PKG_URL:=		http://freshmeat.net/projects/atftp/
 PKG_SITES:=		ftp://ftp.mamalinux.com/pub/atftp/
 PKG_SITES:=		ftp://ftp.mamalinux.com/pub/atftp/
 
 
+PKG_LIBC_DEPENDS:=	uclibc glibc
+
 PKG_SUBPKGS:=		ATFTP ATFTPD
 PKG_SUBPKGS:=		ATFTP ATFTPD
 PKGSD_ATFTPD:=		TFTP server
 PKGSD_ATFTPD:=		TFTP server
 PKGSS_ATFTPD:=		libreadline libncurses
 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,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}))
 $(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
 CONFIGURE_ARGS+=	--disable-multilib
+else
+CONFIGURE_ARGS+=	--enable-multilib
 endif
 endif
 
 
 TARGET_CFLAGS:=         $(filter-out -flto,$(TARGET_CFLAGS))
 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
 # compile nothing, glibc is already build in toolchain directory
 do-install:
 do-install:
 	${INSTALL_DIR} ${IDIR_GLIBC}/$(ADK_TARGET_LIBC_PATH)
 	${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 \
 	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
 	done
 	${INSTALL_DIR} $(IDIR_GLIBC)/usr/bin
 	${INSTALL_DIR} $(IDIR_GLIBC)/usr/bin
 	$(CP) $(STAGING_TARGET_DIR)/usr/bin/getconf $(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}))
 $(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
 # 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)
 ifeq ($(ADK_TARGET_LIB_GLIBC),y)
 TARGET_CPPFLAGS+=	-DADK_FOR_GLIBC
 TARGET_CPPFLAGS+=	-DADK_FOR_GLIBC
-else
+endif
 ifeq ($(ADK_TARGET_LIB_UCLIBC),y)
 ifeq ($(ADK_TARGET_LIB_UCLIBC),y)
 TARGET_CPPFLAGS+=	-DADK_FOR_UCLIBC
 TARGET_CPPFLAGS+=	-DADK_FOR_UCLIBC
 endif
 endif
-endif
-endif
 
 
 pcc-install:
 pcc-install:
 	$(INSTALL_DIR) $(IDIR_PCC)
 	$(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.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
 @@ -223,7 +223,7 @@ static const struct xlat perf_event_open
  	{ 0,				NULL			},
  	{ 0,				NULL			},
  };
  };
@@ -9,3 +9,15 @@
  /* fcntl/lockf */
  /* fcntl/lockf */
  static void
  static void
  printflock64(struct tcb *tcp, long addr, int getlk)
  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_IO_ACCESSORS=y
 CONFIG_MMC_SDHCI_PLTFM=y
 CONFIG_MMC_SDHCI_PLTFM=y
 CONFIG_MMC_SDHCI_ESDHC_IMX=y
 CONFIG_MMC_SDHCI_ESDHC_IMX=y
-CONFIG_NETDEVICES=y
 CONFIG_MII=y
 CONFIG_MII=y
 CONFIG_PHYLIB=y
 CONFIG_PHYLIB=y
 CONFIG_MICREL_PHY=y
 CONFIG_MICREL_PHY=y
-CONFIG_NET_ETHERNET=y
 CONFIG_SMSC911X=y
 CONFIG_SMSC911X=y
 CONFIG_SERIAL_IMX=y
 CONFIG_SERIAL_IMX=y
 CONFIG_SERIAL_IMX_CONSOLE=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_ATAGS=y
 CONFIG_DTC=y
 CONFIG_DTC=y
 CONFIG_OF=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_MII=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
 CONFIG_NET_VENDOR_SMSC=y
 CONFIG_NET_VENDOR_SMSC=y
 CONFIG_SMC91X=y
 CONFIG_SMC91X=y
 CONFIG_SERIAL_AMBA_PL011=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_NEON=y
 CONFIG_OF=y
 CONFIG_OF=y
 CONFIG_DTC=y
 CONFIG_DTC=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
 CONFIG_NET_VENDOR_SMSC=y
 CONFIG_NET_VENDOR_SMSC=y
 CONFIG_SMSC911X=y
 CONFIG_SMSC911X=y
 CONFIG_SERIAL_AMBA_PL011=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
 				|| ADK_LINUX_X86_64
 	default "lib"
 	default "lib"
 
 
-
-# submodel support
-
 config ADK_TARGET_KERNEL_MINICONFIG
 config ADK_TARGET_KERNEL_MINICONFIG
 	string
 	string
 	default "qemu-microblaze-s3adsp1800" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
 	default "qemu-microblaze-s3adsp1800" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
@@ -221,6 +218,63 @@ config ADK_QEMU_ARGS
 	string
 	string
 	default "-nographic" if ADK_TARGET_QEMU_WITHOUT_GRAPHIC
 	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
 choice
 prompt "Qemu Emulation with graphical output"
 prompt "Qemu Emulation with graphical output"
 depends on ADK_HARDWARE_QEMU
 depends on ADK_HARDWARE_QEMU
@@ -265,43 +319,6 @@ config ADK_TARGET_QEMU_WITHOUT_VIRTIO
 
 
 endchoice
 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
 choice
 prompt "Use ARM thumb mode"
 prompt "Use ARM thumb mode"
@@ -578,17 +595,6 @@ config ADK_TARGET_ABI_CFLAGS
 	default "-mx32" if ADK_x32
 	default "-mx32" if ADK_x32
 	default "-m64" if ADK_64
 	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
 config ADK_TARGET_CFLAGS
 	string
 	string
 	default "-march=geode" if ADK_CPU_GEODE
 	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
 choice
 	prompt "Type"
 	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
 config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL
 	bool "NIC / manual IP"
 	bool "NIC / manual IP"
 
 
+config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC
+	bool "NIC / DHCP"
+
 config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP
 config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP
 	bool "Bridge with IP"
 	bool "Bridge with IP"
 
 
@@ -180,7 +180,7 @@ endchoice
 config SIMPLE_NETWORK_CONFIG_ETH0_IP
 config SIMPLE_NETWORK_CONFIG_ETH0_IP
 	depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL || SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP
 	depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL || SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP
 	string "eth0 IP Address"
 	string "eth0 IP Address"
-	default "192.168.1.2"
+	default "10.0.2.15"
 
 
 config SIMPLE_NETWORK_CONFIG_ETH0_NM
 config SIMPLE_NETWORK_CONFIG_ETH0_NM
 	depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL || SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP
 	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
 config SIMPLE_NETWORK_CONFIG_ETH0_GW
 	depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL
 	depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL
 	string "eth0 Gateway"
 	string "eth0 Gateway"
-	default "192.168.1.1"
+	default "10.0.2.2"
 
 
 config SIMPLE_NETWORK_CONFIG_ETH0_BRIDGE
 config SIMPLE_NETWORK_CONFIG_ETH0_BRIDGE
 	depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE || SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP
 	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
 config SIMPLE_NETWORK_CONFIG_RESOLV
 	string "Nameserver"
 	string "Nameserver"
-	default "192.168.1.1"
+	default "10.0.2.3"
 
 
 endmenu
 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
 config ADK_KPACKAGE_KMOD_SND_BCM2708_SOC_I2S
 	prompt "kmod-snd-bcm2708-soc-i2s...... ALSA SOC I2S Raspberry PI"
 	prompt "kmod-snd-bcm2708-soc-i2s...... ALSA SOC I2S Raspberry PI"
+	tristate
 	select ADK_KPACKAGE_KMOD_SND
 	select ADK_KPACKAGE_KMOD_SND
 	select ADK_KERNEL_SND_ARM
 	select ADK_KERNEL_SND_ARM
 	select ADK_KPACKAGE_KMOD_SND_SOC
 	select ADK_KPACKAGE_KMOD_SND_SOC
 	select ADK_KPACKAGE_KMOD_SND_PCM_DMAENGINE
 	select ADK_KPACKAGE_KMOD_SND_PCM_DMAENGINE
 	select ADK_KPACKAGE_KMOD_SND_COMPRESS
 	select ADK_KPACKAGE_KMOD_SND_COMPRESS
-	boolean
+	depends on ADK_TARGET_SYSTEM_RASPBERRY_PI
 	default n
 	default n
 
 
 config ADK_KPACKAGE_KMOD_SND_BCM2708_SOC_HIFIBERRY_DAC
 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
 config ADK_KERNEL_SCSI
 	boolean
 	boolean
+	default y if ADK_TARGET_SYSTEM_IBM_X40
+
+config ADK_KERNEL_SCSI_DMA
+	boolean
 
 
 config ADK_KERNEL_BLK_DEV_SD
 config ADK_KERNEL_BLK_DEV_SD
 	boolean
 	boolean
@@ -71,7 +75,48 @@ config ADK_KERNEL_MMC_SDHCI_PLTFM
 config ADK_KERNEL_MMC_SDHCI_BCM2708_DMA
 config ADK_KERNEL_MMC_SDHCI_BCM2708_DMA
 	boolean
 	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
 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
 	boolean
 
 
 config ADK_KERNEL_PATA_PCMCIA
 config ADK_KERNEL_PATA_PCMCIA
@@ -252,7 +297,6 @@ config ADK_KPACKAGE_KMOD_SCSI
 	select ADK_KERNEL_LSF
 	select ADK_KERNEL_LSF
 	select ADK_KERNEL_IOSCHED_AS
 	select ADK_KERNEL_IOSCHED_AS
 	depends on !ADK_KERNEL_SCSI
 	depends on !ADK_KERNEL_SCSI
-	depends on !ADK_KERNEL_SATA_AHCI
 	tristate
 	tristate
 	help
 	help
 	  If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
 	  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
 config ADK_KPACKAGE_KMOD_BLK_DEV_SD
 	prompt "kmod-scsi-disk.................... SCSI disk support"
 	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
 	depends on !ADK_KERNEL_BLK_DEV_SD
 	tristate
 	tristate
 	help
 	help

+ 1 - 1
target/linux/config/Config.in.debug

@@ -34,7 +34,7 @@ config ADK_KERNEL_PRINTK
 	boolean
 	boolean
 	select ADK_KERNEL_EARLY_PRINTK
 	select ADK_KERNEL_EARLY_PRINTK
 	default y
 	default y
-	depends on !ADK_PKG_TEST
+	#depends on !ADK_PKG_TEST
 	help
 	help
 	  Disable printk to save space and quieten bootup.
 	  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
 	default n
 
 
 config ADK_KERNEL_MTD_M25P80
 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
 	boolean
-	default y if ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605
 	default n
 	default n
 
 
 config ADK_KERNEL_MTD_AR2315
 config ADK_KERNEL_MTD_AR2315
@@ -129,8 +140,6 @@ config ADK_TARGET_MTD
 	select ADK_KERNEL_MTD_CFI
 	select ADK_KERNEL_MTD_CFI
 	select ADK_KERNEL_MTD_GEN_PROBE
 	select ADK_KERNEL_MTD_GEN_PROBE
 	select ADK_KERNEL_MTD_PHYSMAP
 	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 y if ADK_TARGET_WITH_MTD
 	default n
 	default n
 
 

+ 16 - 0
target/linux/config/Config.in.netdevice

@@ -7,6 +7,18 @@ config ADK_KERNEL_NETDEVICES
 config ADK_KERNEL_NET_ETHERNET
 config ADK_KERNEL_NET_ETHERNET
 	boolean
 	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
 config ADK_KERNEL_PHYLIB
 	boolean
 	boolean
 
 
@@ -151,6 +163,8 @@ config ADK_KPACKAGE_KMOD_NE2K_PCI
 	select ADK_KERNEL_NETDEVICES
 	select ADK_KERNEL_NETDEVICES
 	select ADK_KERNEL_NET_ETHERNET
 	select ADK_KERNEL_NET_ETHERNET
 	select ADK_KERNEL_NET_PCI
 	select ADK_KERNEL_NET_PCI
+	select ADK_KERNEL_NET_VENDOR_NATSEMI
+	select ADK_KERNEL_NET_VENDOR_8390
 	select ADK_KERNEL_MII
 	select ADK_KERNEL_MII
 	default n
 	default n
 	help
 	help
@@ -173,6 +187,7 @@ config ADK_KPACKAGE_KMOD_8139CP
 	select ADK_KERNEL_NETDEVICES
 	select ADK_KERNEL_NETDEVICES
 	select ADK_KERNEL_NET_ETHERNET
 	select ADK_KERNEL_NET_ETHERNET
 	select ADK_KERNEL_NET_PCI
 	select ADK_KERNEL_NET_PCI
+	select ADK_KERNEL_NET_VENDOR_REALTEK
 	select ADK_KERNEL_MII
 	select ADK_KERNEL_MII
 	default n
 	default n
 	help
 	help
@@ -220,6 +235,7 @@ config ADK_KPACKAGE_KMOD_SKY2
 	select ADK_KERNEL_NETDEVICES
 	select ADK_KERNEL_NETDEVICES
 	select ADK_KERNEL_NET_ETHERNET
 	select ADK_KERNEL_NET_ETHERNET
 	select ADK_KERNEL_NETDEV_1000
 	select ADK_KERNEL_NETDEV_1000
+	select ADK_KERNEL_NET_VENDOR_MARVELL
 	depends on !ADK_KERNEL_SKY2
 	depends on !ADK_KERNEL_SKY2
 	default n
 	default n
 	help
 	help

+ 0 - 8
target/linux/config/Config.in.network

@@ -1,13 +1,5 @@
 menu "Network support"
 menu "Network support"
 
 
-config ADK_KERNEL_INET
-	boolean
-	default y
-
-config ADK_KERNEL_NET_CORE
-	boolean
-	default y
-
 config ADK_KERNEL_IP_FIB_HASH
 config ADK_KERNEL_IP_FIB_HASH
 	boolean
 	boolean
 	default y
 	default y

+ 3 - 7
target/linux/config/Config.in.nls

@@ -1,12 +1,8 @@
 menu "Native Language support"
 menu "Native Language support"
 
 
-config ADK_KERNEL_NLS
-	boolean
-	default y
-
 config ADK_KERNEL_NLS_DEFAULT
 config ADK_KERNEL_NLS_DEFAULT
 	string
 	string
-	default "iso8859-1"
+	default "utf-8"
 
 
 config ADK_KPACKAGE_KMOD_NLS_CODEPAGE_437
 config ADK_KPACKAGE_KMOD_NLS_CODEPAGE_437
 	prompt   "kmod-nls-codepage-437........... Codepage 437 (United States, Canada)"
 	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
 config ADK_KPACKAGE_KMOD_NLS_ISO8859_1
 	prompt   "kmod-nls-iso8859-1.............. NLS ISO 8859-1 (Latin-1; Western European Languages)"
 	prompt   "kmod-nls-iso8859-1.............. NLS ISO 8859-1 (Latin-1; Western European Languages)"
 	tristate
 	tristate
-	default n
+	default y
 	help
 	help
 	  If you want to display filenames with native language characters
 	  If you want to display filenames with native language characters
 	  from the Microsoft FAT file system family or from JOLIET CD-ROMs
 	  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
 config ADK_KPACKAGE_KMOD_NLS_UTF8
 	prompt   "kmod-nls-utf8................... NLS UTF8"
 	prompt   "kmod-nls-utf8................... NLS UTF8"
 	tristate
 	tristate
-	default n
+	default y
 	help
 	help
 	  If you want to display filenames with native language characters
 	  If you want to display filenames with native language characters
 	  from the Microsoft FAT file system family or from JOLIET CD-ROMs
 	  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_UNIX=y
 CONFIG_XFRM=y
 CONFIG_XFRM=y
 CONFIG_INET=y
 CONFIG_INET=y
+CONFIG_NETDEVICES=y
+CONFIG_NET_CORE=y
+CONFIG_ETHERNET=y
 CONFIG_PROC_FS=y
 CONFIG_PROC_FS=y
 CONFIG_PROC_SYSCTL=y
 CONFIG_PROC_SYSCTL=y
 CONFIG_BLOCK=y
 CONFIG_BLOCK=y
@@ -20,7 +23,6 @@ CONFIG_FILE_LOCKING=y
 CONFIG_SYSFS=y
 CONFIG_SYSFS=y
 CONFIG_TMPFS=y
 CONFIG_TMPFS=y
 CONFIG_NLS=y
 CONFIG_NLS=y
-CONFIG_NLS_DEFAULT="iso8859-1"
 CONFIG_EMBEDDED=y
 CONFIG_EMBEDDED=y
 CONFIG_MODULES=y
 CONFIG_MODULES=y
 CONFIG_BINFMT_ELF=y
 CONFIG_BINFMT_ELF=y

+ 0 - 2
target/m68k/kernel/aranym-m68k

@@ -4,8 +4,6 @@ CONFIG_M68KCLASSIC=y
 CONFIG_M68040=y
 CONFIG_M68040=y
 CONFIG_FPU=y
 CONFIG_FPU=y
 CONFIG_ATARI=y
 CONFIG_ATARI=y
-CONFIG_NETDEVICES=y
-CONFIG_ETHERNET=y
 CONFIG_NET_VENDOR_AMD=y
 CONFIG_NET_VENDOR_AMD=y
 CONFIG_NET_CADENCE=y
 CONFIG_NET_CADENCE=y
 CONFIG_SERIO=y
 CONFIG_SERIO=y

+ 4 - 7
target/microblaze/kernel/qemu-microblaze-ml605

@@ -15,13 +15,10 @@ CONFIG_PCI_XILINX=y
 CONFIG_DTC=y
 CONFIG_DTC=y
 CONFIG_OF=y
 CONFIG_OF=y
 CONFIG_PROC_DEVICETREE=y
 CONFIG_PROC_DEVICETREE=y
+CONFIG_NET_VENDOR_XILINX=y
+CONFIG_XILINX_AXI_EMAC=y
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250_CONSOLE=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_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_DTC=y
 CONFIG_OF=y
 CONFIG_OF=y
 CONFIG_PROC_DEVICETREE=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_NET_VENDOR_XILINX=y
 CONFIG_XILINX_EMACLITE=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_qemu_microblaze
 	select ADK_HARDWARE_QEMU
 	select ADK_HARDWARE_QEMU
 	select ADK_TARGET_KERNEL_LINUXBIN
 	select ADK_TARGET_KERNEL_LINUXBIN
-	select ADK_TOOLCHAIN_GCC_SJLJ
 	help
 	help
 	 Qemu support for microblaze big endian architecture.
 	 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_little
 	select ADK_HARDWARE_QEMU
 	select ADK_HARDWARE_QEMU
 	select ADK_TARGET_KERNEL_LINUXBIN
 	select ADK_TARGET_KERNEL_LINUXBIN
-	select ADK_TOOLCHAIN_GCC_SJLJ
 	help
 	help
 	 Qemu support for microblaze little endian architecture.
 	 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_O32=y
 CONFIG_MIPS32_N32=y
 CONFIG_MIPS32_N32=y
 CONFIG_BLK_DEV=y
 CONFIG_BLK_DEV=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
 CONFIG_NET_VENDOR_REALTEK=y
 CONFIG_NET_VENDOR_REALTEK=y
 CONFIG_8139TOO=y
 CONFIG_8139TOO=y
 CONFIG_SERIO=y
 CONFIG_SERIO=y

+ 3 - 16
target/mips/kernel/qemu-mips

@@ -1,3 +1,4 @@
+CONFIG_MIPS=y
 CONFIG_MIPS_MALTA=y
 CONFIG_MIPS_MALTA=y
 CONFIG_MIPS_BONITO64=y
 CONFIG_MIPS_BONITO64=y
 CONFIG_MIPS_MSC=y
 CONFIG_MIPS_MSC=y
@@ -6,24 +7,10 @@ CONFIG_CPU_MIPS32_R1=y
 CONFIG_PAGE_SIZE_4KB=y
 CONFIG_PAGE_SIZE_4KB=y
 CONFIG_PCI=y
 CONFIG_PCI=y
 CONFIG_PCI_DOMAINS=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_NET_VENDOR_INTEL=y
 CONFIG_E1000=y
 CONFIG_E1000=y
 CONFIG_PHYLIB=y
 CONFIG_PHYLIB=y
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250_CONSOLE=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_MIPS_MALTA=y
 CONFIG_CPU_BIG_ENDIAN=y
 CONFIG_CPU_BIG_ENDIAN=y
 CONFIG_CPU_MIPS64_R1=y
 CONFIG_CPU_MIPS64_R1=y
@@ -9,23 +10,9 @@ CONFIG_MIPS32_COMPAT=y
 CONFIG_MIPS32_O32=y
 CONFIG_MIPS32_O32=y
 CONFIG_MIPS32_N32=y
 CONFIG_MIPS32_N32=y
 CONFIG_BINFMT_ELF32=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_NET_VENDOR_INTEL=y
 CONFIG_E1000=y
 CONFIG_E1000=y
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250_CONSOLE=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_MIPS_MALTA=y
 CONFIG_CPU_LITTLE_ENDIAN=y
 CONFIG_CPU_LITTLE_ENDIAN=y
 CONFIG_CPU_MIPS64_R1=y
 CONFIG_CPU_MIPS64_R1=y
@@ -9,21 +10,9 @@ CONFIG_MIPS32_COMPAT=y
 CONFIG_MIPS32_O32=y
 CONFIG_MIPS32_O32=y
 CONFIG_MIPS32_N32=y
 CONFIG_MIPS32_N32=y
 CONFIG_BINFMT_ELF32=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_NET_VENDOR_INTEL=y
 CONFIG_E1000=y
 CONFIG_E1000=y
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250_CONSOLE=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_MALTA=y
 CONFIG_MIPS_BONITO64=y
 CONFIG_MIPS_BONITO64=y
 CONFIG_MIPS_MSC=y
 CONFIG_MIPS_MSC=y
@@ -6,24 +7,10 @@ CONFIG_CPU_MIPS32_R1=y
 CONFIG_PAGE_SIZE_4KB=y
 CONFIG_PAGE_SIZE_4KB=y
 CONFIG_PCI=y
 CONFIG_PCI=y
 CONFIG_PCI_DOMAINS=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_NET_VENDOR_INTEL=y
 CONFIG_E1000=y
 CONFIG_E1000=y
 CONFIG_PHYLIB=y
 CONFIG_PHYLIB=y
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250_CONSOLE=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
 config ADK_PKG_TEST
 	bool "Compile a ADK test framework system"
 	bool "Compile a ADK test framework system"
-	default n
 	select ADK_PACKAGE_ADK_TEST_TOOLS
 	select ADK_PACKAGE_ADK_TEST_TOOLS
 	select ADK_PACKAGE_STRACE
 	select ADK_PACKAGE_STRACE
 	select ADK_PACKAGE_SOCAT
 	select ADK_PACKAGE_SOCAT
@@ -8,6 +7,8 @@ config ADK_PKG_TEST
 	select ADK_KERNEL_BLK_DEV_INITRD
 	select ADK_KERNEL_BLK_DEV_INITRD
 	select ADK_KERNEL_COMP_XZ
 	select ADK_KERNEL_COMP_XZ
 	select ADK_KERNEL_INITRAMFS_COMPRESSION_XZ
 	select ADK_KERNEL_INITRAMFS_COMPRESSION_XZ
+	select ADK_SIMPLE_NETWORK_CONFIG
+	default n
 	help
 	help
 	  Package collection used to build adk-test-framework root
 	  Package collection used to build adk-test-framework root
 	  filesystem.
 	  filesystem.

+ 0 - 11
target/ppc/kernel/qemu-ppc

@@ -26,21 +26,10 @@ CONFIG_PCI_DOMAINS=y
 CONFIG_PCI_SYSCALL=y
 CONFIG_PCI_SYSCALL=y
 CONFIG_DTC=y
 CONFIG_DTC=y
 CONFIG_OF=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_MACINTOSH_DRIVERS=y
 CONFIG_ADB=y
 CONFIG_ADB=y
 CONFIG_ADB_CUDA=y
 CONFIG_ADB_CUDA=y
 CONFIG_INPUT_ADBHID=y
 CONFIG_INPUT_ADBHID=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
 CONFIG_NET_VENDOR_NATSEMI=y
 CONFIG_NET_VENDOR_NATSEMI=y
 CONFIG_NET_VENDOR_8390=y
 CONFIG_NET_VENDOR_8390=y
 CONFIG_NE2K_PCI=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_PCI_MSI=y
 CONFIG_DTC=y
 CONFIG_DTC=y
 CONFIG_OF=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_NET_VENDOR_IBM=y
 CONFIG_IBMVETH=y
 CONFIG_IBMVETH=y
-CONFIG_NET_CORE=y
 CONFIG_HVC_DRIVER=y
 CONFIG_HVC_DRIVER=y
 CONFIG_HVC_IRQ=y
 CONFIG_HVC_IRQ=y
 CONFIG_HVC_CONSOLE=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_CMDLINE_OVERWRITE=y
 CONFIG_PCI=y
 CONFIG_PCI=y
 CONFIG_PCI_DOMAINS=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_MII=y
-CONFIG_ETHERNET=y
 CONFIG_NET_VENDOR_REALTEK=y
 CONFIG_NET_VENDOR_REALTEK=y
 CONFIG_8139CP=y
 CONFIG_8139CP=y
 CONFIG_SERIAL_SH_SCI=y
 CONFIG_SERIAL_SH_SCI=y
 CONFIG_SERIAL_SH_SCI_NR_UARTS=2
 CONFIG_SERIAL_SH_SCI_NR_UARTS=2
 CONFIG_SERIAL_SH_SCI_CONSOLE=y
 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_PCI_SYSCALL=y
 CONFIG_PCIC_PCI=y
 CONFIG_PCIC_PCI=y
 CONFIG_OF=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_NET_VENDOR_AMD=y
 CONFIG_SUNLANCE=y
 CONFIG_SUNLANCE=y
 CONFIG_SERIAL_CONSOLE=y
 CONFIG_SERIAL_CONSOLE=y

+ 1 - 8
target/sparc64/kernel/qemu-sparc64

@@ -1,6 +1,6 @@
-CONFIG_64BIT=y
 CONFIG_SPARC=y
 CONFIG_SPARC=y
 CONFIG_SPARC64=y
 CONFIG_SPARC64=y
+CONFIG_64BIT=y
 CONFIG_PCI=y
 CONFIG_PCI=y
 CONFIG_PCI_SYSCALL=y
 CONFIG_PCI_SYSCALL=y
 CONFIG_PCI_DOMAINS=y
 CONFIG_PCI_DOMAINS=y
@@ -12,13 +12,6 @@ CONFIG_OF_NET=y
 CONFIG_OF_PCI=y
 CONFIG_OF_PCI=y
 CONFIG_IOMMU_SUPPORT=y
 CONFIG_IOMMU_SUPPORT=y
 CONFIG_OF_IOMMU=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_NATSEMI=y
 CONFIG_NET_VENDOR_8390=y
 CONFIG_NET_VENDOR_8390=y
 CONFIG_NE2K_PCI=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_SFF=y
 CONFIG_ATA_BMDMA=y
 CONFIG_ATA_BMDMA=y
 CONFIG_ATA_PIIX=y
 CONFIG_ATA_PIIX=y
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-CONFIG_ETHERNET=y
 CONFIG_NET_VENDOR_INTEL=y
 CONFIG_NET_VENDOR_INTEL=y
 CONFIG_E1000=y
 CONFIG_E1000=y
 CONFIG_SERIAL_8250=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_BIOS=y
 CONFIG_PCI_DIRECT=y
 CONFIG_PCI_DIRECT=y
 CONFIG_PCI_DOMAINS=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_NET_VENDOR_INTEL=y
 CONFIG_E1000=y
 CONFIG_E1000=y
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_FIX_EARLYCON_MEM=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_AMD_NB=y
 CONFIG_IA32_EMULATION=y
 CONFIG_IA32_EMULATION=y
 CONFIG_X86_X32=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_NET_VENDOR_INTEL=y
 CONFIG_E1000=y
 CONFIG_E1000=y
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250_PNP=y
 CONFIG_SERIAL_8250_PNP=y
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_FIX_EARLYCON_MEM=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"
 menu "Toolchain settings"
 
 
 config ADK_TOOLCHAIN_GDB
 config ADK_TOOLCHAIN_GDB
@@ -17,7 +13,7 @@ config ADK_TOOLCHAIN_GCC_CXX
 config ADK_TOOLCHAIN_GCC_SSP
 config ADK_TOOLCHAIN_GCC_SSP
 	prompt "Enable Stack Smashing Protection in GCC"
 	prompt "Enable Stack Smashing Protection in GCC"
 	boolean
 	boolean
-	default n
+	default y
 
 
 config ADK_TOOLCHAIN_GCC_USE_SSP
 config ADK_TOOLCHAIN_GCC_USE_SSP
 	prompt "Use SSP for all packages"
 	prompt "Use SSP for all packages"
@@ -28,7 +24,7 @@ config ADK_TOOLCHAIN_GCC_USE_SSP
 config ADK_TOOLCHAIN_GCC_LTO
 config ADK_TOOLCHAIN_GCC_LTO
 	prompt "Enable Link Time Optimization in GCC"
 	prompt "Enable Link Time Optimization in GCC"
 	boolean
 	boolean
-	default n
+	default y
 
 
 config ADK_TOOLCHAIN_GCC_USE_LTO
 config ADK_TOOLCHAIN_GCC_USE_LTO
 	prompt "Use Link Time Optimization for all packages"
 	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
 CONFOPTS+=		--enable-64-bit-bfd
 endif
 endif
 
 
+ifeq ($(ADK_LINUX_SH)$(ADK_LINUX_X86_64),)
+CONFOPTS+=		--disable-multilib
+else
+CONFOPTS+=		--enable-multilib
+endif
+
 ifeq (${ADK_MAKE_PARALLEL},y)
 ifeq (${ADK_MAKE_PARALLEL},y)
 BINUTILS_MAKEOPTS+=	-j${ADK_MAKE_JOBS}
 BINUTILS_MAKEOPTS+=	-j${ADK_MAKE_JOBS}
 endif
 endif
@@ -31,7 +37,6 @@ $(WRKBUILD)/.configured:
 		--prefix=$(STAGING_HOST_DIR) \
 		--prefix=$(STAGING_HOST_DIR) \
 		--target=$(GNU_TARGET_NAME) \
 		--target=$(GNU_TARGET_NAME) \
 		--with-sysroot=$(STAGING_TARGET_DIR) \
 		--with-sysroot=$(STAGING_TARGET_DIR) \
-		--disable-multilib \
 		--disable-dependency-tracking \
 		--disable-dependency-tracking \
 		--disable-libtool-lock \
 		--disable-libtool-lock \
 		--disable-nls \
 		--disable-nls \

+ 24 - 17
toolchain/gcc/Makefile

@@ -4,11 +4,11 @@
 include $(TOPDIR)/rules.mk
 include $(TOPDIR)/rules.mk
 include ../rules.mk
 include ../rules.mk
 
 
-TARGET_CFLAGS:=	$(filter-out -fstack-protector,$(TARGET_CFLAGS))
+TARGET_CFLAGS:=		$(filter-out -fstack-protector,$(TARGET_CFLAGS))
 
 
 include Makefile.inc
 include Makefile.inc
 
 
-GCC_CONFOPTS=		--prefix=$(STAGING_HOST_DIR) \
+GCC_CONFOPTS:=		--prefix=$(STAGING_HOST_DIR) \
 			--with-bugurl="http://www.openadk.org/" \
 			--with-bugurl="http://www.openadk.org/" \
 			--build=$(GNU_HOST_NAME) \
 			--build=$(GNU_HOST_NAME) \
 			--host=$(GNU_HOST_NAME) \
 			--host=$(GNU_HOST_NAME) \
@@ -28,41 +28,43 @@ GCC_CONFOPTS=		--prefix=$(STAGING_HOST_DIR) \
 			--disable-libstdcxx-pch \
 			--disable-libstdcxx-pch \
 			--disable-ppl-version-check \
 			--disable-ppl-version-check \
 			--disable-cloog-version-check \
 			--disable-cloog-version-check \
+			--without-system-zlib \
 			--without-ppl \
 			--without-ppl \
 			--without-cloog \
 			--without-cloog \
 			--without-isl \
 			--without-isl \
 			--disable-nls
 			--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),)
 ifeq ($(ADK_LINUX_SH)$(ADK_LINUX_X86_64),)
-GCC_CONFOPTS+=		--disable-biarch --disable-multilib
+GCC_FINAL_CONFOPTS+=	--disable-biarch --disable-multilib
 endif
 endif
+
 ifeq ($(ADK_LINUX_SH),y)
 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
 endif
+
 ifeq ($(ADK_LINUX_X86_64),y)
 ifeq ($(ADK_LINUX_X86_64),y)
 ifeq ($(ADK_x32),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
 endif
 endif
 
 
 ifeq ($(ADK_TOOLCHAIN_GCC_SSP),y)
 ifeq ($(ADK_TOOLCHAIN_GCC_SSP),y)
-GCC_CONFOPTS+=		--enable-libssp
+GCC_FINAL_CONFOPTS+=	--enable-libssp
 else
 else
-GCC_CONFOPTS+=		--disable-libssp
+GCC_FINAL_CONFOPTS+=	--disable-libssp
 endif
 endif
 
 
 ifeq ($(ADK_TOOLCHAIN_GCC_LTO),y)
 ifeq ($(ADK_TOOLCHAIN_GCC_LTO),y)
-GCC_CONFOPTS+=		--enable-lto
+GCC_FINAL_CONFOPTS+=	--enable-lto
 else
 else
-GCC_CONFOPTS+=		--disable-lto
+GCC_FINAL_CONFOPTS+=	--disable-lto
 endif
 endif
 
 
 ifeq ($(ADK_LINUX_PPC),y)
 ifeq ($(ADK_LINUX_PPC),y)
@@ -132,6 +134,9 @@ endif
 		$(WRKBUILD)/configure \
 		$(WRKBUILD)/configure \
 			${GCC_CONFOPTS} \
 			${GCC_CONFOPTS} \
 			--enable-languages=c \
 			--enable-languages=c \
+			--disable-multilib \
+			--disable-lto \
+			--disable-libssp \
 			--disable-shared \
 			--disable-shared \
 			--without-headers
 			--without-headers
 	touch $@
 	touch $@
@@ -151,6 +156,7 @@ $(GCC_BUILD_DIR_INITIAL)/.configured:
 		CXXFLAGS="-O0 -g0" \
 		CXXFLAGS="-O0 -g0" \
 		$(WRKBUILD)/configure \
 		$(WRKBUILD)/configure \
 			${GCC_CONFOPTS} \
 			${GCC_CONFOPTS} \
+			${GCC_FINAL_CONFOPTS} \
 			--enable-languages=c \
 			--enable-languages=c \
 			--disable-shared \
 			--disable-shared \
 			--disable-threads \
 			--disable-threads \
@@ -171,6 +177,7 @@ $(GCC_BUILD_DIR_FINAL)/.configured:
 	cd $(GCC_BUILD_DIR_FINAL); PATH='$(TARGET_PATH)' \
 	cd $(GCC_BUILD_DIR_FINAL); PATH='$(TARGET_PATH)' \
 		$(WRKBUILD)/configure \
 		$(WRKBUILD)/configure \
 			${GCC_CONFOPTS} \
 			${GCC_CONFOPTS} \
+			${GCC_FINAL_CONFOPTS} \
 			--enable-languages=$(LANGUAGES) \
 			--enable-languages=$(LANGUAGES) \
 			--with-build-sysroot='$${prefix}/${STAGING_HOST2TARGET}' \
 			--with-build-sysroot='$${prefix}/${STAGING_HOST2TARGET}' \
 			--with-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
 include ../rules.mk
 
 
 # glibc does not compile with Os
 # 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),)
 ifneq ($(ADK_DEBUG),)
-TARGET_CFLAGS_LIBC+=	-O2
+TARGET_CFLAGS+=		-O2
 endif
 endif
 
 
 # ssp partially supported
 # 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 Makefile.inc
 include ${TOPDIR}/mk/buildhlp.mk
 include ${TOPDIR}/mk/buildhlp.mk

+ 12 - 8
toolchain/glibc/Makefile.inc

@@ -6,8 +6,13 @@ PKG_VERSION:=		2.19
 PKG_RELEASE:=		1
 PKG_RELEASE:=		1
 PKG_MD5SUM:=		5374d29864b583622b62bfc6b8429418
 PKG_MD5SUM:=		5374d29864b583622b62bfc6b8429418
 PKG_SITES:=		${MASTER_SITE_GNU:=glibc/}
 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) \
 GLIBC_CONFOPTS:=	--build=$(GNU_HOST_NAME) \
-			--host=$(GNU_TARGET_NAME) \
+			--host=$(GLIBC_TARGET_NAME) \
 			--with-headers=$(STAGING_TARGET_DIR)/usr/include \
 			--with-headers=$(STAGING_TARGET_DIR)/usr/include \
 			--disable-sanity-checks \
 			--disable-sanity-checks \
 			--disable-nls \
 			--disable-nls \
@@ -21,16 +26,15 @@ GLIBC_CONFOPTS:=	--build=$(GNU_HOST_NAME) \
 			--enable-kernel="2.6.32" \
 			--enable-kernel="2.6.32" \
 			--enable-add-ons
 			--enable-add-ons
 GLIBC_ENV:=             PATH='${TARGET_PATH}' \
 GLIBC_ENV:=             PATH='${TARGET_PATH}' \
+			SHELL='${SHELL}' \
                         BUILD_CC=${CC_FOR_BUILD} \
                         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_forced_unwind=yes \
 			libc_cv_cc_with_libunwind=yes \
 			libc_cv_cc_with_libunwind=yes \
                         libc_cv_c_cleanup=yes \
                         libc_cv_c_cleanup=yes \
                         libc_cv_gnu99_inline=yes \
                         libc_cv_gnu99_inline=yes \
-			libc_cv_sparc64_tls=yes \
-			libc_cv_slibdir="/lib" \
 			libc_cv_initfini_array=yes \
 			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 ;;