summaryrefslogtreecommitdiff
path: root/target/config
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2014-05-23 16:39:17 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2014-05-23 16:39:17 +0200
commit2735fdf97305e110eba8e776f8728a52ae886c05 (patch)
tree0ce26ce1066bd7260625ca641b1e64c99015f47f /target/config
parent65c2ab93616bdf982152a94ab35c2079a5e3a2d7 (diff)
resolve merge conflict
Diffstat (limited to 'target/config')
-rw-r--r--target/config/Config.in755
-rw-r--r--target/config/Config.in.abi5
-rw-r--r--target/config/Config.in.abi.choice36
-rw-r--r--target/config/Config.in.abi.default64
-rw-r--r--target/config/Config.in.adk45
-rw-r--r--target/config/Config.in.arch.choice14
-rw-r--r--target/config/Config.in.arch.default7
-rw-r--r--target/config/Config.in.arm5
-rw-r--r--target/config/Config.in.arm.choice34
-rw-r--r--target/config/Config.in.arm.default25
-rw-r--r--target/config/Config.in.cpu129
-rw-r--r--target/config/Config.in.endian5
-rw-r--r--target/config/Config.in.endian.choice17
-rw-r--r--target/config/Config.in.endian.default18
-rw-r--r--target/config/Config.in.hardware3
-rw-r--r--target/config/Config.in.kernel57
-rw-r--r--target/config/Config.in.kernelversion6
-rw-r--r--target/config/Config.in.kernelversion.choice44
-rw-r--r--target/config/Config.in.kernelversion.default15
-rw-r--r--target/config/Config.in.libc5
-rw-r--r--target/config/Config.in.libc.choice44
-rw-r--r--target/config/Config.in.libc.default44
-rw-r--r--target/config/Config.in.qemu102
-rw-r--r--target/config/Config.in.qemuopts91
-rw-r--r--target/config/Config.in.system.choice1
-rw-r--r--target/config/Config.in.target272
-rw-r--r--target/config/Config.in.toolchain104
-rw-r--r--target/config/Config.in.tools10
-rw-r--r--target/config/Config.in.x865
-rw-r--r--target/config/Config.in.x86.choice24
-rw-r--r--target/config/Config.in.x86.default22
31 files changed, 1122 insertions, 886 deletions
diff --git a/target/config/Config.in b/target/config/Config.in
index 25582aa5b..edabfa5e3 100644
--- a/target/config/Config.in
+++ b/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"
diff --git a/target/config/Config.in.abi b/target/config/Config.in.abi
new file mode 100644
index 000000000..6e900441b
--- /dev/null
+++ b/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
diff --git a/target/config/Config.in.abi.choice b/target/config/Config.in.abi.choice
new file mode 100644
index 000000000..53f6ed1c8
--- /dev/null
+++ b/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
diff --git a/target/config/Config.in.abi.default b/target/config/Config.in.abi.default
new file mode 100644
index 000000000..64aff0782
--- /dev/null
+++ b/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
+
diff --git a/target/config/Config.in.adk b/target/config/Config.in.adk
index 7487ac056..53b61406f 100644
--- a/target/config/Config.in.adk
+++ b/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
diff --git a/target/config/Config.in.arch.choice b/target/config/Config.in.arch.choice
index 54141eb3a..517d6a00f 100644
--- a/target/config/Config.in.arch.choice
+++ b/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"
diff --git a/target/config/Config.in.arch.default b/target/config/Config.in.arch.default
index df7e422f3..2b8abc7a1 100644
--- a/target/config/Config.in.arch.default
+++ b/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
diff --git a/target/config/Config.in.arm b/target/config/Config.in.arm
new file mode 100644
index 000000000..5c25bf08c
--- /dev/null
+++ b/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
diff --git a/target/config/Config.in.arm.choice b/target/config/Config.in.arm.choice
new file mode 100644
index 000000000..0b6d2081d
--- /dev/null
+++ b/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
diff --git a/target/config/Config.in.arm.default b/target/config/Config.in.arm.default
new file mode 100644
index 000000000..a2d486512
--- /dev/null
+++ b/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
+
diff --git a/target/config/Config.in.cpu b/target/config/Config.in.cpu
new file mode 100644
index 000000000..a079b8c9f
--- /dev/null
+++ b/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
+
diff --git a/target/config/Config.in.endian b/target/config/Config.in.endian
new file mode 100644
index 000000000..c21085389
--- /dev/null
+++ b/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
diff --git a/target/config/Config.in.endian.choice b/target/config/Config.in.endian.choice
new file mode 100644
index 000000000..2ad269525
--- /dev/null
+++ b/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
diff --git a/target/config/Config.in.endian.default b/target/config/Config.in.endian.default
new file mode 100644
index 000000000..6599016eb
--- /dev/null
+++ b/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
diff --git a/target/config/Config.in.hardware b/target/config/Config.in.hardware
index d522ec56c..9bdfac2fd 100644
--- a/target/config/Config.in.hardware
+++ b/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
diff --git a/target/config/Config.in.kernel b/target/config/Config.in.kernel
new file mode 100644
index 000000000..cd1007a91
--- /dev/null
+++ b/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
+
diff --git a/target/config/Config.in.kernelversion b/target/config/Config.in.kernelversion
new file mode 100644
index 000000000..e87c1ab67
--- /dev/null
+++ b/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
+
diff --git a/target/config/Config.in.kernelversion.choice b/target/config/Config.in.kernelversion.choice
new file mode 100644
index 000000000..66b3e8d77
--- /dev/null
+++ b/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
diff --git a/target/config/Config.in.kernelversion.default b/target/config/Config.in.kernelversion.default
new file mode 100644
index 000000000..23df527d8
--- /dev/null
+++ b/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
+
diff --git a/target/config/Config.in.libc b/target/config/Config.in.libc
new file mode 100644
index 000000000..7e34753df
--- /dev/null
+++ b/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
diff --git a/target/config/Config.in.libc.choice b/target/config/Config.in.libc.choice
new file mode 100644
index 000000000..e6fe7ec98
--- /dev/null
+++ b/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
diff --git a/target/config/Config.in.libc.default b/target/config/Config.in.libc.default
new file mode 100644
index 000000000..f7f182f37
--- /dev/null
+++ b/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
diff --git a/target/config/Config.in.qemu b/target/config/Config.in.qemu
index c1587acda..b4593f2f4 100644
--- a/target/config/Config.in.qemu
+++ b/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
diff --git a/target/config/Config.in.qemuopts b/target/config/Config.in.qemuopts
new file mode 100644
index 000000000..3bfa0341a
--- /dev/null
+++ b/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
diff --git a/target/config/Config.in.system.choice b/target/config/Config.in.system.choice
index ccbaa1e82..a95dd922b 100644
--- a/target/config/Config.in.system.choice
+++ b/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"
diff --git a/target/config/Config.in.target b/target/config/Config.in.target
new file mode 100644
index 000000000..5d87af765
--- /dev/null
+++ b/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
diff --git a/target/config/Config.in.toolchain b/target/config/Config.in.toolchain
new file mode 100644
index 000000000..26232e63a
--- /dev/null
+++ b/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
diff --git a/target/config/Config.in.tools b/target/config/Config.in.tools
index 3cb9c1537..88b72607e 100644
--- a/target/config/Config.in.tools
+++ b/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
diff --git a/target/config/Config.in.x86 b/target/config/Config.in.x86
new file mode 100644
index 000000000..3bbae5db1
--- /dev/null
+++ b/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
diff --git a/target/config/Config.in.x86.choice b/target/config/Config.in.x86.choice
new file mode 100644
index 000000000..5523902e0
--- /dev/null
+++ b/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
diff --git a/target/config/Config.in.x86.default b/target/config/Config.in.x86.default
new file mode 100644
index 000000000..6001b030f
--- /dev/null
+++ b/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
+