Browse Source

resolve merge conflict

Waldemar Brodkorb 10 years ago
parent
commit
2735fdf973
100 changed files with 1682 additions and 1478 deletions
  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.
-

Some files were not shown because too many files changed in this diff