Browse Source

resolve merge conflict

Waldemar Brodkorb 11 năm trước cách đây
mục cha
commit
2735fdf973
100 tập tin đã thay đổi với 1682 bổ sung1478 xóa
  1. 17 130
      Config.in
  2. 3 10
      mk/build.mk
  3. 10 10
      mk/image.mk
  4. 5 5
      mk/vars.mk
  5. 5 51
      scripts/update-sys
  6. 1 1
      target/aarch64/sys-available/toolchain-aarch64
  7. 2 2
      target/arm/sys-available/cubox-i
  8. 2 3
      target/arm/sys-available/qemu-arm
  9. 0 12
      target/arm/sys-available/qemu-armhf
  10. 1 1
      target/arm/sys-available/raspberry-pi
  11. 3 5
      target/arm/sys-available/toolchain-arm
  12. 0 14
      target/arm/sys-available/toolchain-armhf
  13. 10 745
      target/config/Config.in
  14. 5 0
      target/config/Config.in.abi
  15. 36 0
      target/config/Config.in.abi.choice
  16. 64 0
      target/config/Config.in.abi.default
  17. 3 42
      target/config/Config.in.adk
  18. 10 4
      target/config/Config.in.arch.choice
  19. 7 0
      target/config/Config.in.arch.default
  20. 5 0
      target/config/Config.in.arm
  21. 34 0
      target/config/Config.in.arm.choice
  22. 25 0
      target/config/Config.in.arm.default
  23. 129 0
      target/config/Config.in.cpu
  24. 5 0
      target/config/Config.in.endian
  25. 17 0
      target/config/Config.in.endian.choice
  26. 18 0
      target/config/Config.in.endian.default
  27. 3 0
      target/config/Config.in.hardware
  28. 57 0
      target/config/Config.in.kernel
  29. 6 0
      target/config/Config.in.kernelversion
  30. 44 0
      target/config/Config.in.kernelversion.choice
  31. 15 0
      target/config/Config.in.kernelversion.default
  32. 5 0
      target/config/Config.in.libc
  33. 44 0
      target/config/Config.in.libc.choice
  34. 44 0
      target/config/Config.in.libc.default
  35. 7 95
      target/config/Config.in.qemu
  36. 91 0
      target/config/Config.in.qemuopts
  37. 1 0
      target/config/Config.in.system.choice
  38. 272 0
      target/config/Config.in.target
  39. 104 0
      target/config/Config.in.toolchain
  40. 10 0
      target/config/Config.in.tools
  41. 5 0
      target/config/Config.in.x86
  42. 24 0
      target/config/Config.in.x86.choice
  43. 22 0
      target/config/Config.in.x86.default
  44. 49 0
      target/linux/config/Config.in.kernel
  45. 1 1
      target/m68k/sys-available/toolchain-m68k
  46. 3 5
      target/microblaze/sys-available/qemu-microblaze
  47. 0 11
      target/microblaze/sys-available/qemu-microblazeel
  48. 3 4
      target/microblaze/sys-available/toolchain-microblaze
  49. 0 10
      target/microblaze/sys-available/toolchain-microblazeel
  50. 1 16
      target/mips/Makefile
  51. 0 1
      target/mips/kernel/qemu-mips
  52. 0 9
      target/mips/kernel/qemu-mips64el
  53. 0 7
      target/mips/kernel/qemu-mipsel
  54. 3 4
      target/mips/sys-available/qemu-mips
  55. 0 13
      target/mips/sys-available/qemu-mips64
  56. 0 12
      target/mips/sys-available/qemu-mips64el
  57. 0 12
      target/mips/sys-available/qemu-mips64eln32
  58. 0 12
      target/mips/sys-available/qemu-mips64eln64
  59. 0 13
      target/mips/sys-available/qemu-mips64n32
  60. 0 13
      target/mips/sys-available/qemu-mips64n64
  61. 0 10
      target/mips/sys-available/qemu-mipsel
  62. 3 4
      target/mips/sys-available/toolchain-mips
  63. 0 12
      target/mips/sys-available/toolchain-mips64
  64. 0 12
      target/mips/sys-available/toolchain-mips64el
  65. 0 12
      target/mips/sys-available/toolchain-mips64eln32
  66. 0 12
      target/mips/sys-available/toolchain-mips64eln64
  67. 0 12
      target/mips/sys-available/toolchain-mips64n32
  68. 0 12
      target/mips/sys-available/toolchain-mips64n64
  69. 0 10
      target/mips/sys-available/toolchain-mipsel
  70. 9 0
      target/mips64/Config.in
  71. 111 0
      target/mips64/Makefile
  72. 0 0
      target/mips64/kernel/lemote-yeelong
  73. 0 0
      target/mips64/kernel/qemu-mips64
  74. 1 1
      target/mips64/sys-available/lemote-yeelong
  75. 11 0
      target/mips64/sys-available/qemu-mips64
  76. 11 0
      target/mips64/sys-available/toolchain-mips64
  77. 4 0
      target/mips64/target.mk
  78. 263 0
      target/mips64/uclibc.config
  79. 2 2
      target/ppc/sys-available/qemu-ppc
  80. 2 2
      target/ppc/sys-available/toolchain-ppc
  81. 2 2
      target/ppc64/sys-available/qemu-ppc64
  82. 2 2
      target/ppc64/sys-available/toolchain-ppc64
  83. 3 4
      target/sh/sys-available/qemu-sh4
  84. 0 11
      target/sh/sys-available/qemu-sh4eb
  85. 3 4
      target/sh/sys-available/toolchain-sh4
  86. 0 11
      target/sh/sys-available/toolchain-sh4eb
  87. 2 2
      target/sparc/sys-available/qemu-sparc
  88. 2 2
      target/sparc/sys-available/toolchain-sparc
  89. 2 2
      target/sparc64/sys-available/qemu-sparc64
  90. 2 2
      target/sparc64/sys-available/toolchain-sparc64
  91. 0 10
      target/tarch.lst
  92. 2 3
      target/x86/sys-available/generic-pc
  93. 1 0
      target/x86/sys-available/ibm-x40
  94. 0 10
      target/x86/sys-available/qemu-i486
  95. 0 10
      target/x86/sys-available/qemu-i686
  96. 9 0
      target/x86/sys-available/qemu-x86
  97. 0 11
      target/x86/sys-available/qemu-x86_64-32
  98. 2 3
      target/x86/sys-available/toolchain-x86
  99. 2 3
      target/x86_64/sys-available/qemu-x86_64
  100. 0 12
      target/x86_64/sys-available/qemu-x86_64_x32

+ 17 - 130
Config.in

@@ -1,10 +1,6 @@
 # This file is part of the OpenADK project. OpenADK is copyrighted
 # material, please see the LICENCE file in the top-level directory.
 
-config MODULES
-	bool
-	default y
-
 config ADK_HAVE_DOT_CONFIG
 	bool
 	default y
@@ -18,6 +14,7 @@ config ADK_CHOOSE_TARGET_SYSTEM
 	default y if ADK_CHOOSE_TARGET_SYSTEM_M68K
 	default y if ADK_CHOOSE_TARGET_SYSTEM_MICROBLAZE
 	default y if ADK_CHOOSE_TARGET_SYSTEM_MIPS
+	default y if ADK_CHOOSE_TARGET_SYSTEM_MIPS64
 	default y if ADK_CHOOSE_TARGET_SYSTEM_PPC
 	default y if ADK_CHOOSE_TARGET_SYSTEM_PPC64
 	default y if ADK_CHOOSE_TARGET_SYSTEM_SPARC
@@ -27,6 +24,20 @@ config ADK_CHOOSE_TARGET_SYSTEM
 	default y if ADK_CHOOSE_TARGET_SYSTEM_X86_64
 	default n
 
+source "target/config/Config.in.cpu"
+source "target/config/Config.in.hardware"
+source "target/config/Config.in.kernel"
+source "target/config/Config.in.arch"
+source "target/config/Config.in.system"
+source "target/config/Config.in.endian"
+source "target/config/Config.in.abi"
+source "target/config/Config.in.arm"
+source "target/config/Config.in.x86"
+source "target/config/Config.in.qemu"
+source "target/config/Config.in.kernelversion"
+source "target/config/Config.in.libc"
+source "target/config/Config.in.toolchain"
+source "target/config/Config.in.qemuopts"
 source "target/config/Config.in"
 
 menu "Package collection"
@@ -86,134 +97,10 @@ depends on !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_SYSTEM
 source "target/config/Config.in.runtime"
 endmenu
 
-choice
-prompt "Kernel Version"
-depends on ADK_TOOLCHAIN_ONLY
-
-config ADK_KERNEL_VERSION_TOOLCHAIN
-	prompt "3.14.4"
-	boolean
-	depends on ADK_TOOLCHAIN_ONLY
-
-endchoice
-
 menu "Kernel configuration"
-depends on !ADK_TOOLCHAIN_ONLY && !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_SYSTEM && ADK_TARGET_KERNEL_CUSTOMISING
-
-choice
-prompt "Kernel Version"
-default ADK_KERNEL_VERSION_3_14_4
-
-config ADK_KERNEL_VERSION_3_15_RC6
-	prompt "3.15-rc6"
-	boolean
-
-config ADK_KERNEL_VERSION_3_14_4
-	prompt "3.14.4"
-	depends on !ADK_TARGET_SYSTEM_CUBOX_I
-	boolean
-
-config ADK_KERNEL_VERSION_3_13_11
-	prompt "3.13.11"
-	depends on !ADK_TARGET_SYSTEM_CUBOX_I
-	boolean
-
-config ADK_KERNEL_VERSION_3_12_20
-	prompt "3.12.20"
-	depends on !ADK_TARGET_SYSTEM_CUBOX_I
-	boolean
-
-config ADK_KERNEL_VERSION_3_10_40
-	prompt "3.10.40"
-	depends on !ADK_TARGET_SYSTEM_CUBOX_I
-	boolean
-
-config ADK_KERNEL_VERSION_3_10_30
-	prompt "3.10.30"
-	depends on ADK_TARGET_SYSTEM_CUBOX_I
-	boolean
-
-config ADK_KERNEL_VERSION_3_4_90
-	prompt "3.4.90"
-	depends on !ADK_TARGET_SYSTEM_RASPBERRY_PI
-	depends on !ADK_TARGET_SYSTEM_CUBOX_I
-	boolean
-
-endchoice
-
-config ADK_KERNEL_VERSION
-	string
-	default "3.15-rc6" if ADK_KERNEL_VERSION_3_15_RC6
-	default "3.14.4" if ADK_KERNEL_VERSION_3_14_4
-	default "3.13.11" if ADK_KERNEL_VERSION_3_13_11
-	default "3.12.20" if ADK_KERNEL_VERSION_3_12_20
-	default "3.11.10" if ADK_KERNEL_VERSION_3_11_10
-	default "3.10.40" if ADK_KERNEL_VERSION_3_10_40
-	default "3.10.30" if ADK_KERNEL_VERSION_3_10_30
-	default "3.4.90" if ADK_KERNEL_VERSION_3_4_90
-	help
-
-config ADK_KERNEL_COMP_GZIP_RASPBERRY_PI
-        boolean
-        select ADK_KERNEL_RD_GZIP
-        select ADK_KERNEL_KERNEL_GZIP
-        select ADK_KERNEL_INITRAMFS_COMPRESSION_GZIP
-	depends on ADK_TARGET_SYSTEM_RASPBERRY_PI
-	default y
-
-choice
-prompt "Kernel Compression"
-depends on !ADK_TARGET_SYSTEM_RASPBERRY_PI && !ADK_TARGET_SYSTEM_MIKROTIK_RB532
-
-config ADK_KERNEL_COMP_XZ
-	prompt "use XZ compression"
-	boolean
-	select ADK_KERNEL_RD_XZ
-	select ADK_KERNEL_KERNEL_XZ
-	select ADK_KERNEL_INITRAMFS_COMPRESSION_XZ
-
-config ADK_KERNEL_COMP_LZMA
-	prompt "use LZMA compression"
-	boolean
-	select ADK_KERNEL_RD_LZMA
-	select ADK_KERNEL_KERNEL_LZMA
-	select ADK_KERNEL_INITRAMFS_COMPRESSION_LZMA
-
-config ADK_KERNEL_COMP_LZO
-	prompt "use LZO compression"
-	boolean
-	select ADK_KERNEL_RD_LZO
-	select ADK_KERNEL_KERNEL_LZO
-	select ADK_KERNEL_INITRAMFS_COMPRESSION_LZO
-
-config ADK_KERNEL_COMP_GZIP
-	prompt "use GZIP compression"
-	boolean
-	select ADK_KERNEL_RD_GZIP
-	select ADK_KERNEL_KERNEL_GZIP
-	select ADK_KERNEL_INITRAMFS_COMPRESSION_GZIP
-
-config ADK_KERNEL_COMP_BZIP2
-	prompt "use BZIP2 compression"
-	boolean
-	select ADK_KERNEL_RD_BZIP2
-	select ADK_KERNEL_KERNEL_BZIP2
-	select ADK_KERNEL_INITRAMFS_COMPRESSION_BZIP2
-
-endchoice
-
-config ADK_COMPRESSION_TOOL
-	string
-	default "gzip -n9" if ADK_KERNEL_INITRAMFS_COMPRESSION_GZIP
-	default "bzip2" if ADK_KERNEL_INITRAMFS_COMPRESSION_BZIP2
-	default "xz --check=crc32" if ADK_KERNEL_INITRAMFS_COMPRESSION_XZ
-	default "lzma -9" if ADK_KERNEL_INITRAMFS_COMPRESSION_LZMA
-	default "lzop" if ADK_KERNEL_INITRAMFS_COMPRESSION_LZO
-	default "gzip -n9"
-	help
-
+depends on !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_SYSTEM
 source "target/linux/Config.in"
 endmenu
 
+source "target/config/Config.in.target"
 source "target/config/Config.in.adk"
-source "toolchain/Config.in"

+ 3 - 10
mk/build.mk

@@ -35,10 +35,9 @@ DEFCONFIG=		ADK_DEBUG=n \
 			ADK_PKG_TEST=n \
 			ADK_PKG_MPDBOX=n \
 			ADK_PKG_DEVELOPMENT=n \
-			ADK_TOOLCHAIN_USE_SSP=n \
-			ADK_TOOLCHAIN_USE_LTO=n \
-			ADK_TOOLCHAIN_GOLD=n \
-			ADK_TOOLCHAIN_USE_GOLD=n \
+			ADK_TOOLCHAIN_WITH_SSP=n \
+			ADK_TOOLCHAIN_WITH_LTO=n \
+			ADK_TOOLCHAIN_WITH_GOLD=n \
 			ADK_LINUX_ARM_WITH_THUMB=n \
 			BUSYBOX_IFPLUGD=n \
 			BUSYBOX_EXTRA_COMPAT=n \
@@ -114,12 +113,6 @@ POSTCONFIG=		-@\
 			touch .rebuild.bkeymaps;\
 			rebuild=1;\
 		fi; \
-		if [ "$$(grep ^ADK_KERNEL_VERSION_ .config|md5sum)" != "$$(grep ^ADK_KERNEL_VERSION_ .config.old|md5sum)" ];then \
-			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 cleandir, after changing thumb mode";\
-		fi; \
 		if [ $$rebuild -eq 1 ];then \
 			cp .config .config.old;\
 		fi; \

+ 10 - 10
mk/image.mk

@@ -64,8 +64,8 @@ endif
 ifeq ($(ADK_LINUX_X86_64),y)
 ifeq ($(ADK_TARGET_ABI_32),)
 	# fixup lib dirs
-	mv ${TARGET_DIR}/lib/* ${TARGET_DIR}/${ADK_TARGET_LIBC_PATH}
-	rm -rf ${TARGET_DIR}/lib/
+	test ! -d ${TARGET_DIR}/lib || mv ${TARGET_DIR}/lib/* ${TARGET_DIR}/${ADK_TARGET_LIBC_PATH}
+	test ! -d ${TARGET_DIR}/lib || rm -rf ${TARGET_DIR}/lib
 	ln -sf /${ADK_TARGET_LIBC_PATH} ${TARGET_DIR}/lib
 	-mkdir ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} 2>/dev/null
 	-mv ${TARGET_DIR}/usr/lib/* ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH}
@@ -75,8 +75,8 @@ endif
 endif
 ifeq ($(ADK_LINUX_PPC64),y)
 	# fixup lib dirs
-	mv ${TARGET_DIR}/lib/* ${TARGET_DIR}/${ADK_TARGET_LIBC_PATH}
-	rm -rf ${TARGET_DIR}/lib/
+	test ! -d ${TARGET_DIR}/lib || mv ${TARGET_DIR}/lib/* ${TARGET_DIR}/${ADK_TARGET_LIBC_PATH}
+	test ! -d ${TARGET_DIR}/lib || rm -rf ${TARGET_DIR}/lib
 	ln -sf /${ADK_TARGET_LIBC_PATH} ${TARGET_DIR}/lib
 	-mkdir ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} 2>/dev/null
 	-mv ${TARGET_DIR}/usr/lib/* ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH}
@@ -85,8 +85,8 @@ ifeq ($(ADK_LINUX_PPC64),y)
 endif
 ifeq ($(ADK_LINUX_SPARC64),y)
 	# fixup lib dirs
-	mv ${TARGET_DIR}/lib/* ${TARGET_DIR}/${ADK_TARGET_LIBC_PATH}
-	rm -rf ${TARGET_DIR}/lib/
+	test ! -d ${TARGET_DIR}/lib || mv ${TARGET_DIR}/lib/* ${TARGET_DIR}/${ADK_TARGET_LIBC_PATH}
+	test ! -d ${TARGET_DIR}/lib || rm -rf ${TARGET_DIR}/lib
 	ln -sf /${ADK_TARGET_LIBC_PATH} ${TARGET_DIR}/lib
 	-mkdir ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} 2>/dev/null
 	-mv ${TARGET_DIR}/usr/lib/* ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH}
@@ -95,8 +95,8 @@ ifeq ($(ADK_LINUX_SPARC64),y)
 endif
 ifeq ($(ADK_TARGET_ABI_N32),y)
 	# fixup lib dirs
-	mv ${TARGET_DIR}/lib/* ${TARGET_DIR}/${ADK_TARGET_LIBC_PATH}
-	rm -rf ${TARGET_DIR}/lib/
+	test ! -d ${TARGET_DIR}/lib || mv ${TARGET_DIR}/lib/* ${TARGET_DIR}/${ADK_TARGET_LIBC_PATH}
+	test ! -d ${TARGET_DIR}/lib || rm -rf ${TARGET_DIR}/lib
 	ln -sf /${ADK_TARGET_LIBC_PATH} ${TARGET_DIR}/lib
 	-mkdir ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} 2>/dev/null
 	-mv ${TARGET_DIR}/usr/lib/* ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH}
@@ -105,8 +105,8 @@ ifeq ($(ADK_TARGET_ABI_N32),y)
 endif
 ifeq ($(ADK_TARGET_ABI_N64),y)
 	# fixup lib dirs
-	mv ${TARGET_DIR}/lib/* ${TARGET_DIR}/${ADK_TARGET_LIBC_PATH}
-	rm -rf ${TARGET_DIR}/lib/
+	test ! -d ${TARGET_DIR}/lib || mv ${TARGET_DIR}/lib/* ${TARGET_DIR}/${ADK_TARGET_LIBC_PATH}
+	test ! -d ${TARGET_DIR}/lib || rm -rf ${TARGET_DIR}/lib
 	ln -sf /${ADK_TARGET_LIBC_PATH} ${TARGET_DIR}/lib
 	-mkdir ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} 2>/dev/null
 	-mv ${TARGET_DIR}/usr/lib/* ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH}

+ 5 - 5
mk/vars.mk

@@ -113,13 +113,13 @@ TARGET_CXXFLAGS+=	-static
 TARGET_LDFLAGS+=	-static
 endif
 
-ifneq ($(ADK_TOOLCHAIN_USE_SSP),)
-TARGET_CFLAGS+=		-fstack-protector
-TARGET_CXXFLAGS+=	-fstack-protector
-TARGET_LDFLAGS+=	-fstack-protector
+ifneq ($(ADK_TARGET_USE_SSP),)
+TARGET_CFLAGS+=		-fstack-protector-all
+TARGET_CXXFLAGS+=	-fstack-protector-all
+TARGET_LDFLAGS+=	-fstack-protector-all
 endif
 
-ifneq ($(ADK_TOOLCHAIN_USE_LTO),)
+ifneq ($(ADK_TARGET_USE_LTO),)
 TARGET_CFLAGS+=		-flto
 TARGET_CXXFLAGS+=	-flto
 TARGET_LDFLAGS+=	-flto

+ 5 - 51
scripts/update-sys

@@ -1,62 +1,16 @@
 #!/usr/bin/env bash
-#set -x
-# 1. create Config.in.systems with all available target systems for each architecture
-# 2. if ADK configuration exist, create Config.in.arch/Config.in.system with fixed values
-# 3. exit when native system build is detected
+# create Config.in.systems with all available target systems for each architecture
 
 topdir=$(readlink -nf $(dirname $0)/.. 2>/dev/null || (cd $(dirname $0)/..; pwd -P))
 
-defaults() {
-	echo 'source "target/config/Config.in.arch.default"' > $topdir/target/config/Config.in.arch
-	echo 'source "target/config/Config.in.arch.choice"' >> $topdir/target/config/Config.in.arch
-	echo 'source "target/config/Config.in.system.default"' > $topdir/target/config/Config.in.system
-	echo 'source "target/config/Config.in.system.choice"' >> $topdir/target/config/Config.in.system
-	exit 0
-}
+echo 'source "target/config/Config.in.arch.default"' > $topdir/target/config/Config.in.arch
+echo 'source "target/config/Config.in.arch.choice"' >> $topdir/target/config/Config.in.arch
+echo 'source "target/config/Config.in.system.default"' > $topdir/target/config/Config.in.system
+echo 'source "target/config/Config.in.system.choice"' >> $topdir/target/config/Config.in.system
 
 for i in $(ls $topdir/target/);do
 	if [ -d "$topdir/target/$i/sys-enabled" ];then
 		cat $topdir/target/$i/sys-enabled/* > $topdir/target/$i/Config.in.systems 2>/dev/null
 	fi
 done
-if [ -f $topdir/.config ];then
-
-arch=$(grep ^ADK_TARGET_ARCH $topdir/.config|cut -f 2 -d = | sed -e 's#"##g')
-cpuarch=$(grep ^ADK_TARGET_CPU_ARCH $topdir/.config|cut -f 2 -d = | sed -e 's#"##g')
-systemsym=$(grep ^ADK_TARGET_SYSTEM_ $topdir/.config|cut -f 1 -d =) 
-system=$(grep ^ADK_TARGET_SYSTEM= $topdir/.config|cut -f 2 -d = | sed -e 's#"##g')
-systems=$(grep ^ADK_TARGET_SYSTEM= $topdir/.config|cut -f 2 -d = | sed -e 's#"##g'|sed -e 's#-#_#g')
-archsym=$(echo ADK_LINUX_$arch|tr '[:lower:]' '[:upper:]')
-
-if [ -z "$arch" -o -z "$system" ];then
-	defaults
-fi
-
-cat > $topdir/target/config/Config.in.arch << EOF 	
-source "target/config/Config.in.arch.default"
-config $archsym
-	boolean
-EOF
-
-if [ "${system}" = "toolchain" -o "${system}" = "qemu" -o "${system}" = "vbox" -o "${system}" = "aranym" ];then
-	sys=${system}-$cpuarch
-else
-	sys=$system
-fi
-
-cat > $topdir/target/config/Config.in.system << EOF 	
-source "target/config/Config.in.system.default"
-comment "Architecture: $arch"
-comment "CPU Architecture: $cpuarch"
-comment "System: $sys"
-
-config $systemsym
-	boolean
-	select $archsym
-$(grep select $topdir/target/$arch/sys-available/$sys)
-	default y
-EOF
-else
-	defaults
-fi
 exit 0

+ 1 - 1
target/aarch64/sys-available/toolchain-aarch64

@@ -6,9 +6,9 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_AARCH64
 	select ADK_soft_float
 	select ADK_fpu_vfp
 	select ADK_eabi
-	select ADK_TOOLCHAIN
 	select ADK_CPU_ARMV8
 	select ADK_LINUX_64
+	select ADK_TARGET_TOOLCHAIN
 	select ADK_TARGET_PACKAGE_TXZ
 	help
 	  AARCH64 toolchain.

+ 2 - 2
target/arm/sys-available/cubox-i

@@ -2,11 +2,11 @@ config ADK_TARGET_SYSTEM_CUBOX_I
 	bool "Cubox-i"
 	select ADK_arm
 	select ADK_little
-	select ADK_hard_float
 	select ADK_eabihf
 	select ADK_fpu_neon
 	select ADK_cubox_i
 	select ADK_CPU_CORTEX_A9
+	select ADK_TARGET_CPU_WITH_FPU
 	select ADK_TARGET_WITH_VGA
 	select ADK_TARGET_WITH_CPU_FREQ
 	select ADK_TARGET_WITH_USB
@@ -22,5 +22,5 @@ config ADK_TARGET_SYSTEM_CUBOX_I
 	select ADK_TARGET_WITH_ROOT_RW
 	select ADK_PACKAGE_U_BOOT_IMX6
 	help
-	  Cubox-i
+	  Solidrun Cubox-i
 

+ 2 - 3
target/arm/sys-available/qemu-arm

@@ -3,9 +3,8 @@ config ADK_TARGET_SYSTEM_QEMU_ARM
 	select ADK_arm
 	select ADK_qemu_arm
 	select ADK_little
-	select ADK_soft_float
 	select ADK_eabi
-	select ADK_HARDWARE_QEMU
+	select ADK_TARGET_QEMU
 	select ADK_TARGET_KERNEL_ZIMAGE
 	help
-	 Support for Qemu Emulator (arm).
+	  Qemu Emulator for arm architecture.

+ 0 - 12
target/arm/sys-available/qemu-armhf

@@ -1,12 +0,0 @@
-config ADK_TARGET_SYSTEM_QEMU_ARMHF
-	bool "Qemu Emulator (hard-float)"
-	select ADK_arm
-	select ADK_qemu_armhf
-	select ADK_little
-	select ADK_hard_float
-	select ADK_eabihf
-	select ADK_fpu_vfp
-	select ADK_HARDWARE_QEMU
-	select ADK_TARGET_KERNEL_ZIMAGE
-	help
-	 Support for Qemu Emulator (armhf).

+ 1 - 1
target/arm/sys-available/raspberry-pi

@@ -2,11 +2,11 @@ config ADK_TARGET_SYSTEM_RASPBERRY_PI
 	bool "Raspberry PI"
 	select ADK_arm
 	select ADK_little
-	select ADK_hard_float
 	select ADK_eabihf
 	select ADK_fpu_vfp
 	select ADK_raspberry_pi
 	select ADK_CPU_ARM1176JZF_S
+	select ADK_TARGET_CPU_WITH_FPU
 	select ADK_TARGET_WITH_VGA
 	select ADK_TARGET_WITH_CPU_FREQ
 	select ADK_TARGET_WITH_USB

+ 3 - 5
target/arm/sys-available/toolchain-arm

@@ -1,12 +1,10 @@
 config ADK_TARGET_SYSTEM_TOOLCHAIN_ARM
-	bool "Toolchain only (soft float)"
+	bool "Toolchain only"
 	select ADK_arm
 	select ADK_toolchain_arm
 	select ADK_little
-	select ADK_soft_float
 	select ADK_eabi
-	select ADK_TOOLCHAIN
+	select ADK_TARGET_TOOLCHAIN
 	select ADK_TARGET_PACKAGE_TXZ
-	select ADK_CPU_CORTEX_A9
 	help
-	  ARM toolchain (soft float) for Cortex A9.
+	  ARM toolchain.

+ 0 - 14
target/arm/sys-available/toolchain-armhf

@@ -1,14 +0,0 @@
-config ADK_TARGET_SYSTEM_TOOLCHAIN_ARMHF
-	bool "Toolchain only (hard float)"
-	select ADK_arm
-	select ADK_little
-	select ADK_hard_float
-	select ADK_eabihf
-	select ADK_fpu_vfp
-	select ADK_toolchain_armhf
-	select ADK_TOOLCHAIN
-	select ADK_TARGET_PACKAGE_TXZ
-	select ADK_CPU_CORTEX_A9
-	help
-	  ARM toolchain (hard float) for Cortex A9.
-

+ 10 - 745
target/config/Config.in

@@ -1,245 +1,20 @@
 # This file is part of the OpenADK project. OpenADK is copyrighted
 # material, please see the LICENCE file in the top-level directory.
 
-
-config ADK_TARGET_KERNEL_VMLINUZ
-	boolean
-
-config ADK_TARGET_KERNEL_ZIMAGE
-	boolean
-
-config ADK_TARGET_KERNEL_LINUXBIN
-	boolean
-
-config ADK_TARGET_KERNEL_IMAGE
-	boolean
-
-config ADK_TARGET_KERNEL_UIMAGE
-	boolean
-
-config ADK_TARGET_KERNEL_BZIMAGE
-	boolean
-
-config ADK_TARGET_KERNEL
-	string
-	default "uImage" if ADK_TARGET_KERNEL_UIMAGE
-	default "zImage" if ADK_TARGET_KERNEL_ZIMAGE
-	default "Image" if ADK_TARGET_KERNEL_IMAGE
-	default "linux.bin" if ADK_TARGET_KERNEL_LINUXBIN
-	default "vmlinuz" if ADK_TARGET_KERNEL_VMLINUZ
-	default "bzImage" if ADK_TARGET_KERNEL_BZIMAGE
-	default "vmlinux"
-
-config ADK_big
-	boolean
-
-config ADK_little
-	boolean
-
-config ADK_soft_float
-	boolean
-
-config ADK_hard_float
-	boolean
-
-config ADK_fpu_neon
-	boolean
-
-config ADK_fpu_vfp
-	boolean
-
-config ADK_TARGET_FLOAT
-	string
-	default "hard" if ADK_hard_float
-	default "soft" if ADK_soft_float
-
-config ADK_TARGET_FPU
-	string
-	default "vfp" if ADK_fpu_vfp
-	default "neon" if ADK_fpu_neon
-
-config ADK_TARGET_ENDIAN
-	string
-	default "little" if ADK_little
-	default "big" if ADK_big
-
-config ADK_JFFS2_OPTS
-	string
-	default "-l" if ADK_little
-	default "-b" if ADK_big
-
-config ADK_TOOLCHAIN
-	boolean
-
-source "target/config/Config.in.arch"
-source "target/config/Config.in.system"
-source "target/config/Config.in.hardware"
-source "target/config/Config.in.qemu"
-
-config ADK_LINUX_MIPS64
-	boolean
-	default y if ADK_LINUX_MIPS && ADK_LINUX_64
-
-choice
-prompt "Toolchain options"
-depends on ADK_TOOLCHAIN
-config ADK_TOOLCHAIN_ONLY
-	boolean "Only build toolchain and selected packages"
-
-config ADK_TOOLCHAIN_ARCHIVE
-	boolean "Build a complete system usable f.e. via chroot"
-
-endchoice
-
-config ADK_32
-	boolean
-
-config ADK_64
-	boolean
-
-config ADK_x32
-	boolean
-
-config ADK_o32
-	boolean
-
-config ADK_n32
-	boolean
-
-config ADK_n64
-	boolean
-
-config ADK_eabi
-	boolean
-
-config ADK_eabihf
+# global symbols
+config ADK_LINUX_64
 	boolean
 
-config ADK_TARGET_ABI
-	string
-	default "n32" if ADK_n32
-	default "n64" if ADK_n64
-	default "32" if ADK_32
-	default "x32" if ADK_x32
-	default "eabi" if ADK_eabi
-	default "eabihf" if ADK_eabihf
-
-config ADK_TARGET_MIPS_ABI
-	depends on ADK_LINUX_MIPS
-	string
-	default "32" if ADK_o32
-	default "n32" if ADK_n32
-	default "64" if ADK_n64
-
-choice
-prompt "Target ABI"
-depends on ADK_LINUX_64 && ADK_LINUX_MIPS && !ADK_TOOLCHAIN && !ADK_HARDWARE_QEMU
-
-config ADK_TARGET_ABI_N32
-	boolean "N32 ABI (new)"
-	select ADK_n32
-
-config ADK_TARGET_ABI_O32
-	boolean "O32 ABI (old)"
-	select ADK_o32
-
-config ADK_TARGET_ABI_N64
-	boolean "N64 ABI"
-	select ADK_n64
-
-endchoice
-
-choice
-prompt "Target ABI"
-depends on ADK_LINUX_64 && ADK_LINUX_X86_64 && !ADK_TOOLCHAIN && !ADK_HARDWARE_QEMU
-
-config ADK_TARGET_ABI_64
-	boolean "64 Bit ABI"
-	select ADK_64
-
-config ADK_TARGET_ABI_X32
-	boolean "x32 ABI (new)"
-	select ADK_x32
-
-config ADK_TARGET_ABI_32
-	boolean "32 Bit ABI"
-	select ADK_32
-
-endchoice
-
-config ADK_TARGET_LIBC_PATH
-	string
-	default "lib" if ADK_32
-	default "lib32" if ADK_n32
-	default "libx32" if ADK_x32
-	default "lib64" if ADK_n64 \
-				|| ADK_64 \
-				|| ADK_LINUX_SPARC64 \
-				|| ADK_LINUX_PPC64 \
-				|| ADK_LINUX_X86_64
-	default "lib"
-
-config ADK_TARGET_KERNEL_MINICONFIG
-	string
-	default "arm-fm" if ADK_TARGET_SYSTEM_ARM_FM
-	default "qemu-microblaze-s3adsp1800" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
-	default "qemu-microblaze-ml605" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605
-	default "qemu-arm-versatilepb" if ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB
-	default "qemu-arm-vexpress-a9" if ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9
-	default "qemu-arm-spitz" if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
-	default "qemu-mips" if ADK_TARGET_SYSTEM_QEMU_MIPS
-	default "qemu-mipsel" if ADK_TARGET_SYSTEM_QEMU_MIPSEL
-	default "qemu-mips64" if ADK_TARGET_SYSTEM_QEMU_MIPS64 || ADK_TARGET_SYSTEM_QEMU_MIPS64N32 || ADK_TARGET_SYSTEM_QEMU_MIPS64N64
-	default "qemu-mips64el" if ADK_TARGET_SYSTEM_QEMU_MIPS64EL || ADK_TARGET_SYSTEM_QEMU_MIPS64ELN32 || ADK_TARGET_SYSTEM_QEMU_MIPS64ELN64
-	default "qemu-ppc" if ADK_TARGET_SYSTEM_QEMU_PPC
-	default "qemu-ppc64" if ADK_TARGET_SYSTEM_QEMU_PPC64
-	default "qemu-sh" if ADK_TARGET_SYSTEM_QEMU_SH4
-	default "qemu-sh" if ADK_TARGET_SYSTEM_QEMU_SH4EB
-	default "qemu-sparc" if ADK_TARGET_SYSTEM_QEMU_SPARC
-	default "qemu-sparc64" if ADK_TARGET_SYSTEM_QEMU_SPARC64
-	default "qemu-x86" if ADK_TARGET_SYSTEM_QEMU_I686 || ADK_TARGET_SYSTEM_QEMU_I486
-	default "qemu-x86_64" if ADK_TARGET_SYSTEM_QEMU_X86_64 || ADK_TARGET_SYSTEM_QEMU_X86_64_32 || ADK_TARGET_SYSTEM_QEMU_X86_64_X32
-	default "aranym-m68k" if ADK_TARGET_SYSTEM_ARANYM_M68K
-	default "ibm-x40" if ADK_TARGET_SYSTEM_IBM_X40
-	default "cubox-i" if ADK_TARGET_SYSTEM_CUBOX_I
-	default "raspberry-pi" if ADK_TARGET_SYSTEM_RASPBERRY_PI
-	default "sharp-zaurus" if ADK_TARGET_SYSTEM_SHARP_ZAURUS
-	default "lemote-yeelong" if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
-	default "mikrotik-rb532" if ADK_TARGET_SYSTEM_MIKROTIK_RB532
-	default "generic-pc" if ADK_TARGET_SYSTEM_GENERIC_PC
-
-choice
-prompt "Cubox-i model"
-depends on ADK_TARGET_SYSTEM_CUBOX_I
-
-config ADK_TARGET_CUBOX_I4PRO
-	boolean "Solidrun Cubox-i4Pro"
-
-config ADK_TARGET_CUBOX_I2ULTRA
-	boolean "Solidrun Cubox-i2Ultra"
-
-config ADK_TARGET_CUBOX_I2
-	boolean "Solidrun Cubox-i2"
-
-config ADK_TARGET_CUBOX_I1
-	boolean "Solidrun Cubox-i1"
-
-endchoice
-
-# global symbols
 config ADK_TARGET_KERNEL_64
 	boolean
 
 config ADK_TOOLCHAIN_ONLY
 	boolean
 
-config ADK_LINUX_64
-	boolean
-
-config ADK_HARDWARE_QEMU
+config ADK_TARGET_TOOLCHAIN
 	boolean
 
-config ADK_HARDWARE_VBOX
+config ADK_TARGET_QEMU
 	boolean
 
 # the inverse of ADK_TARGET_KERNEL_CUSTOMISING,
@@ -253,525 +28,15 @@ config ADK_TARGET_KERNEL_CUSTOMISING
 	default y
 	depends on !ADK_TARGET_FIXED_KERNEL
 
-# cpu features
-config ADK_TARGET_CPU_WITH_VT
-	boolean
-
-config ADK_TARGET_CPU_WITH_MTRR
-	boolean
-
-config ADK_TARGET_CPU_WITH_MMX
-	boolean
-
-config ADK_TARGET_CPU_WITH_MMXEXT
-	boolean
-
-config ADK_TARGET_CPU_WITH_SSE
-	boolean
-
-config ADK_TARGET_CPU_WITH_SSE2
-	boolean
-
-config ADK_TARGET_CPU_WITH_SSE3
-	boolean
-
-config ADK_TARGET_CPU_WITH_SSSE3
-	boolean
-
-config ADK_TARGET_CPU_WITH_IWMMXT
-	boolean
-
-# hyper threading
-config ADK_TARGET_CPU_WITH_HT
-	boolean
-
-config ADK_TARGET_CPU_WITH_3DNOW
-	boolean
-
-config ADK_TARGET_CPU_WITH_3DNOWEXT
-	boolean
-
-# cpu configuration
-config ADK_CPU_SH4
-	boolean
-
-config ADK_CPU_SPARC_V8
-	boolean
-
-config ADK_CPU_SPARC_V9
-	boolean
-
-config ADK_CPU_I486
-	boolean
-
-config ADK_CPU_I586
-	boolean
-
-config ADK_CPU_I686
-	boolean
-
-config ADK_CPU_X86_64
-	boolean
-
-config ADK_CPU_GEODE
-	boolean
-
-config ADK_CPU_PPC
-	boolean
-
-config ADK_CPU_PPC64
-	boolean
-
-config ADK_CPU_PENTIUM_M
-	boolean
-
-config ADK_CPU_ATOM
-	boolean
-
-config ADK_CPU_AMDFAM10
-	select ADK_TARGET_CPU_WITH_VT
-	boolean
-
-config ADK_CPU_LOONGSON2F
-	boolean
-
-config ADK_CPU_XSCALE
-	boolean
-
-config ADK_CPU_M68K
-	boolean
-
-config ADK_CPU_MIPS32
-	boolean
-
-config ADK_CPU_MIPS64
-	boolean
-
-config ADK_CPU_MICROBLAZE
-	boolean
-
-config ADK_CPU_ARM926EJ_S
-	boolean
-
-config ADK_CPU_ARM1176JZF_S
-	boolean
-
-config ADK_CPU_CORTEX_A9
-	boolean
-
-config ADK_CPU_ARMV8
-	boolean
-
-config ADK_TARGET_CPU_ARCH
-	string
-	default "x86_64" if ADK_CPU_X86_64
-	default "x86_64" if ADK_CPU_AMDFAM10
-	default "i486" if ADK_CPU_I486
-	default "i586" if ADK_CPU_I586
-	default "i686" if ADK_CPU_I686
-	default "i586" if ADK_CPU_GEODE
-	default "i686" if ADK_CPU_PENTIUM_M
-	default "i686" if ADK_CPU_ATOM
-	default "m68k" if ADK_LINUX_M68K
-	default "microblaze" if ADK_LINUX_MICROBLAZE && ADK_big
-	default "microblazeel" if ADK_LINUX_MICROBLAZE && ADK_little
-	default "mips64" if ADK_LINUX_MIPS && ADK_big && ADK_LINUX_64
-	default "mips64el" if ADK_LINUX_MIPS && ADK_little && ADK_LINUX_64
-	default "mips" if ADK_LINUX_MIPS && ADK_big
-	default "mipsel" if ADK_LINUX_MIPS && ADK_little
-	default "aarch64" if ADK_LINUX_AARCH64 && ADK_little
-	default "arm" if ADK_LINUX_ARM && ADK_little
-	default "sparc" if ADK_LINUX_SPARC
-	default "sparc64" if ADK_LINUX_SPARC64
-	default "sh4" if ADK_LINUX_SH && ADK_little
-	default "sh4eb" if ADK_LINUX_SH && ADK_big
-	default "ppc" if ADK_CPU_PPC
-	default "ppc64" if ADK_CPU_PPC64
-	default "mips64el" if ADK_native && ADK_lemote_yeelong
-
-config ADK_TARGET_ABI_CFLAGS
-	string
-	default "-mabi=32" if ADK_o32
-	default "-mabi=n32" if ADK_n32
-	default "-mabi=64" if ADK_n64
-	default "-m32" if ADK_32
-	default "-mx32" if ADK_x32
-	default "-m64" if ADK_64
-
-config ADK_TARGET_CFLAGS
-	string
-	default "-m4 -ml" if ADK_CPU_SH4 && ADK_little
-	default "-m4 -mb" if ADK_CPU_SH4 && ADK_big
-	default "-march=geode" if ADK_CPU_GEODE
-	default "-march=i486" if ADK_CPU_I486
-	default "-march=i586" if ADK_CPU_I586
-	default "-march=i686" if ADK_CPU_I686
-	default "-march=pentium-m" if ADK_CPU_PENTIUM_M
-	default "-march=atom" if ADK_CPU_ATOM
-	default "-march=amdfam10" if ADK_CPU_AMDFAM10
-	default "-mcpu=v8" if ADK_CPU_SPARC_V8
-	default "-m64 -mcpu=ultrasparc" if ADK_CPU_SPARC_V9
-	default "-march=loongson2f -Wa,-mfix-loongson2f-nop" if ADK_CPU_LOONGSON2F
-	default "-march=mips32" if ADK_CPU_MIPS32
-	default "-march=mips64" if ADK_CPU_MIPS64
-	default "-march=armv8-a" if ADK_CPU_ARMV8
-	default "-march=armv5te -mtune=iwmmxt" if ADK_CPU_XSCALE
-	default "-march=armv5te -mtune=arm926ej-s -mfloat-abi=soft" if ADK_CPU_ARM926EJ_S && ADK_soft_float
-	default "-march=armv5te -mtune=arm926ej-s -mfloat-abi=hard" if ADK_CPU_ARM926EJ_S && ADK_hard_float
-	default "-march=armv6 -mtune=arm1176jzf-s -mfloat-abi=soft" if ADK_CPU_ARM1176JZF_S && ADK_soft_float
-	default "-march=armv6 -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard" if ADK_CPU_ARM1176JZF_S && ADK_hard_float
-	default "-march=armv7-a -mtune=cortex-a9 -mfloat-abi=soft" if ADK_CPU_CORTEX_A9 && ADK_soft_float
-	default "-march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard" if ADK_CPU_CORTEX_A9 && ADK_hard_float
-
-config ADK_TARGET_CMDLINE
-	string
-	default "dwc_otg.fiq_split_enable=1" if ADK_TARGET_SYSTEM_RASPBERRY_PI
-	default "console=ttymxc0,115200 console=tty0" if ADK_TARGET_SYSTEM_CUBOX_I && ADK_RUNTIME_VERBOSE_INIT_VGA
-	default "console=tty0 console=ttymxc0,115200" if ADK_TARGET_SYSTEM_CUBOX_I && ADK_RUNTIME_VERBOSE_INIT_SERIAL
-	default "console=tty0" if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
-	default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_IBM_X40 && ADK_RUNTIME_VERBOSE_INIT_VGA
-	default "console=tty0 console=ttyS0,115200" if ADK_TARGET_SYSTEM_IBM_X40 && ADK_RUNTIME_VERBOSE_INIT_SERIAL
-	default "console=ttyS0,115200 console=tty0 fbcon=rotate:1" if ADK_TARGET_SYSTEM_SHARP_ZAURUS
-	default "console=ttyS0,9600" if ADK_TARGET_SYSTEM_FON_FON2100
-	default "console=ttyS0,38400" if ADK_TARGET_SYSTEM_PCENGINES_WRAP
-	default "console=ttyS0,115200 console=tty0 geodewdt.nowayout=1" if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
-	default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_VBOX_I686
-	default "console=tty0" if ADK_TARGET_SYSTEM_ARANYM_M68K
-	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_QEMU_I686
-	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_QEMU_X86_64
-	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_QEMU_SPARC64
-	default "console=ttyS0,9600" if ADK_TARGET_SYSTEM_QEMU_PPC
-	default "console=hvc0" if ADK_TARGET_SYSTEM_QEMU_PPC64
-	default "console=ttyUL0" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
-	default "console=ttyS0,115200" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605
-	default "console=ttyS0,115200" if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
-	default "console=ttyAMA0" if ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB
-	default "console=ttyAMA0" if ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9
-	default "console=ttyAMA0" if ADK_TARGET_SYSTEM_ARM_FM
-	default "console=ttySC1" if ADK_TARGET_SYSTEM_QEMU_SH4
-	default "console=ttySC1" if ADK_TARGET_SYSTEM_QEMU_SH4EB
-	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D13
-	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D2
-	default ""
-
-# c library
-config ADK_uclibc
-	boolean
-
-config ADK_glibc
-	boolean
-
-config ADK_musl
-	boolean
-
-config ADK_TARGET_LIBC
-	string
-	default "uclibc"  if ADK_uclibc
-	default "glibc"  if ADK_glibc
-	default "musl"  if ADK_musl
-
-choice 
-prompt "Target C library"
-depends on !ADK_CHOOSE_TARGET_SYSTEM && !ADK_CHOOSE_TARGET_ARCH
-config ADK_TARGET_LIB_UCLIBC
-	prompt "uClibc embedded C library"
-	boolean
-	select ADK_uclibc
-	depends on \
-		   !ADK_LINUX_AARCH64 && \
-		   !ADK_LINUX_M68K && \
-		   !ADK_LINUX_MICROBLAZE && \
-		   !ADK_LINUX_SPARC64 && \
-		   !ADK_LINUX_PPC64 && \
-		   !ADK_x32 && \
-		   !ADK_32
-	help
- 	 http://uclibc.org
-
-config ADK_TARGET_LIB_GLIBC
-	prompt "GNU C library"
-	boolean
-	select ADK_glibc
-	depends on \
-		ADK_LINUX_AARCH64 || \
-		ADK_LINUX_ARM || \
-		ADK_LINUX_M68K || \
-		ADK_LINUX_MICROBLAZE || \
-		ADK_LINUX_MIPS || \
-		ADK_LINUX_PPC || \
-		ADK_LINUX_PPC64 || \
-		ADK_LINUX_SH || \
-		ADK_LINUX_SPARC || \
-		ADK_LINUX_SPARC64 || \
-		ADK_LINUX_X86 || \
-		ADK_LINUX_X86_64
-	help
-	 http://www.gnu.org/libc
-
-config ADK_TARGET_LIB_MUSL
-	prompt "musl C library"
-	boolean
-	select ADK_musl
-	depends on !ADK_LINUX_MIPS64
-	depends on \
-		ADK_LINUX_ARM || \
-		ADK_LINUX_MICROBLAZE || \
-		ADK_LINUX_MIPS || \
-		ADK_LINUX_PPC || \
-		ADK_LINUX_SH || \
-		ADK_LINUX_X86 || \
-		ADK_LINUX_X86_64
-		
-	help
- 	 http://musl-libc.org
-
-endchoice
-
-config ADK_TARGET_SUFFIX
-	string
-	default "gnueabihf" if ADK_TARGET_LIB_GLIBC && ADK_eabihf
-	default "gnueabi" if ADK_TARGET_LIB_GLIBC && ADK_eabi
-	default "gnuabi64" if ADK_TARGET_LIB_GLIBC && ADK_n64
-	default "gnuabin32" if ADK_TARGET_LIB_GLIBC && ADK_n32
-	default "gnuabi32" if ADK_TARGET_LIB_GLIBC && ADK_o32
-	default "gnu32" if ADK_TARGET_LIB_GLIBC && ADK_32 && ADK_LINUX_64
-	default "gnux32" if ADK_TARGET_LIB_GLIBC && ADK_x32 && ADK_LINUX_64
-	default "gnu" if ADK_TARGET_LIB_GLIBC
-	default "uclibcgnueabihf" if ADK_TARGET_LIB_UCLIBC && ADK_eabihf
-	default "uclibcgnueabi" if ADK_TARGET_LIB_UCLIBC && ADK_eabi
-	default "uclibcabi64" if ADK_TARGET_LIB_UCLIBC && ADK_n64
-	default "uclibcabin32" if ADK_TARGET_LIB_UCLIBC && ADK_n32
-	default "uclibcabi32" if ADK_TARGET_LIB_UCLIBC && ADK_o32
-	default "uclibc32" if ADK_TARGET_LIB_UCLIBC && ADK_32 && ADK_LINUX_64
-	default "uclibcx32" if ADK_TARGET_LIB_UCLIBC && ADK_x32 && ADK_LINUX_64
-	default "uclibc" if ADK_TARGET_LIB_UCLIBC
-	default "muslgnueabihf" if ADK_TARGET_LIB_MUSL && ADK_eabihf
-	default "muslgnueabi" if ADK_TARGET_LIB_MUSL && ADK_eabi
-	default "muslabi64" if ADK_TARGET_LIB_MUSL && ADK_n64
-	default "muslabin32" if ADK_TARGET_LIB_MUSL && ADK_n32
-	default "muslabi32" if ADK_TARGET_LIB_MUSL && ADK_o32
-	default "musl32" if ADK_TARGET_LIB_MUSL && ADK_32 && ADK_LINUX_64
-	default "muslx32" if ADK_TARGET_LIB_MUSL && ADK_x32 && ADK_LINUX_64
-	default "musl" if ADK_TARGET_LIB_MUSL
-
-choice
-prompt "Target firmware type"
-depends on !ADK_CHOOSE_TARGET_SYSTEM && !ADK_CHOOSE_TARGET_ARCH && !ADK_TOOLCHAIN
-default ADK_TARGET_ROOTFS_ARCHIVE
-
-config ADK_TARGET_ROOTFS_INITRAMFS
-	boolean "initramfs filesystem"
-	depends on \
-		ADK_HARDWARE_QEMU || \
-		ADK_LINUX_M68K || \
-		ADK_LINUX_ARM || \
-		ADK_LINUX_MICROBLAZE || \
-		ADK_LINUX_MIPS || \
-		ADK_LINUX_PPC || \
-		ADK_LINUX_SPARC || \
-		ADK_LINUX_X86 || \
-		ADK_LINUX_X86_64 || \
-		ADK_LINUX_NATIVE
-	depends on !ADK_HARDWARE_VBOX
-	depends on !ADK_TARGET_SYSTEM_RASPBERRY_PI
-	depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB532
-	select ADK_KERNEL_BLK_DEV_INITRD
-	help
-	  create an read-only initramfs system.
-
-config ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK
-	boolean "initramfs filesystem included into kernel image"
-	select ADK_LINUX_INITRAMFS_BUILTIN
-	depends on \
-		ADK_HARDWARE_QEMU || \
-		ADK_LINUX_AARCH64 || \
-		ADK_LINUX_ARM || \
-		ADK_LINUX_M68K || \
-		ADK_LINUX_MICROBLAZE || \
-		ADK_LINUX_MIPS || \
-		ADK_LINUX_PPC || \
-		ADK_LINUX_SPARC || \
-		ADK_LINUX_X86 || \
-		ADK_LINUX_X86_64
-	depends on !ADK_HARDWARE_VBOX
-	depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB532
-	depends on !ADK_TARGET_SYSTEM_ARANYM_M68K
-	help
-	  create an read-only initramfs system.
-
-config ADK_TARGET_ROOTFS_SQUASHFS
-	boolean "compressed read-only root filesystem for NOR flash"
-	select ADK_KERNEL_SQUASHFS
-	select ADK_HOST_NEED_SQUASHFS
-	select ADK_HOST_NEED_QEMU if ADK_HARDWARE_QEMU
-	select ADK_TARGET_QEMU_WITH_BLOCK if ADK_HARDWARE_QEMU
-	depends on ADK_TARGET_WITH_MTD
-	help
-	  highly compressed read-only filesystem for MTD flash systems.
-
-config ADK_TARGET_ROOTFS_JFFS2
-	boolean "compressed read-write root filesystem for NOR flash"
-	select ADK_KERNEL_JFFS2_FS
-	select ADK_HOST_NEED_MTD_UTILS
-	select ADK_TARGET_QEMU_WITH_BLOCK if ADK_HARDWARE_QEMU
-	depends on ADK_TARGET_WITH_MTD
-	help
-	  compressed read-write filesystem for MTD NOR flash systems.
-
-config ADK_TARGET_ROOTFS_YAFFS
-	boolean "YAFFS2 root filesystem for NAND flash"
-	select ADK_KERNEL_MISC_FILESYSTEMS
-	select ADK_KERNEL_YAFFS_FS
-	select ADK_KERNEL_YAFFS_YAFFS2
-	select ADK_KERNEL_YAFFS_AUTO_YAFFS2
-	depends on ADK_TARGET_WITH_NAND
-	help
-	  Root filesystem on NAND flash with YAFFS2.
-
-config ADK_TARGET_ROOTFS_NFSROOT
-	boolean "NFS root"
-	select ADK_KERNEL_NETWORK_FILESYSTEMS
-	select ADK_KERNEL_SUNRPC
-	select ADK_KERNEL_NFS_FS
-	select ADK_KERNEL_NFS_V3
-	select ADK_KERNEL_ROOT_NFS
-	select ADK_KERNEL_NFS_COMMON
-	select ADK_KERNEL_IP_PNP
-	select ADK_KERNEL_IP_PNP_DHCP
-	select ADK_PACKAGE_ADKINSTALL
-	depends on !ADK_HARDWARE_QEMU && !ADK_HARDWARE_VBOX && !ADK_TARGET_SYSTEM_ARANYM_M68K
-	depends on !ADK_TARGET_SYSTEM_ARM_FM
-	help
-	  Root filesystem mounted via NFS and DHCP.
-
-config ADK_TARGET_ROOTFS_USB
-	boolean "boot from USB stick"
-	select ADK_KERNEL_NLS
-	select ADK_KERNEL_SCSI
-	select ADK_KERNEL_BLK_DEV_SD
-	select ADK_KERNEL_USB
-	select ADK_KERNEL_USB_EHCI_HCD
-	select ADK_KERNEL_USB_OHCI_HCD
-	select ADK_KERNEL_USB_UHCI_HCD
-	select ADK_KERNEL_USB_STORAGE
-	select ADK_KERNEL_EXT2_FS
-	select ADK_PACKAGE_ADKINSTALL
-	depends on ADK_TARGET_WITH_USB_BOOT
-	help
-	  Boot system from USB stick.
-
-config ADK_TARGET_ROOTFS_ISO
-	boolean "create ISO image"
-	select ADK_KERNEL_ISO9660_FS
-	select ADK_KERNEL_JOLIET
-	select ADK_KERNEL_SCSI
-	select ADK_KERNEL_BLK_DEV_SR
-	select ADK_HOST_NEED_CDRTOOLS
-	select ADK_HOST_NEED_SYSLINUX
-	select ADK_TARGET_QEMU_WITH_BLOCK if ADK_HARDWARE_QEMU
-	depends on ADK_HOST_LINUX
-	depends on ADK_LINUX_X86
-	help
-	  Use this option to create a bootable ISO image.
-
-config ADK_TARGET_ROOTFS_INITRAMFS_ARCHIVE
-	boolean "archive usable for initramfs creation"
-	depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB532
-	depends on !ADK_TARGET_SYSTEM_ARM_FM
-	depends on !ADK_TARGET_SYSTEM_ARANYM_M68K
-	help
-	  Use this option if your planning to create a initramfs,
-	  useful for adk-test-framework.
-
-config ADK_TARGET_ROOTFS_ARCHIVE
-	boolean "archive usable for different filesystems"
-	select ADK_HOST_NEED_GENEXT2FS if ADK_HARDWARE_QEMU
-	select ADK_KERNEL_EXT2_FS if ADK_HARDWARE_QEMU
-	select ADK_TARGET_QEMU_WITH_BLOCK if ADK_HARDWARE_QEMU
-	depends on !ADK_TARGET_SYSTEM_ARANYM_M68K
-	depends on !ADK_TARGET_SYSTEM_QEMU_MICROBLAZE
-	help
-	  Use this option if your root filesystem is ext2/ext3/ext4/xfs.
-
-endchoice
-
-config ADK_TARGET_ROOT_EXT4_RASPBERRY_PI
-        boolean
-	depends on ADK_TARGET_SYSTEM_RASPBERRY_PI && ADK_TARGET_ROOTFS_ARCHIVE
-        select ADK_KERNEL_EXT4_FS
-	default y
-        help
-          Compile EXT4 filesystem into kernel and use it as root filesystem.
-
 choice
-prompt "Root filesystem type"
-depends on ADK_TARGET_ROOTFS_ARCHIVE && !ADK_TARGET_SYSTEM_RASPBERRY_PI && !ADK_HARDWARE_QEMU
-default ADK_TARGET_ROOT_EXT4
-
-config ADK_TARGET_ROOT_EXT4
-	boolean
-	prompt "EXT4 filesystem"
-	select ADK_KERNEL_EXT4_FS
-	help
-	  Compile EXT4 filesystem into kernel and use it as root filesystem.
-
-config ADK_TARGET_ROOT_XFS
-	boolean
-	prompt "XFS filesystem"
-	select ADK_KERNEL_XFS_FS
-	help
-	  Compile XFS filesystem into kernel and use it as root filesystem.
-
-config ADK_TARGET_ROOT_EXT2
-	boolean
-	prompt "EXT2 filesystem"
-	select ADK_KERNEL_EXT2_FS
-	help
-	  Compile EXT2 filesystem into kernel and use it as root filesystem.
+prompt "Toolchain options"
+depends on ADK_TOOLCHAIN
+config ADK_TOOLCHAIN_ONLY
+	boolean "Only build toolchain and selected packages"
 
-config ADK_TARGET_ROOT_EXT3
-	boolean
-	prompt "EXT3 filesystem"
-	select ADK_KERNEL_EXT3_FS
-	help
-	  Compile EXT3 filesystem into kernel and use it as root filesystem.
+config ADK_TOOLCHAIN_ARCHIVE
+	boolean "Build a complete system usable f.e. via chroot"
 
 endchoice
 
-config ADK_TARGET_ROOTFS
-	string
-	default "xfs" if ADK_TARGET_ROOT_XFS
-	default "ext2" if ADK_TARGET_ROOT_EXT2
-	default "ext3" if ADK_TARGET_ROOT_EXT3
-	default "ext4" if ADK_TARGET_ROOT_EXT4
-	help
-
-config ADK_PACKAGE_SUFFIX
-	string
-	default "ipk" if ADK_TARGET_PACKAGE_IPKG
-	default "tar.xz" if ADK_TARGET_PACKAGE_TXZ
-	help
-
-choice
-prompt "Target package format"
-default ADK_TARGET_PACKAGE_TXZ if ADK_PKG_TEST
-default ADK_TARGET_PACKAGE_IPKG
-depends on !ADK_CHOOSE_TARGET_SYSTEM && !ADK_CHOOSE_TARGET_ARCH
-
-config ADK_TARGET_PACKAGE_IPKG
-	boolean
-	prompt "ipkg"
-	select BUSYBOX_IPKG
-	help
-	  Create ipkg packages and use ipkg package management on the target.
-
-config ADK_TARGET_PACKAGE_TXZ
-	boolean
-	prompt "xz compressed tar archive"
-	help
-	  Create compressed tar archives of packages.
-	  Pre- and post install scripts will be executed in the target
-	  directory. There will be no package manager installed onto the target.
-	  
-endchoice
 source "target/config/Config.in.tools"

+ 5 - 0
target/config/Config.in.abi

@@ -0,0 +1,5 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+source target/config/Config.in.abi.choice
+source target/config/Config.in.abi.default

+ 36 - 0
target/config/Config.in.abi.choice

@@ -0,0 +1,36 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+choice
+prompt "Target ABI"
+depends on !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_SYSTEM
+depends on ADK_LINUX_MIPS64
+
+config ADK_TARGET_ABI_N32
+	boolean "N32 ABI"
+	select ADK_n32
+
+config ADK_TARGET_ABI_N64
+	boolean "N64 ABI"
+	select ADK_n64
+
+config ADK_TARGET_ABI_O32
+	boolean "O32 ABI"
+	select ADK_o32
+
+endchoice
+
+choice
+prompt "Target ABI"
+depends on !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_SYSTEM
+depends on ADK_LINUX_X86_64
+
+config ADK_TARGET_ABI_64
+	boolean "64 Bit ABI"
+	select ADK_64
+
+config ADK_TARGET_ABI_X32
+	boolean "x32 ABI"
+	select ADK_x32
+
+endchoice

+ 64 - 0
target/config/Config.in.abi.default

@@ -0,0 +1,64 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+config ADK_o32
+	boolean
+
+config ADK_n32
+	boolean
+
+config ADK_n64
+	boolean
+
+config ADK_32
+	boolean
+
+config ADK_64
+	boolean
+
+config ADK_x32
+	boolean
+
+config ADK_eabi
+	boolean
+
+config ADK_eabihf
+	boolean
+
+config ADK_TARGET_ABI
+	string
+	default "n32" if ADK_n32
+	default "n64" if ADK_n64
+	default "32" if ADK_32
+	default "x32" if ADK_x32
+	default "eabi" if ADK_eabi
+	default "eabihf" if ADK_eabihf
+
+config ADK_TARGET_MIPS_ABI
+	depends on ADK_LINUX_MIPS64
+	string
+	default "32" if ADK_o32
+	default "n32" if ADK_n32
+	default "64" if ADK_n64
+
+config ADK_TARGET_LIBC_PATH
+	string
+	default "lib" if ADK_32
+	default "lib32" if ADK_n32
+	default "libx32" if ADK_x32
+	default "lib64" if ADK_n64 \
+				|| ADK_64 \
+				|| ADK_LINUX_SPARC64 \
+				|| ADK_LINUX_PPC64 \
+				|| ADK_LINUX_X86_64
+	default "lib"
+
+config ADK_TARGET_ABI_CFLAGS
+	string
+	default "-mabi=32" if ADK_o32
+	default "-mabi=n32" if ADK_n32
+	default "-mabi=64" if ADK_n64
+	default "-m32" if ADK_32
+	default "-mx32" if ADK_x32
+	default "-m64" if ADK_64
+

+ 3 - 42
target/config/Config.in.adk

@@ -1,10 +1,7 @@
-menu "Global settings"
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
 
-config ADK_VENDOR
-	string "vendor name"
-	default "openadk"
-	help
-	  Vendor string is used for toolchain.
+menu "Global ADK settings"
 
 config ADK_HOST
 	string "webserver for packages and distfiles"
@@ -19,41 +16,6 @@ config ADK_DL_DIR
 	  Configure the download directory for all source packages.
 	  Use an absolute path.
 
-config ADK_TARGET_CFLAGS_OPT
-	string "optimization flags for compiler"
-	default "-Os -pipe"
-	help
-	  Compilation is only verfied with optimization for code size (Os).
-	  Other stuff (O2) might break. Will not be used when ADK_DEBUG is on.
-
-config ADK_DEBUG
-	bool "Compile applications with debug support by default"
-	default n
-	help
-	  All packages and libc will be compiled and packaged with debug information.
-	  Mostly useful for NFS root or big USB/CF or hard disk setups.
-
-config ADK_DEBUG_OPTS
-	bool "use optimization cflags"
-	depends on ADK_DEBUG
-	default n
-	help
-	  All packages and libc will be compiled with debug information and optimization flags on.
-
-config ADK_DEBUG_STRIP
-	bool "strip target binaries/libraries for gdbserver usage"
-	depends on ADK_DEBUG
-	default n
-	help
-	  All packages and libc will be compiled with debug information, but stripped for the target.
-
-config ADK_STATIC
-	bool "Link applications statically by default"
-	default n
-	select BUSYBOX_STATIC
-	help
-	  Useful for toolchain only target devices.
-
 config ADK_DISABLE_HONOUR_CFLAGS
 	bool "Disable honour CFLAGS checks globally"
 	default n
@@ -133,5 +95,4 @@ config ADK_HOST_CYGWIN
 	boolean
 
 endchoice
-
 endmenu

+ 10 - 4
target/config/Config.in.arch.choice

@@ -34,29 +34,35 @@ config ADK_LINUX_MIPS
 	help
 	  Support for MIPS systems.
 
+config ADK_LINUX_MIPS64
+	bool "mips64 system"
+	select ADK_mips64
+	help
+	  Support for MIPS64 systems.
+
 config ADK_LINUX_PPC
 	bool "ppc system"
 	select ADK_ppc
 	help
-	  Support for powerpc systems.
+	  Support for PPC systems.
 
 config ADK_LINUX_PPC64
 	bool "ppc64 system"
 	select ADK_ppc64
 	help
-	  Support for powerpc64 systems.
+	  Support for PPC64 systems.
 
 config ADK_LINUX_SPARC
 	bool "sparc system"
 	select ADK_sparc
 	help
-	  Support for sparc systems.
+	  Support for SPARC systems.
 
 config ADK_LINUX_SPARC64
 	bool "sparc64 system"
 	select ADK_sparc64
 	help
-	  Support for sparc64 systems.
+	  Support for SPARC64 systems.
 
 config ADK_LINUX_SH
 	bool "superh system"

+ 7 - 0
target/config/Config.in.arch.default

@@ -1,3 +1,6 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
 # target architectures
 config ADK_aarch64
 	bool
@@ -14,6 +17,9 @@ config ADK_microblaze
 config ADK_mips
 	bool
 
+config ADK_mips64
+	bool
+
 config ADK_ppc
 	bool
 
@@ -42,6 +48,7 @@ config ADK_TARGET_ARCH
 	default "m68k"  if ADK_m68k
 	default "microblaze"  if ADK_microblaze
 	default "mips"  if ADK_mips
+	default "mips64"  if ADK_mips64
 	default "ppc"  if ADK_ppc
 	default "ppc64"  if ADK_ppc64
 	default "sparc"  if ADK_sparc

+ 5 - 0
target/config/Config.in.arm

@@ -0,0 +1,5 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+source target/config/Config.in.arm.choice
+source target/config/Config.in.arm.default

+ 34 - 0
target/config/Config.in.arm.choice

@@ -0,0 +1,34 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+choice
+prompt "Cubox-i model"
+depends on ADK_TARGET_SYSTEM_CUBOX_I
+
+config ADK_TARGET_CUBOX_I4PRO
+	boolean "Solidrun Cubox-i4Pro"
+
+config ADK_TARGET_CUBOX_I2ULTRA
+	boolean "Solidrun Cubox-i2Ultra"
+
+config ADK_TARGET_CUBOX_I2
+	boolean "Solidrun Cubox-i2"
+
+config ADK_TARGET_CUBOX_I1
+	boolean "Solidrun Cubox-i1"
+
+endchoice
+
+choice ADK_TARGET_ARM_FLOAT
+prompt "Target float type"
+depends on ADK_TARGET_CPU_WITH_FPU || ADK_TARGET_SYSTEM_QEMU_ARM
+
+config ADK_TARGET_ARM_HARD_FLOAT
+        boolean "Use hard-float for system with FPU"
+        select ADK_hard_float
+
+config ADK_TARGET_ARM_SOFT_FLOAT
+        boolean "Use soft-float for system without FPU"
+        select ADK_soft_float
+
+endchoice

+ 25 - 0
target/config/Config.in.arm.default

@@ -0,0 +1,25 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+config ADK_soft_float
+	boolean
+
+config ADK_hard_float
+	boolean
+
+config ADK_fpu_neon
+	boolean
+
+config ADK_fpu_vfp
+	boolean
+
+config ADK_TARGET_FLOAT
+	string
+	default "hard" if ADK_hard_float
+	default "soft" if ADK_soft_float
+
+config ADK_TARGET_FPU
+	string
+	default "vfp" if ADK_fpu_vfp
+	default "neon" if ADK_fpu_neon
+

+ 129 - 0
target/config/Config.in.cpu

@@ -0,0 +1,129 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+config ADK_TARGET_CPU_WITH_FPU
+	boolean
+
+config ADK_TARGET_CPU_WITH_VT
+	boolean
+
+config ADK_TARGET_CPU_WITH_MTRR
+	boolean
+
+config ADK_TARGET_CPU_WITH_MMX
+	boolean
+
+config ADK_TARGET_CPU_WITH_MMXEXT
+	boolean
+
+config ADK_TARGET_CPU_WITH_SSE
+	boolean
+
+config ADK_TARGET_CPU_WITH_SSE2
+	boolean
+
+config ADK_TARGET_CPU_WITH_SSE3
+	boolean
+
+config ADK_TARGET_CPU_WITH_SSSE3
+	boolean
+
+config ADK_TARGET_CPU_WITH_IWMMXT
+	boolean
+
+config ADK_TARGET_CPU_WITH_HT
+	boolean
+
+config ADK_TARGET_CPU_WITH_3DNOW
+	boolean
+
+config ADK_TARGET_CPU_WITH_3DNOWEXT
+	boolean
+
+config ADK_CPU_SH4
+	boolean
+
+config ADK_CPU_SPARC_V8
+	boolean
+
+config ADK_CPU_SPARC_V9
+	boolean
+
+config ADK_CPU_X86
+	boolean
+
+config ADK_CPU_X86_64
+	boolean
+
+config ADK_CPU_GEODE
+	boolean
+
+config ADK_CPU_PPC
+	boolean
+
+config ADK_CPU_PPC64
+	boolean
+
+config ADK_CPU_PENTIUM_M
+	boolean
+
+config ADK_CPU_AMDFAM10
+	select ADK_TARGET_CPU_WITH_VT
+	boolean
+
+config ADK_CPU_LOONGSON2F
+	boolean
+
+config ADK_CPU_XSCALE
+	boolean
+
+config ADK_CPU_M68K
+	boolean
+
+config ADK_CPU_MIPS32
+	boolean
+
+config ADK_CPU_MIPS64
+	boolean
+
+config ADK_CPU_MICROBLAZE
+	boolean
+
+config ADK_CPU_ARM926EJ_S
+	boolean
+
+config ADK_CPU_ARM1176JZF_S
+	boolean
+
+config ADK_CPU_CORTEX_A9
+	boolean
+
+config ADK_CPU_ARMV8
+	boolean
+
+config ADK_TARGET_CPU_ARCH
+	string
+	default "x86_64" if ADK_CPU_X86_64
+	default "x86_64" if ADK_CPU_AMDFAM10
+	default "i486" if ADK_CPU_I486
+	default "i586" if ADK_CPU_I586
+	default "i686" if ADK_CPU_I686
+	default "i586" if ADK_CPU_GEODE
+	default "i686" if ADK_CPU_PENTIUM_M
+	default "i686" if ADK_CPU_ATOM
+	default "m68k" if ADK_LINUX_M68K
+	default "microblaze" if ADK_LINUX_MICROBLAZE && ADK_big
+	default "microblazeel" if ADK_LINUX_MICROBLAZE && ADK_little
+	default "mips64" if ADK_LINUX_MIPS64 && ADK_big
+	default "mips64el" if ADK_LINUX_MIPS64 && ADK_little
+	default "mips" if ADK_LINUX_MIPS && ADK_big
+	default "mipsel" if ADK_LINUX_MIPS && ADK_little
+	default "aarch64" if ADK_LINUX_AARCH64 && ADK_little
+	default "arm" if ADK_LINUX_ARM && ADK_little
+	default "sparc" if ADK_LINUX_SPARC
+	default "sparc64" if ADK_LINUX_SPARC64
+	default "sh4" if ADK_LINUX_SH && ADK_little
+	default "sh4eb" if ADK_LINUX_SH && ADK_big
+	default "ppc" if ADK_CPU_PPC
+	default "ppc64" if ADK_CPU_PPC64
+

+ 5 - 0
target/config/Config.in.endian

@@ -0,0 +1,5 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+source target/config/Config.in.endian.choice
+source target/config/Config.in.endian.default

+ 17 - 0
target/config/Config.in.endian.choice

@@ -0,0 +1,17 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+choice ADK_TARGET_ENDIAN_MODE
+prompt "Target Endianess"
+depends on !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_SYSTEM
+depends on ADK_LINUX_SH || ADK_LINUX_MIPS || ADK_LINUX_MICROBLAZE || ADK_LINUX_MIPS64
+
+config ADK_TARGET_LITTLE_ENDIAN
+	boolean "Little endian"
+	select ADK_little
+
+config ADK_TARGET_BIG_ENDIAN
+	boolean "Big endian"
+	select ADK_big
+
+endchoice

+ 18 - 0
target/config/Config.in.endian.default

@@ -0,0 +1,18 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+config ADK_big
+	boolean
+
+config ADK_little
+	boolean
+
+config ADK_TARGET_ENDIAN
+	string
+	default "little" if ADK_little
+	default "big" if ADK_big
+
+config ADK_JFFS2_OPTS
+	string
+	default "-l" if ADK_little
+	default "-b" if ADK_big

+ 3 - 0
target/config/Config.in.hardware

@@ -1,3 +1,6 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
 # hardware features, do not use for qemu
 config ADK_TARGET_WITH_CPU_FREQ
 	boolean

+ 57 - 0
target/config/Config.in.kernel

@@ -0,0 +1,57 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+config ADK_TARGET_KERNEL_VMLINUZ
+	boolean
+
+config ADK_TARGET_KERNEL_ZIMAGE
+	boolean
+
+config ADK_TARGET_KERNEL_LINUXBIN
+	boolean
+
+config ADK_TARGET_KERNEL_IMAGE
+	boolean
+
+config ADK_TARGET_KERNEL_UIMAGE
+	boolean
+
+config ADK_TARGET_KERNEL_BZIMAGE
+	boolean
+
+config ADK_TARGET_KERNEL
+	string
+	default "uImage" if ADK_TARGET_KERNEL_UIMAGE
+	default "zImage" if ADK_TARGET_KERNEL_ZIMAGE
+	default "Image" if ADK_TARGET_KERNEL_IMAGE
+	default "linux.bin" if ADK_TARGET_KERNEL_LINUXBIN
+	default "vmlinuz" if ADK_TARGET_KERNEL_VMLINUZ
+	default "bzImage" if ADK_TARGET_KERNEL_BZIMAGE
+	default "vmlinux"
+
+config ADK_TARGET_KERNEL_MINICONFIG
+	string
+	default "arm-fm" if ADK_TARGET_SYSTEM_ARM_FM
+	default "qemu-microblaze-s3adsp1800" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
+	default "qemu-microblaze-ml605" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605
+	default "qemu-arm-versatilepb" if ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB
+	default "qemu-arm-vexpress-a9" if ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9
+	default "qemu-arm-spitz" if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
+	default "qemu-mips" if ADK_TARGET_SYSTEM_QEMU_MIPS
+	default "qemu-mips64" if ADK_TARGET_SYSTEM_QEMU_MIPS64
+	default "qemu-ppc" if ADK_TARGET_SYSTEM_QEMU_PPC
+	default "qemu-ppc64" if ADK_TARGET_SYSTEM_QEMU_PPC64
+	default "qemu-sh" if ADK_TARGET_SYSTEM_QEMU_SH4
+	default "qemu-sparc" if ADK_TARGET_SYSTEM_QEMU_SPARC
+	default "qemu-sparc64" if ADK_TARGET_SYSTEM_QEMU_SPARC64
+	default "qemu-x86" if ADK_TARGET_SYSTEM_QEMU_X86
+	default "qemu-x86_64" if ADK_TARGET_SYSTEM_QEMU_X86_64
+	default "aranym-m68k" if ADK_TARGET_SYSTEM_ARANYM_M68K
+	default "ibm-x40" if ADK_TARGET_SYSTEM_IBM_X40
+	default "cubox-i" if ADK_TARGET_SYSTEM_CUBOX_I
+	default "raspberry-pi" if ADK_TARGET_SYSTEM_RASPBERRY_PI
+	default "sharp-zaurus" if ADK_TARGET_SYSTEM_SHARP_ZAURUS
+	default "lemote-yeelong" if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
+	default "mikrotik-rb532" if ADK_TARGET_SYSTEM_MIKROTIK_RB532
+	default "generic-pc" if ADK_TARGET_SYSTEM_GENERIC_PC
+

+ 6 - 0
target/config/Config.in.kernelversion

@@ -0,0 +1,6 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+source target/config/Config.in.kernelversion.choice
+source target/config/Config.in.kernelversion.default
+

+ 44 - 0
target/config/Config.in.kernelversion.choice

@@ -0,0 +1,44 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+choice
+prompt "Kernel Version"
+depends on !ADK_TOOLCHAIN_ONLY && !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_SYSTEM && ADK_TARGET_KERNEL_CUSTOMISING
+default ADK_KERNEL_VERSION_3_14_4
+
+config ADK_KERNEL_VERSION_3_15_RC5
+	prompt "3.15-rc5"
+	boolean
+
+config ADK_KERNEL_VERSION_3_14_4
+	prompt "3.14.4"
+	depends on !ADK_TARGET_SYSTEM_CUBOX_I
+	boolean
+
+config ADK_KERNEL_VERSION_3_13_11
+	prompt "3.13.11"
+	depends on !ADK_TARGET_SYSTEM_CUBOX_I
+	boolean
+
+config ADK_KERNEL_VERSION_3_12_20
+	prompt "3.12.20"
+	depends on !ADK_TARGET_SYSTEM_CUBOX_I
+	boolean
+
+config ADK_KERNEL_VERSION_3_10_40
+	prompt "3.10.40"
+	depends on !ADK_TARGET_SYSTEM_CUBOX_I
+	boolean
+
+config ADK_KERNEL_VERSION_3_10_30
+	prompt "3.10.30"
+	depends on ADK_TARGET_SYSTEM_CUBOX_I
+	boolean
+
+config ADK_KERNEL_VERSION_3_4_90
+	prompt "3.4.90"
+	depends on !ADK_TARGET_SYSTEM_RASPBERRY_PI
+	depends on !ADK_TARGET_SYSTEM_CUBOX_I
+	boolean
+
+endchoice

+ 15 - 0
target/config/Config.in.kernelversion.default

@@ -0,0 +1,15 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+config ADK_KERNEL_VERSION
+	string
+	default "3.15-rc5" if ADK_KERNEL_VERSION_3_15_RC5
+	default "3.14.4" if ADK_KERNEL_VERSION_3_14_4
+	default "3.13.11" if ADK_KERNEL_VERSION_3_13_11
+	default "3.12.20" if ADK_KERNEL_VERSION_3_12_20
+	default "3.11.10" if ADK_KERNEL_VERSION_3_11_10
+	default "3.10.40" if ADK_KERNEL_VERSION_3_10_40
+	default "3.10.30" if ADK_KERNEL_VERSION_3_10_30
+	default "3.4.90" if ADK_KERNEL_VERSION_3_4_90
+	help
+

+ 5 - 0
target/config/Config.in.libc

@@ -0,0 +1,5 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+source target/config/Config.in.libc.choice
+source target/config/Config.in.libc.default

+ 44 - 0
target/config/Config.in.libc.choice

@@ -0,0 +1,44 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+choice
+prompt "Target C library"
+depends on !ADK_CHOOSE_TARGET_SYSTEM && !ADK_CHOOSE_TARGET_ARCH
+config ADK_TARGET_LIB_UCLIBC
+	prompt "uClibc embedded C library"
+	boolean
+	select ADK_uclibc
+	depends on \
+		   !ADK_LINUX_AARCH64 && \
+		   !ADK_LINUX_M68K && \
+		   !ADK_LINUX_MICROBLAZE && \
+		   !ADK_LINUX_SPARC64 && \
+		   !ADK_LINUX_PPC64 && \
+		   !ADK_x32
+	help
+ 	 http://uclibc.org
+
+config ADK_TARGET_LIB_GLIBC
+	prompt "GNU C library"
+	boolean
+	select ADK_glibc
+	help
+	 http://www.gnu.org/libc
+
+config ADK_TARGET_LIB_MUSL
+	prompt "musl C library"
+	boolean
+	select ADK_musl
+	depends on !ADK_LINUX_MIPS64
+	depends on \
+		ADK_LINUX_ARM || \
+		ADK_LINUX_MICROBLAZE || \
+		ADK_LINUX_MIPS || \
+		ADK_LINUX_PPC || \
+		ADK_LINUX_SH || \
+		ADK_LINUX_X86 || \
+		ADK_LINUX_X86_64
+	help
+ 	 http://musl-libc.org
+
+endchoice

+ 44 - 0
target/config/Config.in.libc.default

@@ -0,0 +1,44 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+config ADK_uclibc
+	boolean
+
+config ADK_glibc
+	boolean
+
+config ADK_musl
+	boolean
+
+config ADK_TARGET_LIBC
+	string
+	default "uclibc"  if ADK_uclibc
+	default "glibc"  if ADK_glibc
+	default "musl"  if ADK_musl
+
+config ADK_TARGET_SUFFIX
+	string
+	default "gnueabihf" if ADK_TARGET_LIB_GLIBC && ADK_eabihf
+	default "gnueabi" if ADK_TARGET_LIB_GLIBC && ADK_eabi
+	default "gnuabi64" if ADK_TARGET_LIB_GLIBC && ADK_n64
+	default "gnuabin32" if ADK_TARGET_LIB_GLIBC && ADK_n32
+	default "gnuabi32" if ADK_TARGET_LIB_GLIBC && ADK_o32
+	default "gnu32" if ADK_TARGET_LIB_GLIBC && ADK_32 && ADK_LINUX_64
+	default "gnux32" if ADK_TARGET_LIB_GLIBC && ADK_x32 && ADK_LINUX_64
+	default "gnu" if ADK_TARGET_LIB_GLIBC
+	default "uclibcgnueabihf" if ADK_TARGET_LIB_UCLIBC && ADK_eabihf
+	default "uclibcgnueabi" if ADK_TARGET_LIB_UCLIBC && ADK_eabi
+	default "uclibcabi64" if ADK_TARGET_LIB_UCLIBC && ADK_n64
+	default "uclibcabin32" if ADK_TARGET_LIB_UCLIBC && ADK_n32
+	default "uclibcabi32" if ADK_TARGET_LIB_UCLIBC && ADK_o32
+	default "uclibc32" if ADK_TARGET_LIB_UCLIBC && ADK_32 && ADK_LINUX_64
+	default "uclibcx32" if ADK_TARGET_LIB_UCLIBC && ADK_x32 && ADK_LINUX_64
+	default "uclibc" if ADK_TARGET_LIB_UCLIBC
+	default "muslgnueabihf" if ADK_TARGET_LIB_MUSL && ADK_eabihf
+	default "muslgnueabi" if ADK_TARGET_LIB_MUSL && ADK_eabi
+	default "muslabi64" if ADK_TARGET_LIB_MUSL && ADK_n64
+	default "muslabin32" if ADK_TARGET_LIB_MUSL && ADK_n32
+	default "muslabi32" if ADK_TARGET_LIB_MUSL && ADK_o32
+	default "musl32" if ADK_TARGET_LIB_MUSL && ADK_32 && ADK_LINUX_64
+	default "muslx32" if ADK_TARGET_LIB_MUSL && ADK_x32 && ADK_LINUX_64
+	default "musl" if ADK_TARGET_LIB_MUSL

+ 7 - 95
target/config/Config.in.qemu

@@ -1,38 +1,21 @@
-config ADK_QEMU_ARGS
-	string
-	default "-nographic" if ADK_TARGET_QEMU_WITHOUT_GRAPHIC
-
-menu "Qemu configuration"
-depends on ADK_HARDWARE_QEMU
-
-choice 
-prompt "Use a Bootloader"
-depends on ADK_TARGET_SYSTEM_QEMU_X86_64 || ADK_LINUX_X86
-
-config ADK_TARGET_QEMU_WITHOUT_BOOTLOADER
-	boolean "do not use bootloader"
-
-config ADK_TARGET_QEMU_WITH_BOOTLOADER
-	boolean "use bootloader"
-	select ADK_PACKAGE_GRUB if ADK_TARGET_SYSTEM_QEMU_X86_64 || ADK_LINUX_X86
-
-endchoice
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
 
 choice
 prompt "Qemu MICROBLAZE Emulation"
-depends on ADK_TARGET_SYSTEM_QEMU_MICROBLAZE || ADK_TARGET_SYSTEM_QEMU_MICROBLAZEEL
+depends on ADK_TARGET_SYSTEM_QEMU_MICROBLAZE
 
 config ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
 	boolean "Xilinx Spartan S3ADSP1800"
 
 config ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605
-	boolean "Xilinx ml605"
+	boolean "Xilinx ML605"
 
 endchoice
 
 choice
 prompt "Qemu ARM Emulation"
-depends on ADK_TARGET_SYSTEM_QEMU_ARM || ADK_TARGET_SYSTEM_QEMU_ARMHF
+depends on ADK_TARGET_SYSTEM_QEMU_ARM
 
 config ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9
 	boolean "ARM Ltd. Versatile Express for Cortex-A9"
@@ -43,7 +26,7 @@ config ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB
 	select ADK_soft_float
 	select ADK_eabi
 	select ADK_CPU_ARM926EJ_S
-	depends on ADK_TARGET_SYSTEM_QEMU_ARM
+	depends on ADK_TARGET_ARM_SOFT_FLOAT
 
 config ADK_TARGET_QEMU_ARM_MODEL_SPITZ
 	boolean "Xscale PXA270 Spitz PDA"
@@ -51,77 +34,6 @@ config ADK_TARGET_QEMU_ARM_MODEL_SPITZ
 	select ADK_eabi
 	select ADK_CPU_XSCALE
 	select ADK_TARGET_QEMU_WITH_GRAPHIC
-	depends on ADK_TARGET_SYSTEM_QEMU_ARM
+	depends on ADK_TARGET_ARM_SOFT_FLOAT
 
 endchoice
-
-choice
-prompt "Qemu Emulation with permanent storage device (disk/flash)"
-depends on ADK_HARDWARE_QEMU
-default ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_ROOTFS_ARCHIVE
-default ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_ROOTFS_SQUASHFS
-default ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_ROOTFS_JFFS2
-
-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 || ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
-	select ADK_KERNEL_ATA_PIIX if ADK_LINUX_MIPS || ADK_LINUX_X86 || ADK_TARGET_SYSTEM_QEMU_X86_64
-	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
-default ADK_TARGET_QEMU_WITH_GRAPHIC if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
-
-config ADK_TARGET_QEMU_WITHOUT_GRAPHIC
-	boolean "disabled"
-
-config ADK_TARGET_QEMU_WITH_GRAPHIC
-	boolean "enabled"
-	select ADK_KERNEL_VT
-	select ADK_KERNEL_VT_CONSOLE
-	select ADK_KERNEL_FONTS
-	select ADK_KERNEL_FONT_8x16
-	select ADK_KERNEL_FB
-	select ADK_KERNEL_FRAMEBUFFER_CONSOLE
-	select ADK_KERNEL_FB_SM501 if ADK_LINUX_SH
-	select ADK_KERNEL_FB_CIRRUS if ADK_LINUX_X86 || ADK_TARGET_SYSTEM_QEMU_X86_64
-	select ADK_KERNEL_FB_PXA if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
-	select ADK_KERNEL_INPUT
-	select ADK_KERNEL_INPUT_KEYBOARD
-	select ADK_KERNEL_KEYBOARD_ATKBD if ADK_LINUX_X86 || ADK_TARGET_SYSTEM_QEMU_X86_64
-	select ADK_KERNEL_USB_HID if ADK_LINUX_SH
-	select ADK_KERNEL_USB_OHCI_HCD_PLATFORM if ADK_LINUX_SH
-
-endchoice
-
-choice
-prompt "Qemu Emulation using VirtIO drivers"
-depends on ADK_TARGET_SYSTEM_QEMU_SPARC64 || \
-		ADK_TARGET_SYSTEM_QEMU_I686 || \
-		ADK_TARGET_SYSTEM_QEMU_X86_64
-default ADK_TARGET_QEMU_WITH_VIRTIO if ADK_TARGET_SYSTEM_QEMU_SPARC64
-
-config ADK_TARGET_QEMU_WITHOUT_VIRTIO
-	boolean "disabled"
-
-config ADK_TARGET_QEMU_WITH_VIRTIO
-	boolean "enabled"
-	select ADK_KERNEL_BLK_DEV
-	select ADK_KERNEL_VIRTIO
-	select ADK_KERNEL_VIRTIO_PCI
-	select ADK_KERNEL_VIRTIO_NET
-	select ADK_KERNEL_VIRTIO_BLK
-
-endchoice
-
-endmenu

+ 91 - 0
target/config/Config.in.qemuopts

@@ -0,0 +1,91 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+config ADK_QEMU_ARGS
+	string
+	default "-nographic" if ADK_TARGET_QEMU_WITHOUT_GRAPHIC
+
+menu "Qemu configuration"
+depends on ADK_TARGET_QEMU
+
+choice 
+prompt "Use a Bootloader"
+depends on ADK_TARGET_SYSTEM_QEMU_X86_64 || ADK_TARGET_SYSTEM_QEMU_X86
+
+config ADK_TARGET_QEMU_WITHOUT_BOOTLOADER
+	boolean "do not use bootloader"
+
+config ADK_TARGET_QEMU_WITH_BOOTLOADER
+	boolean "use bootloader"
+	select ADK_PACKAGE_GRUB if ADK_TARGET_SYSTEM_QEMU_X86_64 || ADK_TARGET_SYSTEM_QEMU_X86
+
+endchoice
+
+choice
+prompt "Qemu Emulation with permanent storage device (disk/flash)"
+depends on ADK_TARGET_QEMU
+default ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_ROOTFS_ARCHIVE
+default ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_ROOTFS_SQUASHFS
+default ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_ROOTFS_JFFS2
+
+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 || ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
+	select ADK_KERNEL_ATA_PIIX if ADK_TARGET_SYSTEM_QEMU_MIPS || ADK_TARGET_SYSTEM_QEMU_MIPS64 || ADK_TARGET_SYSTEM_QEMU_X86 || ADK_TARGET_SYSTEM_QEMU_X86_64
+	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_TARGET_SYSTEM_QEMU_SH4
+
+endchoice
+
+choice
+prompt "Qemu Emulation with graphical output"
+depends on ADK_TARGET_QEMU
+default ADK_TARGET_QEMU_WITH_GRAPHIC if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
+
+config ADK_TARGET_QEMU_WITHOUT_GRAPHIC
+	boolean "disabled"
+
+config ADK_TARGET_QEMU_WITH_GRAPHIC
+	boolean "enabled"
+	select ADK_KERNEL_VT
+	select ADK_KERNEL_VT_CONSOLE
+	select ADK_KERNEL_FONTS
+	select ADK_KERNEL_FONT_8x16
+	select ADK_KERNEL_FB
+	select ADK_KERNEL_FRAMEBUFFER_CONSOLE
+	select ADK_KERNEL_FB_SM501 if ADK_TARGET_SYSTEM_QEMU_SH4
+	select ADK_KERNEL_FB_CIRRUS if ADK_TARGET_SYSTEM_QEMU_X86 || ADK_TARGET_SYSTEM_QEMU_X86_64
+	select ADK_KERNEL_FB_PXA if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
+	select ADK_KERNEL_INPUT
+	select ADK_KERNEL_INPUT_KEYBOARD
+	select ADK_KERNEL_KEYBOARD_ATKBD if ADK_TARGET_SYSTEM_QEMU_X86 || ADK_TARGET_SYSTEM_QEMU_X86_64
+	select ADK_KERNEL_USB_HID if ADK_TARGET_SYSTEM_QEMU_SH4
+	select ADK_KERNEL_USB_OHCI_HCD_PLATFORM if ADK_TARGET_SYSTEM_QEMU_SH4
+
+endchoice
+
+choice
+prompt "Qemu Emulation using VirtIO drivers"
+depends on ADK_TARGET_SYSTEM_QEMU_SPARC64 || \
+		ADK_TARGET_SYSTEM_QEMU_X86 || \
+		ADK_TARGET_SYSTEM_QEMU_X86_64
+default ADK_TARGET_QEMU_WITH_VIRTIO if ADK_TARGET_SYSTEM_QEMU_SPARC64
+
+config ADK_TARGET_QEMU_WITHOUT_VIRTIO
+	boolean "disabled"
+
+config ADK_TARGET_QEMU_WITH_VIRTIO
+	boolean "enabled"
+	select ADK_KERNEL_VIRTIO
+	select ADK_KERNEL_VIRTIO_PCI
+	select ADK_KERNEL_VIRTIO_NET
+	select ADK_KERNEL_VIRTIO_BLK
+
+endchoice
+endmenu

+ 1 - 0
target/config/Config.in.system.choice

@@ -3,6 +3,7 @@ source "target/arm/Config.in"
 source "target/m68k/Config.in"
 source "target/microblaze/Config.in"
 source "target/mips/Config.in"
+source "target/mips64/Config.in"
 source "target/ppc/Config.in"
 source "target/ppc64/Config.in"
 source "target/sparc/Config.in"

+ 272 - 0
target/config/Config.in.target

@@ -0,0 +1,272 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+config ADK_TARGET_CFLAGS
+	string
+	default "-m4 -ml" if ADK_CPU_SH4 && ADK_little
+	default "-m4 -mb" if ADK_CPU_SH4 && ADK_big
+	default "-march=geode" if ADK_CPU_GEODE
+	default "-march=i486" if ADK_CPU_I486
+	default "-march=i586" if ADK_CPU_I586
+	default "-march=i686" if ADK_CPU_I686
+	default "-march=pentium-m" if ADK_CPU_PENTIUM_M
+	default "-march=atom" if ADK_CPU_ATOM
+	default "-march=amdfam10" if ADK_CPU_AMDFAM10
+	default "-mcpu=v8" if ADK_CPU_SPARC_V8
+	default "-m64 -mcpu=ultrasparc" if ADK_CPU_SPARC_V9
+	default "-march=loongson2f -Wa,-mfix-loongson2f-nop" if ADK_CPU_LOONGSON2F
+	default "-march=mips32" if ADK_CPU_MIPS32
+	default "-march=mips64" if ADK_CPU_MIPS64
+	default "-march=armv8-a" if ADK_CPU_ARMV8
+	default "-march=armv5te -mtune=iwmmxt" if ADK_CPU_XSCALE
+	default "-march=armv5te -mtune=arm926ej-s -mfloat-abi=soft" if ADK_CPU_ARM926EJ_S && ADK_soft_float
+	default "-march=armv5te -mtune=arm926ej-s -mfloat-abi=hard" if ADK_CPU_ARM926EJ_S && ADK_hard_float
+	default "-march=armv6 -mtune=arm1176jzf-s -mfloat-abi=soft" if ADK_CPU_ARM1176JZF_S && ADK_soft_float
+	default "-march=armv6 -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard" if ADK_CPU_ARM1176JZF_S && ADK_hard_float
+	default "-march=armv7-a -mtune=cortex-a9 -mfloat-abi=soft" if ADK_CPU_CORTEX_A9 && ADK_soft_float
+	default "-march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard" if ADK_CPU_CORTEX_A9 && ADK_hard_float
+
+config ADK_TARGET_CMDLINE
+	string
+	default "console=tty0" if ADK_TARGET_SYSTEM_ARANYM_M68K
+	default "console=ttyAMA0" if ADK_TARGET_SYSTEM_ARM_FM
+	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D13
+	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D2
+	default "console=ttymxc0,115200 console=tty0" if ADK_TARGET_SYSTEM_CUBOX_I && ADK_RUNTIME_VERBOSE_INIT_VGA
+	default "console=tty0 console=ttymxc0,115200" if ADK_TARGET_SYSTEM_CUBOX_I && ADK_RUNTIME_VERBOSE_INIT_SERIAL
+	default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_IBM_X40 && ADK_RUNTIME_VERBOSE_INIT_VGA
+	default "console=tty0 console=ttyS0,115200" if ADK_TARGET_SYSTEM_IBM_X40 && ADK_RUNTIME_VERBOSE_INIT_SERIAL
+	default "console=tty0" if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
+	default "dwc_otg.fiq_split_enable=1" if ADK_TARGET_SYSTEM_RASPBERRY_PI
+	default "console=ttyS0,115200 console=tty0 fbcon=rotate:1" if ADK_TARGET_SYSTEM_SHARP_ZAURUS
+	default "console=ttyS0,9600" if ADK_TARGET_SYSTEM_FON_FON2100
+	default "console=ttyS0,38400" if ADK_TARGET_SYSTEM_PCENGINES_WRAP
+	default "console=ttyS0,115200 console=tty0 geodewdt.nowayout=1" if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
+	default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_VBOX_I686
+	default "console=ttyS0,115200" if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
+	default "console=ttyAMA0" if ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB
+	default "console=ttyAMA0" if ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9
+	default "console=ttyUL0" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
+	default "console=ttyS0,115200" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605
+	default "console=hvc0" if ADK_TARGET_SYSTEM_QEMU_PPC64
+	default "console=ttyS0,9600" if ADK_TARGET_SYSTEM_QEMU_PPC
+	default "console=ttySC1" if ADK_TARGET_SYSTEM_QEMU_SH4
+	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_QEMU_SPARC64
+	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_QEMU_X86 || ADK_TARGET_SYSTEM_QEMU_X86_64
+	default ""
+
+choice
+prompt "Target firmware type"
+depends on !ADK_CHOOSE_TARGET_SYSTEM && !ADK_CHOOSE_TARGET_ARCH && !ADK_TARGET_TOOLCHAIN
+default ADK_TARGET_ROOTFS_ARCHIVE
+
+config ADK_TARGET_ROOTFS_INITRAMFS
+	boolean "initramfs filesystem"
+	depends on \
+		ADK_TARGET_QEMU || \
+		ADK_LINUX_M68K || \
+		ADK_LINUX_ARM || \
+		ADK_LINUX_MICROBLAZE || \
+		ADK_LINUX_MIPS || \
+		ADK_LINUX_PPC || \
+		ADK_LINUX_SPARC || \
+		ADK_LINUX_X86 || \
+		ADK_LINUX_X86_64 || \
+		ADK_LINUX_NATIVE
+	depends on !ADK_HARDWARE_VBOX
+	depends on !ADK_TARGET_SYSTEM_RASPBERRY_PI
+	depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB532
+	select ADK_KERNEL_BLK_DEV_INITRD
+	help
+	  create an read-only initramfs system.
+
+config ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK
+	boolean "initramfs filesystem included into kernel image"
+	select ADK_LINUX_INITRAMFS_BUILTIN
+	depends on \
+		ADK_TARGET_QEMU || \
+		ADK_LINUX_AARCH64 || \
+		ADK_LINUX_ARM || \
+		ADK_LINUX_M68K || \
+		ADK_LINUX_MICROBLAZE || \
+		ADK_LINUX_MIPS || \
+		ADK_LINUX_PPC || \
+		ADK_LINUX_SPARC || \
+		ADK_LINUX_X86 || \
+		ADK_LINUX_X86_64
+	depends on !ADK_HARDWARE_VBOX
+	depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB532
+	help
+	  create an read-only initramfs system.
+
+config ADK_TARGET_ROOTFS_SQUASHFS
+	boolean "Compressed read-only root filesystem (squashfs)"
+	select ADK_KERNEL_SQUASHFS
+	select ADK_HOST_NEED_SQUASHFS
+	select ADK_HOST_NEED_QEMU if ADK_TARGET_QEMU
+	select ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_QEMU
+	depends on ADK_TARGET_WITH_MTD
+	help
+	  highly compressed read-only filesystem for MTD flash systems.
+
+config ADK_TARGET_ROOTFS_JFFS2
+	boolean "Compressed read-write root filesystem (jffs2)"
+	select ADK_KERNEL_JFFS2_FS
+	select ADK_HOST_NEED_MTD_UTILS
+	select ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_QEMU
+	depends on ADK_TARGET_WITH_MTD
+	help
+	  compressed read-write filesystem for MTD flash systems.
+
+config ADK_TARGET_ROOTFS_YAFFS
+	boolean "YAFFS2 root filesystem (NAND)"
+	select ADK_KERNEL_MISC_FILESYSTEMS
+	select ADK_KERNEL_YAFFS_FS
+	select ADK_KERNEL_YAFFS_YAFFS2
+	select ADK_KERNEL_YAFFS_AUTO_YAFFS2
+	depends on ADK_TARGET_WITH_NAND
+	help
+	  Root filesystem on NAND flash with YAFFS2.
+
+config ADK_TARGET_ROOTFS_NFSROOT
+	boolean "NFS root"
+	select ADK_KERNEL_NETWORK_FILESYSTEMS
+	select ADK_KERNEL_SUNRPC
+	select ADK_KERNEL_NFS_FS
+	select ADK_KERNEL_NFS_V3
+	select ADK_KERNEL_ROOT_NFS
+	select ADK_KERNEL_NFS_COMMON
+	select ADK_KERNEL_IP_PNP
+	select ADK_KERNEL_IP_PNP_DHCP
+	select ADK_PACKAGE_ADKINSTALL
+	depends on !ADK_TARGET_QEMU && !ADK_HARDWARE_VBOX && !ADK_TARGET_SYSTEM_ARANYM_M68K
+	depends on !ADK_TARGET_SYSTEM_ARM_FM
+	help
+	  Root filesystem mounted via NFS. (DHCP)
+
+config ADK_TARGET_ROOTFS_USB
+	boolean "Boot from USB stick"
+	select ADK_KERNEL_NLS
+	select ADK_KERNEL_SCSI
+	select ADK_KERNEL_BLK_DEV_SD
+	select ADK_KERNEL_USB
+	select ADK_KERNEL_USB_EHCI_HCD
+	select ADK_KERNEL_USB_OHCI_HCD
+	select ADK_KERNEL_USB_UHCI_HCD
+	select ADK_KERNEL_USB_STORAGE
+	select ADK_KERNEL_EXT2_FS
+	select ADK_PACKAGE_ADKINSTALL
+	depends on ADK_TARGET_WITH_USB_BOOT
+	help
+	  Boot system from USB stick.
+
+config ADK_TARGET_ROOTFS_ISO
+	boolean "ISO image"
+	select ADK_KERNEL_ISO9660_FS
+	select ADK_KERNEL_JOLIET
+	select ADK_KERNEL_SCSI
+	select ADK_KERNEL_BLK_DEV_SR
+	select ADK_HOST_NEED_CDRTOOLS
+	select ADK_HOST_NEED_SYSLINUX
+	select ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_QEMU
+	depends on ADK_HOST_LINUX
+	depends on ADK_LINUX_X86
+	help
+	  Use this option to create a bootable ISO image.
+
+config ADK_TARGET_ROOTFS_INITRAMFSARCHIVE
+	boolean "Archive usable for initramfs creation"
+	depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB532
+	help
+	  Use this option if your planning to create a initramfs,
+	  useful for adk-test-framework.
+
+config ADK_TARGET_ROOTFS_ARCHIVE
+	boolean "Archive usable for different filesystems"
+	select ADK_HOST_NEED_GENEXT2FS if ADK_TARGET_QEMU
+	select ADK_KERNEL_EXT2_FS if ADK_TARGET_QEMU
+	select ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_QEMU
+	help
+	  Use this option if your root filesystem is ext2/ext3/ext4/xfs.
+
+endchoice
+
+config ADK_TARGET_ROOT_EXT4_RASPBERRY_PI
+        boolean
+	depends on ADK_TARGET_SYSTEM_RASPBERRY_PI && ADK_TARGET_ROOTFS_ARCHIVE
+        select ADK_KERNEL_EXT4_FS
+	default y
+        help
+          Compile EXT4 filesystem into kernel and use it as root filesystem.
+
+choice
+prompt "Root filesystem type"
+depends on ADK_TARGET_ROOTFS_ARCHIVE && !ADK_TARGET_SYSTEM_RASPBERRY_PI && !ADK_TARGET_QEMU
+default ADK_TARGET_ROOT_EXT4
+
+config ADK_TARGET_ROOT_EXT4
+	boolean
+	prompt "EXT4 filesystem"
+	select ADK_KERNEL_EXT4_FS
+	help
+	  Compile EXT4 filesystem into kernel and use it as root filesystem.
+
+config ADK_TARGET_ROOT_XFS
+	boolean
+	prompt "XFS filesystem"
+	select ADK_KERNEL_XFS_FS
+	help
+	  Compile XFS filesystem into kernel and use it as root filesystem.
+
+config ADK_TARGET_ROOT_EXT2
+	boolean
+	prompt "EXT2 filesystem"
+	select ADK_KERNEL_EXT2_FS
+	help
+	  Compile EXT2 filesystem into kernel and use it as root filesystem.
+
+config ADK_TARGET_ROOT_EXT3
+	boolean
+	prompt "EXT3 filesystem"
+	select ADK_KERNEL_EXT3_FS
+	help
+	  Compile EXT3 filesystem into kernel and use it as root filesystem.
+
+endchoice
+
+config ADK_TARGET_ROOTFS
+	string
+	default "xfs" if ADK_TARGET_ROOT_XFS
+	default "ext2" if ADK_TARGET_ROOT_EXT2
+	default "ext3" if ADK_TARGET_ROOT_EXT3
+	default "ext4" if ADK_TARGET_ROOT_EXT4
+	help
+
+config ADK_PACKAGE_SUFFIX
+	string
+	default "ipk" if ADK_TARGET_PACKAGE_IPKG
+	default "tar.xz" if ADK_TARGET_PACKAGE_TXZ
+	help
+
+choice
+prompt "Target package format"
+default ADK_TARGET_PACKAGE_TXZ if ADK_PKG_TEST
+default ADK_TARGET_PACKAGE_IPKG
+depends on !ADK_CHOOSE_TARGET_SYSTEM && !ADK_CHOOSE_TARGET_ARCH
+
+config ADK_TARGET_PACKAGE_IPKG
+	boolean
+	prompt "ipkg"
+	select BUSYBOX_IPKG
+	help
+	  Create ipkg packages and use ipkg package management on the target.
+
+config ADK_TARGET_PACKAGE_TXZ
+	boolean
+	prompt "xz compressed tar archive"
+	help
+	  Create compressed tar archives of packages.
+	  Pre- and post install scripts will be executed in the target
+	  directory. There will be no package manager installed onto the target.
+	  
+endchoice

+ 104 - 0
target/config/Config.in.toolchain

@@ -0,0 +1,104 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+menu "Toolchain specific settings"
+depends on !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_SYSTEM
+
+config ADK_VENDOR
+	string "Vendor name"
+	default "openadk"
+	help
+	  Vendor string is used for toolchain.
+
+config ADK_TARGET_CFLAGS_OPT
+	string
+	default "-Os -pipe" if ADK_TARGET_CFLAGS_OPT_OS
+	default "-O2 -pipe" if ADK_TARGET_CFLAGS_OPT_O2
+	default "-O3 -pipe" if ADK_TARGET_CFLAGS_OPT_O3
+	default "-O0 -pipe" if ADK_TARGET_CFLAGS_OPT_O0
+
+choice
+prompt "Optimization level"
+boolean
+
+config ADK_TARGET_CFLAGS_OPT_OS
+	prompt "optimize for size (-Os)"
+
+config ADK_TARGET_CFLAGS_OPT_O2
+	prompt "optimize for performance (-O2)"
+
+config ADK_TARGET_CFLAGS_OPT_O3
+	prompt "optimize for performance (-O3)"
+
+config ADK_TARGET_CFLAGS_OPT_O0
+	prompt "no optimization (-O0)"
+
+endchoice
+
+config ADK_LINUX_ARM_WITH_THUMB
+	prompt "Use THUMB2 ARM mode"
+	boolean
+	depends on ADK_CPU_CORTEX_A9 && ADK_TARGET_LIB_GLIBC
+	select ADK_KERNEL_THUMB2_KERNEL
+	default n
+
+config ADK_TOOLCHAIN_WITH_SSP
+	boolean
+	default n
+
+config ADK_TARGET_USE_SSP
+	prompt "Use Stack Smashing Protection for all packages"
+ 	boolean	
+	select ADK_TOOLCHAIN_WITH_SSP
+	default n
+
+config ADK_TOOLCHAIN_WITH_LTO
+	boolean
+	default n
+
+config ADK_TARGET_USE_LTO
+	prompt "Use Link Time Optimization for all packages"
+	boolean
+	select ADK_TOOLCHAIN_WITH_LTO
+	default n
+
+config ADK_TOOLCHAIN_WITH_GOLD
+	boolean
+	default n
+
+config ADK_TARGET_USE_GOLD
+	prompt "Use GOLD as linker for all packages"
+	boolean
+	select ADK_TOOLCHAIN_WITH_GOLD
+	depends on !ADK_LINUX_MIPS
+	default n
+
+config ADK_DEBUG
+	bool "Compile applications with debug support by default"
+	default n
+	help
+	  All packages and libc will be compiled and packaged with debug information.
+	  Mostly useful for NFS root or big USB/CF or hard disk setups.
+
+config ADK_DEBUG_OPTS
+	bool "use optimization cflags"
+	depends on ADK_DEBUG
+	default n
+	help
+	  All packages and C library will be compiled with debug information and optimization flags on.
+
+config ADK_DEBUG_STRIP
+	bool "strip target binaries/libraries for gdbserver usage"
+	depends on ADK_DEBUG
+	default n
+	help
+	  All packages and C library will be compiled with debug information, but stripped for the target.
+
+config ADK_STATIC
+	bool "Link applications statically by default"
+	default n
+	select BUSYBOX_STATIC
+	help
+	  Useful for toolchain only target devices.
+
+endmenu

+ 10 - 0
target/config/Config.in.tools

@@ -161,3 +161,13 @@ config ADK_HOST_BUILD_PCRE
 	default n
 
 source "target/config/Config.in.prereq"
+
+config ADK_COMPRESSION_TOOL
+	string
+	default "gzip -n9" if ADK_KERNEL_INITRAMFS_COMPRESSION_GZIP
+	default "bzip2" if ADK_KERNEL_INITRAMFS_COMPRESSION_BZIP2
+	default "xz --check=crc32" if ADK_KERNEL_INITRAMFS_COMPRESSION_XZ
+	default "lzma -9" if ADK_KERNEL_INITRAMFS_COMPRESSION_LZMA
+	default "lzop" if ADK_KERNEL_INITRAMFS_COMPRESSION_LZO
+	default "gzip -n9"
+	help

+ 5 - 0
target/config/Config.in.x86

@@ -0,0 +1,5 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+source target/config/Config.in.x86.choice
+source target/config/Config.in.x86.default

+ 24 - 0
target/config/Config.in.x86.choice

@@ -0,0 +1,24 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+choice ADK_TARGET_X86_CPU_MODEL
+prompt "CPU model"
+depends on ADK_TARGET_SYSTEM_QEMU_X86 || ADK_TARGET_SYSTEM_GENERIC_PC
+
+config ADK_CPU_I486
+        boolean "i486"
+        select ADK_i486
+
+config ADK_CPU_I586
+        boolean "i586"
+        select ADK_i586
+
+config ADK_CPU_I686
+        boolean "i686"
+        select ADK_i686
+
+config ADK_CPU_ATOM
+        boolean "atom"
+        select ADK_atom
+
+endchoice

+ 22 - 0
target/config/Config.in.x86.default

@@ -0,0 +1,22 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+config ADK_i486
+	boolean
+
+config ADK_i586
+	boolean
+
+config ADK_i686
+	boolean
+
+config ADK_atom
+	boolean
+
+config ADK_TARGET_X86_CPU
+	string
+	default "i486" if ADK_i486
+	default "i586" if ADK_i586
+	default "i686" if ADK_i686
+	default "atom" if ADK_atom
+

+ 49 - 0
target/linux/config/Config.in.kernel

@@ -117,6 +117,55 @@ config ADK_KERNEL_CPU_LITTLE_ENDIAN
 	default y if ADK_little
 	boolean
 
+config ADK_KERNEL_COMP_GZIP_RASPBERRY_PI
+        boolean
+        select ADK_KERNEL_RD_GZIP
+        select ADK_KERNEL_KERNEL_GZIP
+        select ADK_KERNEL_INITRAMFS_COMPRESSION_GZIP
+	depends on ADK_TARGET_SYSTEM_RASPBERRY_PI
+	default y
+
+choice
+prompt "Kernel Compression"
+depends on !ADK_TARGET_SYSTEM_RASPBERRY_PI && !ADK_TARGET_SYSTEM_MIKROTIK_RB532
+
+config ADK_KERNEL_COMP_XZ
+	prompt "use XZ compression"
+	boolean
+	select ADK_KERNEL_RD_XZ
+	select ADK_KERNEL_KERNEL_XZ
+	select ADK_KERNEL_INITRAMFS_COMPRESSION_XZ
+
+config ADK_KERNEL_COMP_LZMA
+	prompt "use LZMA compression"
+	boolean
+	select ADK_KERNEL_RD_LZMA
+	select ADK_KERNEL_KERNEL_LZMA
+	select ADK_KERNEL_INITRAMFS_COMPRESSION_LZMA
+
+config ADK_KERNEL_COMP_LZO
+	prompt "use LZO compression"
+	boolean
+	select ADK_KERNEL_RD_LZO
+	select ADK_KERNEL_KERNEL_LZO
+	select ADK_KERNEL_INITRAMFS_COMPRESSION_LZO
+
+config ADK_KERNEL_COMP_GZIP
+	prompt "use GZIP compression"
+	boolean
+	select ADK_KERNEL_RD_GZIP
+	select ADK_KERNEL_KERNEL_GZIP
+	select ADK_KERNEL_INITRAMFS_COMPRESSION_GZIP
+
+config ADK_KERNEL_COMP_BZIP2
+	prompt "use BZIP2 compression"
+	boolean
+	select ADK_KERNEL_RD_BZIP2
+	select ADK_KERNEL_KERNEL_BZIP2
+	select ADK_KERNEL_INITRAMFS_COMPRESSION_BZIP2
+
+endchoice
+
 menu "Kernel options"
 
 config ADK_KERNEL_SMP

+ 1 - 1
target/m68k/sys-available/toolchain-m68k

@@ -2,7 +2,7 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_M68K
 	bool "Toolchain only"
 	select ADK_m68k
 	select ADK_toolchain_m68k
-	select ADK_TOOLCHAIN
+	select ADK_TARGET_TOOLCHAIN
 	select ADK_TARGET_PACKAGE_TXZ
 	help
 	  Build a m68k toolchain.

+ 3 - 5
target/microblaze/sys-available/qemu-microblaze

@@ -1,11 +1,9 @@
 config ADK_TARGET_SYSTEM_QEMU_MICROBLAZE
-	bool "Qemu Emulator (big endian)"
+	bool "Qemu Emulator"
 	select ADK_microblaze
-	select ADK_big
 	select ADK_qemu_microblaze
-	select ADK_HARDWARE_QEMU
-	select ADK_TARGET_WITH_MTD
+	select ADK_TARGET_QEMU
 	select ADK_TARGET_KERNEL_LINUXBIN
 	help
-	 Qemu support for microblaze big endian architecture.
+	 Qemu support for MICROBLAZE architecture.
 

+ 0 - 11
target/microblaze/sys-available/qemu-microblazeel

@@ -1,11 +0,0 @@
-config ADK_TARGET_SYSTEM_QEMU_MICROBLAZEEL
-	bool "Qemu Emulator (little endian)"
-	select ADK_microblaze
-	select ADK_qemu_microblazeel
-	select ADK_little
-	select ADK_HARDWARE_QEMU
-	select ADK_TARGET_WITH_MTD
-	select ADK_TARGET_KERNEL_LINUXBIN
-	help
-	 Qemu support for microblaze little endian architecture.
-

+ 3 - 4
target/microblaze/sys-available/toolchain-microblaze

@@ -1,10 +1,9 @@
 config ADK_TARGET_SYSTEM_TOOLCHAIN_MICROBLAZE
-	bool "Toolchain only (big endian)"
+	bool "Toolchain only"
 	select ADK_microblaze
-	select ADK_big
 	select ADK_toolchain_microblaze
-	select ADK_TOOLCHAIN
+	select ADK_TARGET_TOOLCHAIN
 	select ADK_TARGET_PACKAGE_TXZ
 	help
-	  Microblaze toolchain.
+	  MICROBLAZE toolchain.
 

+ 0 - 10
target/microblaze/sys-available/toolchain-microblazeel

@@ -1,10 +0,0 @@
-config ADK_TARGET_SYSTEM_TOOLCHAIN_MICROBLAZEEL
-	bool "Toolchain only (little endian)"
-	select ADK_microblaze
-	select ADK_little
-	select ADK_toolchain_microblazeel
-	select ADK_TOOLCHAIN
-	select ADK_TARGET_PACKAGE_TXZ
-	help
-	  Microblaze toolchain.
-

+ 1 - 16
target/mips/Makefile

@@ -25,11 +25,6 @@ ifeq ($(ADK_HARDWARE_QEMU),y)
 	@echo "Start qemu with following options:"
 	@echo 'qemu-system-${CPU_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${CPU_ARCH}.img'
 endif
-ifeq ($(ADK_TARGET_SYSTEM_LEMOTE_YEELONG),y)
-	@echo "Startup the Lemote Yeelong and type del to enter PMON:"
-	@echo "PMON> load /dev/fs/ext2@wd0a/boot/kernel"
-	@echo "PMON> g root=/dev/sda1"
-endif
 ifeq ($(ADK_TARGET_SYSTEM_MIKROTIK_RB532),y)
 	@echo "Use following command to install it on CF card:"
 	@echo "sudo ./scripts/install-rb532.sh /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)"
@@ -93,14 +88,7 @@ kernel-strip:
 kernel-install: kernel-strip
 	@cp $(BUILD_DIR)/$(TARGET_KERNEL) $(FW_DIR)/${TARGET_KERNEL}
 endif
-ifeq ($(ADK_TARGET_SYSTEM_LEMOTE_YEELONG),y)
-kernel-strip:
-	$(TARGET_CROSS)objcopy $(OSTRIP) -S $(KERNEL) $(BUILD_DIR)/$(TARGET_KERNEL)
-
-kernel-install: kernel-strip
-	@cp $(BUILD_DIR)/$(TARGET_KERNEL) $(FW_DIR)/${TARGET_KERNEL}
-endif
-ifeq ($(ADK_HARDWARE_QEMU),y)
+ifeq ($(ADK_TARGET_QEMU),y)
 kernel-strip:
 	$(TARGET_CROSS)objcopy $(OSTRIP) -S $(KERNEL) $(BUILD_DIR)/$(TARGET_KERNEL)
 
@@ -124,9 +112,6 @@ endif
 ifeq ($(ADK_TARGET_FS),nfsroot)
 imageinstall: kernel-install $(FW_DIR)/$(ROOTFSUSERTARBALL) targethelp
 endif
-ifeq ($(ADK_TARGET_FS),usb)
-imageinstall: $(FW_DIR)/$(ROOTFSTARBALL) targethelp
-endif
 ifeq ($(ADK_TARGET_FS),yaffs)
 imageinstall: $(FW_DIR)/$(ROOTFSTARBALL) targethelp
 endif

+ 0 - 1
target/mips/kernel/qemu-mips

@@ -3,6 +3,5 @@ CONFIG_MIPS_MALTA=y
 CONFIG_MIPS_BONITO64=y
 CONFIG_MIPS_MSC=y
 CONFIG_CPU_MIPS32_R1=y
-CONFIG_PHYLIB=y
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250_CONSOLE=y

+ 0 - 9
target/mips/kernel/qemu-mips64el

@@ -1,9 +0,0 @@
-CONFIG_MIPS=y
-CONFIG_MIPS_MALTA=y
-CONFIG_CPU_MIPS64_R1=y
-CONFIG_MIPS32_COMPAT=y
-CONFIG_MIPS32_O32=y
-CONFIG_MIPS32_N32=y
-CONFIG_BINFMT_ELF32=y
-CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_CONSOLE=y

+ 0 - 7
target/mips/kernel/qemu-mipsel

@@ -1,7 +0,0 @@
-CONFIG_MIPS=y
-CONFIG_MIPS_MALTA=y
-CONFIG_MIPS_BONITO64=y
-CONFIG_MIPS_MSC=y
-CONFIG_CPU_MIPS32_R1=y
-CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_CONSOLE=y

+ 3 - 4
target/mips/sys-available/qemu-mips

@@ -1,10 +1,9 @@
 config ADK_TARGET_SYSTEM_QEMU_MIPS
-	bool "Qemu Emulator (mips32 big endian)"
+	bool "Qemu Emulator"
 	select ADK_mips
-	select ADK_big
 	select ADK_qemu_mips
-	select ADK_HARDWARE_QEMU
+	select ADK_TARGET_QEMU
 	select ADK_TARGET_KERNEL_VMLINUZ
 	help
-	 Qemu support for mips32 big endian architecture.
+	 Qemu support for MIPS architecture.
 

+ 0 - 13
target/mips/sys-available/qemu-mips64

@@ -1,13 +0,0 @@
-config ADK_TARGET_SYSTEM_QEMU_MIPS64
-	bool "Qemu Emulator (mips64 big endian o32 abi)"
-	select ADK_mips
-	select ADK_big
-	select ADK_o32
-	select ADK_qemu_mips64
-	select ADK_CPU_MIPS64
-	select ADK_LINUX_64
-	select ADK_HARDWARE_QEMU
-	select ADK_TARGET_KERNEL_VMLINUZ
-	help
-	 Qemu support for mips64 big endian architecture with o32 abi.
-

+ 0 - 12
target/mips/sys-available/qemu-mips64el

@@ -1,12 +0,0 @@
-config ADK_TARGET_SYSTEM_QEMU_MIPS64EL
-	bool "Qemu Emulator (mips64 little endian o32 abi)"
-	select ADK_mips
-	select ADK_little
-	select ADK_o32
-	select ADK_qemu_mips64el
-	select ADK_CPU_MIPS64
-	select ADK_LINUX_64
-	select ADK_HARDWARE_QEMU
-	select ADK_TARGET_KERNEL_VMLINUZ
-	help
-	 Qemu support for mips64 little endian architecture with o32 abi.

+ 0 - 12
target/mips/sys-available/qemu-mips64eln32

@@ -1,12 +0,0 @@
-config ADK_TARGET_SYSTEM_QEMU_MIPS64ELN32
-	bool "Qemu Emulator (mips64 little endian n32 abi)"
-	select ADK_mips
-	select ADK_little
-	select ADK_n32
-	select ADK_qemu_mips64el
-	select ADK_CPU_MIPS64
-	select ADK_LINUX_64
-	select ADK_HARDWARE_QEMU
-	select ADK_TARGET_KERNEL_VMLINUZ
-	help
-	  Qemu support for mips64 little endian architecture with n32 abi.

+ 0 - 12
target/mips/sys-available/qemu-mips64eln64

@@ -1,12 +0,0 @@
-config ADK_TARGET_SYSTEM_QEMU_MIPS64ELN64
-	bool "Qemu Emulator (mips64 little endian n64 abi)"
-	select ADK_mips
-	select ADK_little
-	select ADK_n64
-	select ADK_qemu_mips64el
-	select ADK_CPU_MIPS64
-	select ADK_LINUX_64
-	select ADK_HARDWARE_QEMU
-	select ADK_TARGET_KERNEL_VMLINUZ
-	help
-	  Qemu support for mips64 little endian architecture with n64 abi.

+ 0 - 13
target/mips/sys-available/qemu-mips64n32

@@ -1,13 +0,0 @@
-config ADK_TARGET_SYSTEM_QEMU_MIPS64N32
-	bool "Qemu Emulator (mips64 big endian n32 abi)"
-	select ADK_mips
-	select ADK_big
-	select ADK_n32
-	select ADK_qemu_mips64
-	select ADK_CPU_MIPS64
-	select ADK_LINUX_64
-	select ADK_HARDWARE_QEMU
-	select ADK_TARGET_KERNEL_VMLINUZ
-	help
-	  Qemu support for mips64 big endian architecture with n32 abi.
-

+ 0 - 13
target/mips/sys-available/qemu-mips64n64

@@ -1,13 +0,0 @@
-config ADK_TARGET_SYSTEM_QEMU_MIPS64N64
-	bool "Qemu Emulator (mips64 big endian n64 abi)"
-	select ADK_mips
-	select ADK_big
-	select ADK_n64
-	select ADK_qemu_mips64
-	select ADK_CPU_MIPS64
-	select ADK_LINUX_64
-	select ADK_HARDWARE_QEMU
-	select ADK_TARGET_KERNEL_VMLINUZ
-	help
-	 Qemu support for mips64 big endian architecture with n64 abi.
-

+ 0 - 10
target/mips/sys-available/qemu-mipsel

@@ -1,10 +0,0 @@
-config ADK_TARGET_SYSTEM_QEMU_MIPSEL
-	bool "Qemu Emulator (mips32 little endian)"
-	select ADK_mips
-	select ADK_qemu_mipsel
-	select ADK_little
-	select ADK_HARDWARE_QEMU
-	select ADK_TARGET_KERNEL_VMLINUZ
-	help
-	 Qemu support for mips32 little endian architecture.
-

+ 3 - 4
target/mips/sys-available/toolchain-mips

@@ -1,10 +1,9 @@
 config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS
-	bool "Toolchain only (mips32 big endian)"
+	bool "Toolchain only"
 	select ADK_mips
-	select ADK_big
 	select ADK_toolchain_mips
-	select ADK_TOOLCHAIN
+	select ADK_TARGET_TOOLCHAIN
 	select ADK_TARGET_PACKAGE_TXZ
 	help
-	  MIPS32 big endian toolchain.
+	  MIPS toolchain.
 

+ 0 - 12
target/mips/sys-available/toolchain-mips64

@@ -1,12 +0,0 @@
-config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64
-	bool "Toolchain only (mips64 big endian o32 ABI)"
-	select ADK_mips
-	select ADK_big
-	select ADK_o32
-	select ADK_toolchain_mips64
-	select ADK_CPU_MIPS64
-	select ADK_LINUX_64
-	select ADK_TOOLCHAIN
-	select ADK_TARGET_PACKAGE_TXZ
-	help
-	  MIPS64 big endian o32 ABI toolchain.

+ 0 - 12
target/mips/sys-available/toolchain-mips64el

@@ -1,12 +0,0 @@
-config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64EL
-	bool "Toolchain only (mips64 little endian o32 ABI)"
-	select ADK_mips
-	select ADK_little
-	select ADK_o32
-	select ADK_toolchain_mips64el
-	select ADK_CPU_MIPS64
-	select ADK_LINUX_64
-	select ADK_TOOLCHAIN
-	select ADK_TARGET_PACKAGE_TXZ
-	help
-	  MIPS64 little endian o32 ABI toolchain.

+ 0 - 12
target/mips/sys-available/toolchain-mips64eln32

@@ -1,12 +0,0 @@
-config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64ELN32
-	bool "Toolchain only (mips64 little endian n32 ABI)"
-	select ADK_mips
-	select ADK_little
-	select ADK_n32
-	select ADK_toolchain_mips64el
-	select ADK_CPU_MIPS64
-	select ADK_LINUX_64
-	select ADK_TOOLCHAIN
-	select ADK_TARGET_PACKAGE_TXZ
-	help
-	  MIPS64 little endian n32 ABI toolchain.

+ 0 - 12
target/mips/sys-available/toolchain-mips64eln64

@@ -1,12 +0,0 @@
-config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64ELN64
-	bool "Toolchain only (mips64 little endian n64 ABI)"
-	select ADK_mips
-	select ADK_little
-	select ADK_n64
-	select ADK_toolchain_mips64el
-	select ADK_CPU_MIPS64
-	select ADK_LINUX_64
-	select ADK_TOOLCHAIN
-	select ADK_TARGET_PACKAGE_TXZ
-	help
-	  MIPS64 little endian n64 ABI toolchain.

+ 0 - 12
target/mips/sys-available/toolchain-mips64n32

@@ -1,12 +0,0 @@
-config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64N32
-	bool "Toolchain only (mips64 big endian n32 ABI)"
-	select ADK_mips
-	select ADK_big
-	select ADK_n32
-	select ADK_toolchain_mips64
-	select ADK_CPU_MIPS64
-	select ADK_LINUX_64
-	select ADK_TOOLCHAIN
-	select ADK_TARGET_PACKAGE_TXZ
-	help
-	  MIPS64 big endian n64 ABI toolchain.

+ 0 - 12
target/mips/sys-available/toolchain-mips64n64

@@ -1,12 +0,0 @@
-config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64N64
-	bool "Toolchain only (mips64 big endian n64 ABI)"
-	select ADK_mips
-	select ADK_big
-	select ADK_n64
-	select ADK_toolchain_mips64
-	select ADK_CPU_MIPS64
-	select ADK_LINUX_64
-	select ADK_TOOLCHAIN
-	select ADK_TARGET_PACKAGE_TXZ
-	help
-	  MIPS64 big endian n64 ABI toolchain.

+ 0 - 10
target/mips/sys-available/toolchain-mipsel

@@ -1,10 +0,0 @@
-config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPSEL
-	bool "Toolchain only (mips32 little endian)"
-	select ADK_mips
-	select ADK_little
-	select ADK_toolchain_mipsel
-	select ADK_TOOLCHAIN
-	select ADK_TARGET_PACKAGE_TXZ
-	help
-	  MIPS32 little endian toolchain.
-

+ 9 - 0
target/mips64/Config.in

@@ -0,0 +1,9 @@
+choice
+depends on ADK_LINUX_MIPS64 && !ADK_CHOOSE_TARGET_ARCH
+prompt "Target system"
+
+config ADK_CHOOSE_TARGET_SYSTEM_MIPS64
+        boolean "Choose target system"
+
+source "target/mips64/Config.in.systems"
+endchoice

+ 111 - 0
target/mips64/Makefile

@@ -0,0 +1,111 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(TOPDIR)/rules.mk
+include $(TOPDIR)/mk/kernel.mk
+include $(TOPDIR)/mk/modules.mk
+include $(TOPDIR)/mk/kernel-build.mk
+include $(TOPDIR)/mk/image.mk
+
+KERNEL:=$(LINUX_DIR)/$(ADK_TARGET_KERNEL)
+OSTRIP:=-R .reginfo -R .notes -R .note -R .comment -R .mdebug -R .note.gnu.build-id
+
+# target helper text
+ifeq ($(ADK_TARGET_FS),nfsroot)
+targethelp:
+	@echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
+	@echo 'The nfs root tarball is: ${FW_DIR}/${ROOTFSUSERTARBALL}'
+ifeq ($(ADK_TARGET_SYSTEM_LEMOTE_YEELONG),y)
+	@echo 'Boot your Lemote Yeelong and type following commands in PMON:'
+	@echo 'PMON> ifaddr rtl0 <ip-address-client>'
+	@echo 'PMON> load tftp://<ip-address-server>/${TARGET_KERNEL}'
+	@echo 'PMON> g'
+endif
+endif
+ifeq ($(ADK_TARGET_FS),yaffs)
+targethelp:
+	@echo 'The root tarball is: ${FW_DIR}/${ROOTFSTARBALL}'
+	@echo 'Format your NAND with Routerboot, boot via NFS and'
+	@echo 'then install kernel and filesystem via:'
+	@echo 'adkinstall ${ROOTFSTARBALL}'
+endif
+ifeq ($(ADK_TARGET_FS),usb)
+targethelp:
+	@echo 'The root tarball is: ${FW_DIR}/${ROOTFSTARBALL}'
+ifeq ($(ADK_TARGET_SYSTEM_LEMOTE_YEELONG),y)
+	@echo "Startup the netbook and type del to enter PMON:"
+	@echo "PMON> load /dev/fs/ext2@usb0/boot/kernel"
+	@echo "PMON> g"
+endif
+endif
+ifeq ($(ADK_TARGET_FS),archive)
+targethelp:
+	@echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSTARBALL)"
+ifeq ($(ADK_HARDWARE_QEMU),y)
+	@echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
+	@echo "Use following command to create a QEMU Image:"
+	@echo "./scripts/create.sh qemu-${CPU_ARCH}.img $(FW_DIR)/$(ROOTFSTARBALL)"
+	@echo "Start qemu with following options:"
+	@echo 'qemu-system-${CPU_ARCH} -nographic -M malta -device e1000,netdev=adk0 -netdev user,id=adk0 -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${CPU_ARCH}.img'
+endif
+ifeq ($(ADK_TARGET_SYSTEM_LEMOTE_YEELONG),y)
+	@echo "Startup the Lemote Yeelong and type del to enter PMON:"
+	@echo "PMON> load /dev/fs/ext2@wd0a/boot/kernel"
+	@echo "PMON> g root=/dev/sda1"
+endif
+endif
+ifeq ($(ADK_TARGET_FS),initramfsarchive)
+targethelp:
+	@echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
+	@echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)"
+endif
+ifeq ($(ADK_TARGET_FS),initramfs)
+targethelp:
+	@echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
+	@echo 'The initramfs image is: ${FW_DIR}/${INITRAMFS}'
+ifeq ($(ADK_HARDWARE_QEMU),y)
+	@echo "Start qemu with following command line:"
+	@echo 'qemu-system-${CPU_ARCH} -nographic -M malta -device e1000,netdev=adk0 -netdev user,id=adk0 -kernel $(FW_DIR)/$(TARGET_KERNEL) -initrd ${FW_DIR}/${INITRAMFS}'
+endif
+endif
+ifeq ($(ADK_TARGET_FS),initramfs-piggyback)
+targethelp:
+	@echo 'The kernel+initramfs file is: $(FW_DIR)/${TARGET_KERNEL}'
+ifeq ($(ADK_HARDWARE_QEMU),y)
+	@echo "Start qemu with following command line:"
+	@echo 'qemu-system-${CPU_ARCH} -nographic -M malta -device e1000,netdev=adk0 -netdev user,id=adk0 -kernel $(FW_DIR)/$(TARGET_KERNEL)'
+endif
+endif
+
+# image creation and kernel install
+ifeq ($(ADK_TARGET_SYSTEM_LEMOTE_YEELONG),y)
+kernel-install:
+	$(TARGET_CROSS)objcopy $(OSTRIP) -S $(KERNEL) $(BUILD_DIR)/$(TARGET_KERNEL)
+	@cp $(BUILD_DIR)/$(TARGET_KERNEL) $(FW_DIR)/${TARGET_KERNEL}
+endif
+ifeq ($(ADK_HARDWARE_QEMU),y)
+kernel-install:
+	$(TARGET_CROSS)objcopy $(OSTRIP) -S $(KERNEL) $(BUILD_DIR)/$(TARGET_KERNEL)
+	@cp $(BUILD_DIR)/$(TARGET_KERNEL) $(FW_DIR)/${TARGET_KERNEL}
+endif
+
+# filesystem specific targets
+ifeq ($(ADK_TARGET_FS),nfsroot)
+imageinstall: kernel-install $(FW_DIR)/$(ROOTFSUSERTARBALL) targethelp
+endif
+ifeq ($(ADK_TARGET_FS),archive)
+imageinstall: $(FW_DIR)/$(ROOTFSTARBALL) targethelp
+endif
+ifeq ($(ADK_TARGET_FS),initramfsarchive)
+imageinstall: kernel-install $(FW_DIR)/$(ROOTFSUSERTARBALL) targethelp
+endif
+ifeq ($(ADK_TARGET_FS),initramfs)
+imageinstall: kernel-install $(FW_DIR)/$(INITRAMFS) targethelp
+endif
+ifeq ($(ADK_TARGET_FS),initramfs-piggyback)
+imageinstall: createinitramfs targethelp
+	@cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL)
+endif
+ifeq ($(ADK_TARGET_FS),usb)
+imageinstall: $(FW_DIR)/$(ROOTFSTARBALL) targethelp
+endif

+ 0 - 0
target/mips/kernel/lemote-yeelong → target/mips64/kernel/lemote-yeelong


+ 0 - 0
target/mips/kernel/qemu-mips64 → target/mips64/kernel/qemu-mips64


+ 1 - 1
target/mips/sys-available/lemote-yeelong → target/mips64/sys-available/lemote-yeelong

@@ -1,6 +1,6 @@
 config ADK_TARGET_SYSTEM_LEMOTE_YEELONG
 	bool "Lemote Yeelong laptop"
-	select ADK_mips
+	select ADK_mips64
 	select ADK_little
 	select ADK_lemote_yeelong
 	select ADK_LINUX_64

+ 11 - 0
target/mips64/sys-available/qemu-mips64

@@ -0,0 +1,11 @@
+config ADK_TARGET_SYSTEM_QEMU_MIPS64
+	bool "Qemu Emulator"
+	select ADK_mips64
+	select ADK_qemu_mips64
+	select ADK_CPU_MIPS64
+	select ADK_LINUX_64
+	select ADK_TARGET_QEMU
+	select ADK_TARGET_KERNEL_VMLINUZ
+	help
+	 Qemu support for MIPS64 architecture.
+

+ 11 - 0
target/mips64/sys-available/toolchain-mips64

@@ -0,0 +1,11 @@
+config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64
+	bool "Toolchain only"
+	select ADK_mips64
+	select ADK_toolchain_mips64
+	select ADK_CPU_MIPS64
+	select ADK_LINUX_64
+	select ADK_TARGET_TOOLCHAIN
+	select ADK_TARGET_PACKAGE_TXZ
+	help
+	  MIPS64 toolchain.
+

+ 4 - 0
target/mips64/target.mk

@@ -0,0 +1,4 @@
+include $(TOPDIR)/mk/kernel-ver.mk
+ARCH:=			mips
+CPU_ARCH:=		$(ADK_TARGET_CPU_ARCH)
+TARGET_CFLAGS_ARCH:=    $(ADK_TARGET_CFLAGS)

+ 263 - 0
target/mips64/uclibc.config

@@ -0,0 +1,263 @@
+#
+# Automatically generated file; DO NOT EDIT.
+# uClibc 0.9.34-git C Library Configuration
+#
+# TARGET_alpha is not set
+# TARGET_arc is not set
+# TARGET_arm is not set
+# TARGET_avr32 is not set
+# TARGET_bfin is not set
+# TARGET_c6x is not set
+# TARGET_cris is not set
+# TARGET_e1 is not set
+# TARGET_frv is not set
+# TARGET_h8300 is not set
+# TARGET_hppa is not set
+# TARGET_i386 is not set
+# TARGET_i960 is not set
+# TARGET_ia64 is not set
+# TARGET_m68k is not set
+# TARGET_metag is not set
+# TARGET_microblaze is not set
+TARGET_mips=y
+# TARGET_nios is not set
+# TARGET_nios2 is not set
+# TARGET_powerpc is not set
+# TARGET_sh is not set
+# TARGET_sh64 is not set
+# TARGET_sparc is not set
+# TARGET_v850 is not set
+# TARGET_vax is not set
+# TARGET_x86_64 is not set
+# TARGET_xtensa is not set
+
+#
+# Target Architecture Features and Options
+#
+TARGET_ARCH="mips"
+FORCE_OPTIONS_FOR_ARCH=y
+CONFIG_MIPS_O32_ABI=y
+# CONFIG_MIPS_N32_ABI is not set
+# CONFIG_MIPS_N64_ABI is not set
+# CONFIG_MIPS_ISA_1 is not set
+# CONFIG_MIPS_ISA_2 is not set
+# CONFIG_MIPS_ISA_3 is not set
+# CONFIG_MIPS_ISA_4 is not set
+CONFIG_MIPS_ISA_MIPS32=y
+# CONFIG_MIPS_ISA_MIPS32R2 is not set
+# CONFIG_MIPS_ISA_MIPS64 is not set
+TARGET_SUBARCH=""
+
+#
+# Using ELF file format
+#
+ARCH_HAS_DEPRECATED_SYSCALLS=y
+ARCH_ANY_ENDIAN=y
+ARCH_LITTLE_ENDIAN=y
+# ARCH_WANTS_BIG_ENDIAN is not set
+ARCH_WANTS_LITTLE_ENDIAN=y
+ARCH_HAS_MMU=y
+ARCH_USE_MMU=y
+UCLIBC_HAS_FLOATS=y
+UCLIBC_HAS_FPU=y
+DO_C99_MATH=y
+# DO_XSI_MATH is not set
+UCLIBC_HAS_FENV=y
+KERNEL_HEADERS=""
+HAVE_DOT_CONFIG=y
+
+#
+# General Library Settings
+#
+DOPIC=y
+ARCH_HAS_UCONTEXT=y
+HAVE_SHARED=y
+# FORCE_SHAREABLE_TEXT_SEGMENTS is not set
+LDSO_LDD_SUPPORT=y
+LDSO_CACHE_SUPPORT=y
+# LDSO_PRELOAD_ENV_SUPPORT is not set
+# LDSO_PRELOAD_FILE_SUPPORT is not set
+LDSO_BASE_FILENAME="ld.so"
+# LDSO_STANDALONE_SUPPORT is not set
+# LDSO_PRELINK_SUPPORT is not set
+# UCLIBC_STATIC_LDCONFIG is not set
+LDSO_RUNPATH=y
+LDSO_SAFE_RUNPATH=y
+LDSO_SEARCH_INTERP_PATH=y
+LDSO_LD_LIBRARY_PATH=y
+LDSO_NO_CLEANUP=y
+UCLIBC_CTOR_DTOR=y
+# LDSO_GNU_HASH_SUPPORT is not set
+# HAS_NO_THREADS is not set
+# LINUXTHREADS_OLD is not set
+# LINUXTHREADS_NEW is not set
+UCLIBC_HAS_THREADS_NATIVE=y
+UCLIBC_HAS_THREADS=y
+UCLIBC_HAS_TLS=y
+# PTHREADS_DEBUG_SUPPORT is not set
+UCLIBC_HAS_SYSLOG=y
+UCLIBC_HAS_LFS=y
+# MALLOC is not set
+# MALLOC_SIMPLE is not set
+MALLOC_STANDARD=y
+MALLOC_GLIBC_COMPAT=y
+UCLIBC_HAS_OBSTACK=y
+UCLIBC_DYNAMIC_ATEXIT=y
+COMPAT_ATEXIT=y
+# UCLIBC_SUSV2_LEGACY is not set
+UCLIBC_SUSV3_LEGACY=y
+# UCLIBC_HAS_CONTEXT_FUNCS is not set
+# UCLIBC_SUSV3_LEGACY_MACROS is not set
+UCLIBC_SUSV4_LEGACY=y
+# UCLIBC_STRICT_HEADERS is not set
+# UCLIBC_HAS_STUBS is not set
+UCLIBC_HAS_SHADOW=y
+UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y
+UCLIBC_HAS___PROGNAME=y
+UCLIBC_HAS_PTY=y
+ASSUME_DEVPTS=y
+UNIX98PTY_ONLY=y
+UCLIBC_HAS_GETPT=y
+UCLIBC_HAS_LIBUTIL=y
+UCLIBC_HAS_TM_EXTENSIONS=y
+UCLIBC_HAS_TZ_CACHING=y
+UCLIBC_HAS_TZ_FILE=y
+UCLIBC_HAS_TZ_FILE_READ_MANY=y
+UCLIBC_TZ_FILE_PATH="/etc/TZ"
+UCLIBC_FALLBACK_TO_ETC_LOCALTIME=y
+
+#
+# Advanced Library Settings
+#
+UCLIBC_PWD_BUFFER_SIZE=256
+UCLIBC_GRP_BUFFER_SIZE=256
+
+#
+# Support various families of functions
+#
+UCLIBC_LINUX_MODULE_26=y
+# UCLIBC_LINUX_MODULE_24 is not set
+UCLIBC_LINUX_SPECIFIC=y
+UCLIBC_HAS_GNU_ERROR=y
+UCLIBC_BSD_SPECIFIC=y
+UCLIBC_HAS_BSD_ERR=y
+# UCLIBC_HAS_OBSOLETE_BSD_SIGNAL is not set
+# UCLIBC_HAS_OBSOLETE_SYSV_SIGNAL is not set
+# UCLIBC_NTP_LEGACY is not set
+# UCLIBC_SV4_DEPRECATED is not set
+UCLIBC_HAS_REALTIME=y
+UCLIBC_HAS_ADVANCED_REALTIME=y
+UCLIBC_HAS_EPOLL=y
+# UCLIBC_HAS_XATTR is not set
+# UCLIBC_HAS_PROFILING is not set
+UCLIBC_HAS_CRYPT_IMPL=y
+# UCLIBC_HAS_SHA256_CRYPT_IMPL is not set
+# UCLIBC_HAS_SHA512_CRYPT_IMPL is not set
+UCLIBC_HAS_CRYPT=y
+UCLIBC_HAS_NETWORK_SUPPORT=y
+UCLIBC_HAS_SOCKET=y
+UCLIBC_HAS_IPV4=y
+UCLIBC_HAS_IPV6=y
+UCLIBC_HAS_RPC=y
+UCLIBC_HAS_FULL_RPC=y
+UCLIBC_HAS_REENTRANT_RPC=y
+UCLIBC_USE_NETLINK=y
+UCLIBC_SUPPORT_AI_ADDRCONFIG=y
+UCLIBC_HAS_BSD_RES_CLOSE=y
+UCLIBC_HAS_COMPAT_RES_STATE=y
+# UCLIBC_HAS_EXTRA_COMPAT_RES_STATE is not set
+UCLIBC_HAS_RESOLVER_SUPPORT=y
+UCLIBC_HAS_LIBRESOLV_STUB=y
+UCLIBC_HAS_LIBNSL_STUB=y
+
+#
+# String and Stdio Support
+#
+UCLIBC_HAS_STRING_GENERIC_OPT=y
+UCLIBC_HAS_STRING_ARCH_OPT=y
+UCLIBC_HAS_CTYPE_TABLES=y
+UCLIBC_HAS_CTYPE_SIGNED=y
+# UCLIBC_HAS_CTYPE_UNSAFE is not set
+UCLIBC_HAS_CTYPE_CHECKED=y
+# UCLIBC_HAS_CTYPE_ENFORCED is not set
+UCLIBC_HAS_WCHAR=y
+# UCLIBC_HAS_LOCALE is not set
+UCLIBC_HAS_HEXADECIMAL_FLOATS=y
+UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y
+UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9
+# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set
+# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set
+# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set
+# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set
+UCLIBC_HAS_STDIO_BUFSIZ_4096=y
+# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set
+UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y
+# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set
+# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set
+# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set
+UCLIBC_HAS_STDIO_GETC_MACRO=y
+UCLIBC_HAS_STDIO_PUTC_MACRO=y
+UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y
+# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set
+UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y
+# UCLIBC_HAS_FOPEN_CLOSEEXEC_MODE is not set
+UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y
+UCLIBC_HAS_PRINTF_M_SPEC=y
+UCLIBC_HAS_ERRNO_MESSAGES=y
+# UCLIBC_HAS_SYS_ERRLIST is not set
+UCLIBC_HAS_SIGNUM_MESSAGES=y
+# UCLIBC_HAS_SYS_SIGLIST is not set
+UCLIBC_HAS_GNU_GETOPT=y
+UCLIBC_HAS_STDIO_FUTEXES=y
+UCLIBC_HAS_GNU_GETSUBOPT=y
+
+#
+# Big and Tall
+#
+UCLIBC_HAS_REGEX=y
+# UCLIBC_HAS_REGEX_OLD is not set
+UCLIBC_HAS_FNMATCH=y
+# UCLIBC_HAS_FNMATCH_OLD is not set
+UCLIBC_HAS_WORDEXP=y
+UCLIBC_HAS_NFTW=y
+UCLIBC_HAS_FTW=y
+UCLIBC_HAS_FTS=y
+UCLIBC_HAS_GLOB=y
+UCLIBC_HAS_GNU_GLOB=y
+UCLIBC_HAS_UTMPX=y
+
+#
+# Library Installation Options
+#
+RUNTIME_PREFIX="/"
+DEVEL_PREFIX="/usr/"
+MULTILIB_DIR="lib"
+HARDWIRED_ABSPATH=y
+
+#
+# Security options
+#
+# UCLIBC_BUILD_PIE is not set
+UCLIBC_HAS_ARC4RANDOM=y
+# ARC4RANDOM_USES_NODEV is not set
+# UCLIBC_HAS_SSP is not set
+UCLIBC_BUILD_RELRO=y
+UCLIBC_BUILD_NOW=y
+UCLIBC_BUILD_NOEXECSTACK=y
+
+#
+# Development/debugging options
+#
+CROSS_COMPILER_PREFIX=""
+UCLIBC_EXTRA_CFLAGS=""
+# DODEBUG is not set
+DOSTRIP=y
+# DOASSERTS is not set
+# SUPPORT_LD_DEBUG is not set
+# SUPPORT_LD_DEBUG_EARLY is not set
+# UCLIBC_MALLOC_DEBUGGING is not set
+# UCLIBC_HAS_BACKTRACE is not set
+WARNINGS="-Wall"
+# EXTRA_WARNINGS is not set
+# DOMULTI is not set
+# UCLIBC_MJN3_ONLY is not set

+ 2 - 2
target/ppc/sys-available/qemu-ppc

@@ -3,7 +3,7 @@ config ADK_TARGET_SYSTEM_QEMU_PPC
 	select ADK_ppc
 	select ADK_qemu_ppc
 	select ADK_CPU_PPC
-	select ADK_HARDWARE_QEMU
+	select ADK_TARGET_QEMU
 	help
-	 Support for Qemu Emulator (PPC).
+	 Support for Qemu Emulator PPC architecture.
 

+ 2 - 2
target/ppc/sys-available/toolchain-ppc

@@ -3,8 +3,8 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_PPC
 	select ADK_ppc
 	select ADK_toolchain_ppc
 	select ADK_CPU_PPC
-	select ADK_TOOLCHAIN
+	select ADK_TARGET_TOOLCHAIN
 	select ADK_TARGET_PACKAGE_TXZ
 	help
-	  Build a ppc toolchain.
+	  PPC toolchain.
 

+ 2 - 2
target/ppc64/sys-available/qemu-ppc64

@@ -4,7 +4,7 @@ config ADK_TARGET_SYSTEM_QEMU_PPC64
 	select ADK_qemu_ppc64
 	select ADK_CPU_PPC64
 	select ADK_LINUX_64
-	select ADK_HARDWARE_QEMU
+	select ADK_TARGET_QEMU
 	help
-	 Support for Qemu Emulator (PPC64).
+	 Support for Qemu Emulator PPC64 architecture.
 

+ 2 - 2
target/ppc64/sys-available/toolchain-ppc64

@@ -4,8 +4,8 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_PPC64
 	select ADK_toolchain_ppc64
 	select ADK_CPU_PPC64
 	select ADK_LINUX_64
-	select ADK_TOOLCHAIN
+	select ADK_TAGET_TOOLCHAIN
 	select ADK_TARGET_PACKAGE_TXZ
 	help
-	  Build a ppc64 toolchain.
+	  PPC64 toolchain.
 

+ 3 - 4
target/sh/sys-available/qemu-sh4

@@ -1,11 +1,10 @@
 config ADK_TARGET_SYSTEM_QEMU_SH4
-	bool "Qemu Emulator (Little Endian)"
+	bool "Qemu Emulator"
 	select ADK_sh
-	select ADK_little
 	select ADK_qemu_sh4
 	select ADK_CPU_SH4
-	select ADK_HARDWARE_QEMU
+	select ADK_TARGET_QEMU
 	select ADK_TARGET_KERNEL_ZIMAGE
 	help
-	 Support for Qemu Emulator (superh).
+	 Support for Qemu Emulator SUPERH architecture.
 

+ 0 - 11
target/sh/sys-available/qemu-sh4eb

@@ -1,11 +0,0 @@
-config ADK_TARGET_SYSTEM_QEMU_SH4EB
-	bool "Qemu Emulator (Big Endian)"
-	select ADK_sh
-	select ADK_big
-	select ADK_qemu_sh4eb
-	select ADK_CPU_SH4
-	select ADK_HARDWARE_QEMU
-	select ADK_TARGET_KERNEL_ZIMAGE
-	help
-	 Support for Qemu Emulator (superh).
-

+ 3 - 4
target/sh/sys-available/toolchain-sh4

@@ -1,11 +1,10 @@
 config ADK_TARGET_SYSTEM_TOOLCHAIN_SH4
-	bool "Toolchain only (little endian)"
+	bool "Toolchain only"
 	select ADK_sh
-	select ADK_little
 	select ADK_toolchain_sh4
 	select ADK_CPU_SH4
-	select ADK_TOOLCHAIN
+	select ADK_TARGET_TOOLCHAIN
 	select ADK_TARGET_PACKAGE_TXZ
 	help
-	  Build a superh toolchain (sh4).
+	  SUPERH toolchain.
 

+ 0 - 11
target/sh/sys-available/toolchain-sh4eb

@@ -1,11 +0,0 @@
-config ADK_TARGET_SYSTEM_TOOLCHAIN_SH4EB
-	bool "Toolchain only (big endian)"
-	select ADK_sh
-	select ADK_big
-	select ADK_toolchain_sh4eb
-	select ADK_CPU_SH4
-	select ADK_TOOLCHAIN
-	select ADK_TARGET_PACKAGE_TXZ
-	help
-	  Build a superh toolchain (sh4 big endian).
-

+ 2 - 2
target/sparc/sys-available/qemu-sparc

@@ -3,8 +3,8 @@ config ADK_TARGET_SYSTEM_QEMU_SPARC
 	select ADK_sparc
 	select ADK_qemu_sparc
 	select ADK_CPU_SPARC_V8
-	select ADK_HARDWARE_QEMU
+	select ADK_TARGET_QEMU
 	select ADK_TARGET_KERNEL_ZIMAGE
 	help
-	 Support for Qemu Emulator (SPARC).
+	 Support for Qemu Emulator SPARC architecture.
 

+ 2 - 2
target/sparc/sys-available/toolchain-sparc

@@ -3,8 +3,8 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_SPARC
 	select ADK_sparc
 	select ADK_toolchain_sparc
 	select ADK_CPU_SPARC_V8
-	select ADK_TOOLCHAIN
+	select ADK_TARGET_TOOLCHAIN
 	select ADK_TARGET_PACKAGE_TXZ
 	help
-	  Build a sparc toolchain.
+	  SPARC toolchain.
 

+ 2 - 2
target/sparc64/sys-available/qemu-sparc64

@@ -4,7 +4,7 @@ config ADK_TARGET_SYSTEM_QEMU_SPARC64
 	select ADK_qemu_sparc64
 	select ADK_LINUX_64
 	select ADK_CPU_SPARC_V9
-	select ADK_HARDWARE_QEMU
+	select ADK_TARGET_QEMU
 	select ADK_TARGET_KERNEL_ZIMAGE
 	help
-	 Support for Qemu Emulator (SPARC64).
+	 Support for Qemu Emulator SPARC64 architecture.

+ 2 - 2
target/sparc64/sys-available/toolchain-sparc64

@@ -4,8 +4,8 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_SPARC64
 	select ADK_toolchain_sparc64
 	select ADK_CPU_SPARC_V9
 	select ADK_LINUX_64
-	select ADK_TOOLCHAIN
+	select ADK_TARGET_TOOLCHAIN
 	select ADK_TARGET_PACKAGE_TXZ
 	help
-	  Build a sparc64 toolchain.
+	  SPARC64 toolchain.
 

+ 0 - 10
target/tarch.lst

@@ -1,23 +1,13 @@
 aarch64
 arm
-armhf
 m68k
 microblaze
-microblazeel
 mips
-mipsel
 mips64
-mips64n32
-mips64n64
-mips64el
-mips64eln32
-mips64eln64
 ppc
 ppc64
 sh4
-sh4eb
 sparc
 sparc64
 x86
 x86_64
-x86_64_x32

+ 2 - 3
target/x86/sys-available/generic-pc

@@ -1,10 +1,9 @@
 config ADK_TARGET_SYSTEM_GENERIC_PC
-	bool "Generic PC (486)"
+	bool "Generic PC"
 	select ADK_x86
 	select ADK_generic_pc
-	select ADK_CPU_I486
 	select ADK_TARGET_KERNEL_BZIMAGE
 	select ADK_PACKAGE_GRUB
 	help
-	 Support for generic PC (i486).
+	 Support for generic PC.
 

+ 1 - 0
target/x86/sys-available/ibm-x40

@@ -26,3 +26,4 @@ config ADK_TARGET_SYSTEM_IBM_X40
 	select ADK_PACKAGE_GRUB
 	help
          System profile for IBM X40 laptop.
+

+ 0 - 10
target/x86/sys-available/qemu-i486

@@ -1,10 +0,0 @@
-config ADK_TARGET_SYSTEM_QEMU_I486
-	bool "Qemu Emulator (i486)"
-	select ADK_x86
-	select ADK_qemu_i486
-	select ADK_CPU_I486
-	select ADK_HARDWARE_QEMU
-	select ADK_TARGET_KERNEL_BZIMAGE
-	help
-	 Support for Qemu Emulator (i486).
-

+ 0 - 10
target/x86/sys-available/qemu-i686

@@ -1,10 +0,0 @@
-config ADK_TARGET_SYSTEM_QEMU_I686
-	bool "Qemu Emulator (i686)"
-	select ADK_x86
-	select ADK_qemu_i686
-	select ADK_CPU_I686
-	select ADK_HARDWARE_QEMU
-	select ADK_TARGET_KERNEL_BZIMAGE
-	help
-	 Support for Qemu Emulator (i686).
-

+ 9 - 0
target/x86/sys-available/qemu-x86

@@ -0,0 +1,9 @@
+config ADK_TARGET_SYSTEM_QEMU_X86
+	bool "Qemu Emulator"
+	select ADK_x86
+	select ADK_qemu_x86
+	select ADK_TARGET_QEMU
+	select ADK_TARGET_KERNEL_BZIMAGE
+	help
+	 Support for Qemu Emulator X86 architecture.
+

+ 0 - 11
target/x86/sys-available/qemu-x86_64-32

@@ -1,11 +0,0 @@
-config ADK_TARGET_SYSTEM_QEMU_X86_64_32
-	bool "Qemu Emulator (x86_64) with 32Bit userland"
-	select ADK_x86
-	select ADK_qemu_x86_64_32
-	select ADK_CPU_I686
-	select ADK_HARDWARE_QEMU
-	select ADK_TARGET_KERNEL_BZIMAGE
-	select ADK_TARGET_KERNEL_64
-	help
-	 Support for Qemu Emulator (x86_64) with 32 Bit userland.
-

+ 2 - 3
target/x86/sys-available/toolchain-i686 → target/x86/sys-available/toolchain-x86

@@ -2,9 +2,8 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_X86
 	bool "Toolchain only"
 	select ADK_x86
 	select ADK_toolchain_x86
-	select ADK_CPU_I686
-	select ADK_TOOLCHAIN
+	select ADK_TARGET_TOOLCHAIN
 	select ADK_TARGET_PACKAGE_TXZ
 	help
-	  Build a x86 toolchain (i686 optimized).
+	  X86 toolchain.
 

+ 2 - 3
target/x86_64/sys-available/qemu-x86_64

@@ -2,11 +2,10 @@ config ADK_TARGET_SYSTEM_QEMU_X86_64
 	bool "Qemu Emulator"
 	select ADK_x86_64
 	select ADK_qemu_x86_64
-	select ADK_64
 	select ADK_CPU_X86_64
 	select ADK_LINUX_64
-	select ADK_HARDWARE_QEMU
+	select ADK_TARGET_QEMU
 	select ADK_TARGET_KERNEL_BZIMAGE
 	help
-	 Support for Qemu Emulator.
+	 Support for Qemu Emulator X86_64 architecture.
 

+ 0 - 12
target/x86_64/sys-available/qemu-x86_64_x32

@@ -1,12 +0,0 @@
-config ADK_TARGET_SYSTEM_QEMU_X86_64_X32
-	bool "Qemu Emulator (x86_64 with X32 ABI)"
-	select ADK_x86_64
-	select ADK_qemu_x86_64
-	select ADK_x32
-	select ADK_CPU_X86_64
-	select ADK_LINUX_64
-	select ADK_HARDWARE_QEMU
-	select ADK_TARGET_KERNEL_BZIMAGE
-	help
-	 Support for Qemu Emulator.
-

Một số tệp đã không được hiển thị bởi vì quá nhiều tập tin thay đổi trong này khác