summaryrefslogtreecommitdiff
path: root/target
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
parent65c2ab93616bdf982152a94ab35c2079a5e3a2d7 (diff)
resolve merge conflict
Diffstat (limited to 'target')
-rw-r--r--target/aarch64/sys-available/toolchain-aarch642
-rw-r--r--target/arm/sys-available/cubox-i4
-rw-r--r--target/arm/sys-available/qemu-arm5
-rw-r--r--target/arm/sys-available/qemu-armhf12
-rw-r--r--target/arm/sys-available/raspberry-pi2
-rw-r--r--target/arm/sys-available/toolchain-arm8
-rw-r--r--target/arm/sys-available/toolchain-armhf14
-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
-rw-r--r--target/linux/config/Config.in.kernel49
-rw-r--r--target/m68k/sys-available/toolchain-m68k2
-rw-r--r--target/microblaze/sys-available/qemu-microblaze8
-rw-r--r--target/microblaze/sys-available/qemu-microblazeel11
-rw-r--r--target/microblaze/sys-available/toolchain-microblaze7
-rw-r--r--target/microblaze/sys-available/toolchain-microblazeel10
-rw-r--r--target/mips/Makefile17
-rw-r--r--target/mips/kernel/qemu-mips1
-rw-r--r--target/mips/kernel/qemu-mips64el9
-rw-r--r--target/mips/kernel/qemu-mipsel7
-rw-r--r--target/mips/sys-available/qemu-mips7
-rw-r--r--target/mips/sys-available/qemu-mips6413
-rw-r--r--target/mips/sys-available/qemu-mips64el12
-rw-r--r--target/mips/sys-available/qemu-mips64eln3212
-rw-r--r--target/mips/sys-available/qemu-mips64eln6412
-rw-r--r--target/mips/sys-available/qemu-mips64n3213
-rw-r--r--target/mips/sys-available/qemu-mips64n6413
-rw-r--r--target/mips/sys-available/qemu-mipsel10
-rw-r--r--target/mips/sys-available/toolchain-mips7
-rw-r--r--target/mips/sys-available/toolchain-mips6412
-rw-r--r--target/mips/sys-available/toolchain-mips64el12
-rw-r--r--target/mips/sys-available/toolchain-mips64eln3212
-rw-r--r--target/mips/sys-available/toolchain-mips64eln6412
-rw-r--r--target/mips/sys-available/toolchain-mips64n3212
-rw-r--r--target/mips/sys-available/toolchain-mips64n6412
-rw-r--r--target/mips/sys-available/toolchain-mipsel10
-rw-r--r--target/mips64/Config.in9
-rw-r--r--target/mips64/Makefile111
-rw-r--r--target/mips64/kernel/lemote-yeelong (renamed from target/mips/kernel/lemote-yeelong)0
-rw-r--r--target/mips64/kernel/qemu-mips64 (renamed from target/mips/kernel/qemu-mips64)0
-rw-r--r--target/mips64/sys-available/lemote-yeelong (renamed from target/mips/sys-available/lemote-yeelong)2
-rw-r--r--target/mips64/sys-available/qemu-mips6411
-rw-r--r--target/mips64/sys-available/toolchain-mips6411
-rw-r--r--target/mips64/target.mk4
-rw-r--r--target/mips64/uclibc.config263
-rw-r--r--target/ppc/sys-available/qemu-ppc4
-rw-r--r--target/ppc/sys-available/toolchain-ppc4
-rw-r--r--target/ppc64/sys-available/qemu-ppc644
-rw-r--r--target/ppc64/sys-available/toolchain-ppc644
-rw-r--r--target/sh/sys-available/qemu-sh47
-rw-r--r--target/sh/sys-available/qemu-sh4eb11
-rw-r--r--target/sh/sys-available/toolchain-sh47
-rw-r--r--target/sh/sys-available/toolchain-sh4eb11
-rw-r--r--target/sparc/sys-available/qemu-sparc4
-rw-r--r--target/sparc/sys-available/toolchain-sparc4
-rw-r--r--target/sparc64/sys-available/qemu-sparc644
-rw-r--r--target/sparc64/sys-available/toolchain-sparc644
-rw-r--r--target/tarch.lst10
-rw-r--r--target/x86/sys-available/generic-pc5
-rw-r--r--target/x86/sys-available/ibm-x401
-rw-r--r--target/x86/sys-available/qemu-i48610
-rw-r--r--target/x86/sys-available/qemu-i68610
-rw-r--r--target/x86/sys-available/qemu-x869
-rw-r--r--target/x86/sys-available/qemu-x86_64-3211
-rw-r--r--target/x86/sys-available/toolchain-x86 (renamed from target/x86/sys-available/toolchain-i686)5
-rw-r--r--target/x86_64/sys-available/qemu-x86_645
-rw-r--r--target/x86_64/sys-available/qemu-x86_64_x3212
-rw-r--r--target/x86_64/sys-available/toolchain-x86_645
-rw-r--r--target/x86_64/sys-available/toolchain-x86_64_x3212
97 files changed, 1644 insertions, 1287 deletions
diff --git a/target/aarch64/sys-available/toolchain-aarch64 b/target/aarch64/sys-available/toolchain-aarch64
index 638c3cdcf..bcdfd2289 100644
--- a/target/aarch64/sys-available/toolchain-aarch64
+++ b/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.
diff --git a/target/arm/sys-available/cubox-i b/target/arm/sys-available/cubox-i
index 2dce4fb31..d3edb99c6 100644
--- a/target/arm/sys-available/cubox-i
+++ b/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
diff --git a/target/arm/sys-available/qemu-arm b/target/arm/sys-available/qemu-arm
index 1fa057c4b..848179629 100644
--- a/target/arm/sys-available/qemu-arm
+++ b/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.
diff --git a/target/arm/sys-available/qemu-armhf b/target/arm/sys-available/qemu-armhf
deleted file mode 100644
index dab039931..000000000
--- a/target/arm/sys-available/qemu-armhf
+++ /dev/null
@@ -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).
diff --git a/target/arm/sys-available/raspberry-pi b/target/arm/sys-available/raspberry-pi
index 6326a1e57..45fd531d3 100644
--- a/target/arm/sys-available/raspberry-pi
+++ b/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
diff --git a/target/arm/sys-available/toolchain-arm b/target/arm/sys-available/toolchain-arm
index 876bcd84a..a98f9c225 100644
--- a/target/arm/sys-available/toolchain-arm
+++ b/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.
diff --git a/target/arm/sys-available/toolchain-armhf b/target/arm/sys-available/toolchain-armhf
deleted file mode 100644
index 252a41aa2..000000000
--- a/target/arm/sys-available/toolchain-armhf
+++ /dev/null
@@ -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.
-
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
+
diff --git a/target/linux/config/Config.in.kernel b/target/linux/config/Config.in.kernel
index 2e7870376..ed0eab75f 100644
--- a/target/linux/config/Config.in.kernel
+++ b/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
diff --git a/target/m68k/sys-available/toolchain-m68k b/target/m68k/sys-available/toolchain-m68k
index b48c9b784..f7218cdbd 100644
--- a/target/m68k/sys-available/toolchain-m68k
+++ b/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.
diff --git a/target/microblaze/sys-available/qemu-microblaze b/target/microblaze/sys-available/qemu-microblaze
index ee9cb6a52..ac4a36e9d 100644
--- a/target/microblaze/sys-available/qemu-microblaze
+++ b/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.
diff --git a/target/microblaze/sys-available/qemu-microblazeel b/target/microblaze/sys-available/qemu-microblazeel
deleted file mode 100644
index 8dff0e260..000000000
--- a/target/microblaze/sys-available/qemu-microblazeel
+++ /dev/null
@@ -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.
-
diff --git a/target/microblaze/sys-available/toolchain-microblaze b/target/microblaze/sys-available/toolchain-microblaze
index 3b8d3512b..e01ed69a0 100644
--- a/target/microblaze/sys-available/toolchain-microblaze
+++ b/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.
diff --git a/target/microblaze/sys-available/toolchain-microblazeel b/target/microblaze/sys-available/toolchain-microblazeel
deleted file mode 100644
index c41e26f91..000000000
--- a/target/microblaze/sys-available/toolchain-microblazeel
+++ /dev/null
@@ -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.
-
diff --git a/target/mips/Makefile b/target/mips/Makefile
index cdb5b7f8a..5c9f7f5fc 100644
--- a/target/mips/Makefile
+++ b/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
diff --git a/target/mips/kernel/qemu-mips b/target/mips/kernel/qemu-mips
index ca7b79eb9..422170fbb 100644
--- a/target/mips/kernel/qemu-mips
+++ b/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
diff --git a/target/mips/kernel/qemu-mips64el b/target/mips/kernel/qemu-mips64el
deleted file mode 100644
index 9216fe380..000000000
--- a/target/mips/kernel/qemu-mips64el
+++ /dev/null
@@ -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
diff --git a/target/mips/kernel/qemu-mipsel b/target/mips/kernel/qemu-mipsel
deleted file mode 100644
index 422170fbb..000000000
--- a/target/mips/kernel/qemu-mipsel
+++ /dev/null
@@ -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
diff --git a/target/mips/sys-available/qemu-mips b/target/mips/sys-available/qemu-mips
index d3ea99011..2dfc09ca6 100644
--- a/target/mips/sys-available/qemu-mips
+++ b/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.
diff --git a/target/mips/sys-available/qemu-mips64 b/target/mips/sys-available/qemu-mips64
deleted file mode 100644
index ce9c5b0fa..000000000
--- a/target/mips/sys-available/qemu-mips64
+++ /dev/null
@@ -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.
-
diff --git a/target/mips/sys-available/qemu-mips64el b/target/mips/sys-available/qemu-mips64el
deleted file mode 100644
index 067d0d6ed..000000000
--- a/target/mips/sys-available/qemu-mips64el
+++ /dev/null
@@ -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.
diff --git a/target/mips/sys-available/qemu-mips64eln32 b/target/mips/sys-available/qemu-mips64eln32
deleted file mode 100644
index 31c93b75c..000000000
--- a/target/mips/sys-available/qemu-mips64eln32
+++ /dev/null
@@ -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.
diff --git a/target/mips/sys-available/qemu-mips64eln64 b/target/mips/sys-available/qemu-mips64eln64
deleted file mode 100644
index 0f0697602..000000000
--- a/target/mips/sys-available/qemu-mips64eln64
+++ /dev/null
@@ -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.
diff --git a/target/mips/sys-available/qemu-mips64n32 b/target/mips/sys-available/qemu-mips64n32
deleted file mode 100644
index 614edde0b..000000000
--- a/target/mips/sys-available/qemu-mips64n32
+++ /dev/null
@@ -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.
-
diff --git a/target/mips/sys-available/qemu-mips64n64 b/target/mips/sys-available/qemu-mips64n64
deleted file mode 100644
index 49ad7bba8..000000000
--- a/target/mips/sys-available/qemu-mips64n64
+++ /dev/null
@@ -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.
-
diff --git a/target/mips/sys-available/qemu-mipsel b/target/mips/sys-available/qemu-mipsel
deleted file mode 100644
index 688471d6d..000000000
--- a/target/mips/sys-available/qemu-mipsel
+++ /dev/null
@@ -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.
-
diff --git a/target/mips/sys-available/toolchain-mips b/target/mips/sys-available/toolchain-mips
index 7c7e1c142..035908220 100644
--- a/target/mips/sys-available/toolchain-mips
+++ b/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.
diff --git a/target/mips/sys-available/toolchain-mips64 b/target/mips/sys-available/toolchain-mips64
deleted file mode 100644
index f1cc555a2..000000000
--- a/target/mips/sys-available/toolchain-mips64
+++ /dev/null
@@ -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.
diff --git a/target/mips/sys-available/toolchain-mips64el b/target/mips/sys-available/toolchain-mips64el
deleted file mode 100644
index 7aa82f05d..000000000
--- a/target/mips/sys-available/toolchain-mips64el
+++ /dev/null
@@ -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.
diff --git a/target/mips/sys-available/toolchain-mips64eln32 b/target/mips/sys-available/toolchain-mips64eln32
deleted file mode 100644
index 96f409ba6..000000000
--- a/target/mips/sys-available/toolchain-mips64eln32
+++ /dev/null
@@ -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.
diff --git a/target/mips/sys-available/toolchain-mips64eln64 b/target/mips/sys-available/toolchain-mips64eln64
deleted file mode 100644
index f28b14997..000000000
--- a/target/mips/sys-available/toolchain-mips64eln64
+++ /dev/null
@@ -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.
diff --git a/target/mips/sys-available/toolchain-mips64n32 b/target/mips/sys-available/toolchain-mips64n32
deleted file mode 100644
index 1337d3e37..000000000
--- a/target/mips/sys-available/toolchain-mips64n32
+++ /dev/null
@@ -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.
diff --git a/target/mips/sys-available/toolchain-mips64n64 b/target/mips/sys-available/toolchain-mips64n64
deleted file mode 100644
index 4cb4939e5..000000000
--- a/target/mips/sys-available/toolchain-mips64n64
+++ /dev/null
@@ -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.
diff --git a/target/mips/sys-available/toolchain-mipsel b/target/mips/sys-available/toolchain-mipsel
deleted file mode 100644
index 4032f9d94..000000000
--- a/target/mips/sys-available/toolchain-mipsel
+++ /dev/null
@@ -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.
-
diff --git a/target/mips64/Config.in b/target/mips64/Config.in
new file mode 100644
index 000000000..d890f6ff6
--- /dev/null
+++ b/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
diff --git a/target/mips64/Makefile b/target/mips64/Makefile
new file mode 100644
index 000000000..39b23cf8d
--- /dev/null
+++ b/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
diff --git a/target/mips/kernel/lemote-yeelong b/target/mips64/kernel/lemote-yeelong
index 96ca64c66..96ca64c66 100644
--- a/target/mips/kernel/lemote-yeelong
+++ b/target/mips64/kernel/lemote-yeelong
diff --git a/target/mips/kernel/qemu-mips64 b/target/mips64/kernel/qemu-mips64
index 9216fe380..9216fe380 100644
--- a/target/mips/kernel/qemu-mips64
+++ b/target/mips64/kernel/qemu-mips64
diff --git a/target/mips/sys-available/lemote-yeelong b/target/mips64/sys-available/lemote-yeelong
index 0a6fd9c32..65f400048 100644
--- a/target/mips/sys-available/lemote-yeelong
+++ b/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
diff --git a/target/mips64/sys-available/qemu-mips64 b/target/mips64/sys-available/qemu-mips64
new file mode 100644
index 000000000..f8846f472
--- /dev/null
+++ b/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.
+
diff --git a/target/mips64/sys-available/toolchain-mips64 b/target/mips64/sys-available/toolchain-mips64
new file mode 100644
index 000000000..909de4aad
--- /dev/null
+++ b/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.
+
diff --git a/target/mips64/target.mk b/target/mips64/target.mk
new file mode 100644
index 000000000..8b13be890
--- /dev/null
+++ b/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)
diff --git a/target/mips64/uclibc.config b/target/mips64/uclibc.config
new file mode 100644
index 000000000..c66fb4157
--- /dev/null
+++ b/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
diff --git a/target/ppc/sys-available/qemu-ppc b/target/ppc/sys-available/qemu-ppc
index 223e0213b..835741934 100644
--- a/target/ppc/sys-available/qemu-ppc
+++ b/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.
diff --git a/target/ppc/sys-available/toolchain-ppc b/target/ppc/sys-available/toolchain-ppc
index dd432ecda..8835ea223 100644
--- a/target/ppc/sys-available/toolchain-ppc
+++ b/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.
diff --git a/target/ppc64/sys-available/qemu-ppc64 b/target/ppc64/sys-available/qemu-ppc64
index ffc77a388..a0ff6ada8 100644
--- a/target/ppc64/sys-available/qemu-ppc64
+++ b/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.
diff --git a/target/ppc64/sys-available/toolchain-ppc64 b/target/ppc64/sys-available/toolchain-ppc64
index dce18a3a3..0aff9f3a3 100644
--- a/target/ppc64/sys-available/toolchain-ppc64
+++ b/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.
diff --git a/target/sh/sys-available/qemu-sh4 b/target/sh/sys-available/qemu-sh4
index 5ebd224be..0e0dad617 100644
--- a/target/sh/sys-available/qemu-sh4
+++ b/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.
diff --git a/target/sh/sys-available/qemu-sh4eb b/target/sh/sys-available/qemu-sh4eb
deleted file mode 100644
index 621e27e8a..000000000
--- a/target/sh/sys-available/qemu-sh4eb
+++ /dev/null
@@ -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).
-
diff --git a/target/sh/sys-available/toolchain-sh4 b/target/sh/sys-available/toolchain-sh4
index 91110cb0c..0675fe71c 100644
--- a/target/sh/sys-available/toolchain-sh4
+++ b/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.
diff --git a/target/sh/sys-available/toolchain-sh4eb b/target/sh/sys-available/toolchain-sh4eb
deleted file mode 100644
index 70b99cb8e..000000000
--- a/target/sh/sys-available/toolchain-sh4eb
+++ /dev/null
@@ -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).
-
diff --git a/target/sparc/sys-available/qemu-sparc b/target/sparc/sys-available/qemu-sparc
index 26866628f..1f1827fe4 100644
--- a/target/sparc/sys-available/qemu-sparc
+++ b/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.
diff --git a/target/sparc/sys-available/toolchain-sparc b/target/sparc/sys-available/toolchain-sparc
index e7f5aafc4..be18341f9 100644
--- a/target/sparc/sys-available/toolchain-sparc
+++ b/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.
diff --git a/target/sparc64/sys-available/qemu-sparc64 b/target/sparc64/sys-available/qemu-sparc64
index d750ea1e4..93f851e9a 100644
--- a/target/sparc64/sys-available/qemu-sparc64
+++ b/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.
diff --git a/target/sparc64/sys-available/toolchain-sparc64 b/target/sparc64/sys-available/toolchain-sparc64
index a83ecd198..1cc1edb86 100644
--- a/target/sparc64/sys-available/toolchain-sparc64
+++ b/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.
diff --git a/target/tarch.lst b/target/tarch.lst
index 8b3a57ef0..979e0f957 100644
--- a/target/tarch.lst
+++ b/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
diff --git a/target/x86/sys-available/generic-pc b/target/x86/sys-available/generic-pc
index 72ae99765..b5bbca9f2 100644
--- a/target/x86/sys-available/generic-pc
+++ b/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.
diff --git a/target/x86/sys-available/ibm-x40 b/target/x86/sys-available/ibm-x40
index 9979295ae..4a2d99258 100644
--- a/target/x86/sys-available/ibm-x40
+++ b/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.
+
diff --git a/target/x86/sys-available/qemu-i486 b/target/x86/sys-available/qemu-i486
deleted file mode 100644
index dc0da52ca..000000000
--- a/target/x86/sys-available/qemu-i486
+++ /dev/null
@@ -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).
-
diff --git a/target/x86/sys-available/qemu-i686 b/target/x86/sys-available/qemu-i686
deleted file mode 100644
index b2951a1e2..000000000
--- a/target/x86/sys-available/qemu-i686
+++ /dev/null
@@ -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).
-
diff --git a/target/x86/sys-available/qemu-x86 b/target/x86/sys-available/qemu-x86
new file mode 100644
index 000000000..48a71aa1d
--- /dev/null
+++ b/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.
+
diff --git a/target/x86/sys-available/qemu-x86_64-32 b/target/x86/sys-available/qemu-x86_64-32
deleted file mode 100644
index f96e6ea35..000000000
--- a/target/x86/sys-available/qemu-x86_64-32
+++ /dev/null
@@ -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.
-
diff --git a/target/x86/sys-available/toolchain-i686 b/target/x86/sys-available/toolchain-x86
index b7c3be238..1216284bb 100644
--- a/target/x86/sys-available/toolchain-i686
+++ b/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.
diff --git a/target/x86_64/sys-available/qemu-x86_64 b/target/x86_64/sys-available/qemu-x86_64
index 5067a8ecf..11e5c92cb 100644
--- a/target/x86_64/sys-available/qemu-x86_64
+++ b/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.
diff --git a/target/x86_64/sys-available/qemu-x86_64_x32 b/target/x86_64/sys-available/qemu-x86_64_x32
deleted file mode 100644
index 9108c7951..000000000
--- a/target/x86_64/sys-available/qemu-x86_64_x32
+++ /dev/null
@@ -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.
-
diff --git a/target/x86_64/sys-available/toolchain-x86_64 b/target/x86_64/sys-available/toolchain-x86_64
index b93b479a1..ab4bfa86e 100644
--- a/target/x86_64/sys-available/toolchain-x86_64
+++ b/target/x86_64/sys-available/toolchain-x86_64
@@ -1,12 +1,11 @@
config ADK_TARGET_SYSTEM_TOOLCHAIN_X86_64
bool "Toolchain only"
select ADK_x86_64
- select ADK_64
select ADK_toolchain_x86_64
select ADK_CPU_X86_64
select ADK_LINUX_64
- select ADK_TOOLCHAIN
+ select ADK_TARGET_TOOLCHAIN
select ADK_TARGET_PACKAGE_TXZ
help
- Build a x86_64 toolchain.
+ X86_64 toolchain.
diff --git a/target/x86_64/sys-available/toolchain-x86_64_x32 b/target/x86_64/sys-available/toolchain-x86_64_x32
deleted file mode 100644
index 22d94171f..000000000
--- a/target/x86_64/sys-available/toolchain-x86_64_x32
+++ /dev/null
@@ -1,12 +0,0 @@
-config ADK_TARGET_SYSTEM_TOOLCHAIN_X86_64_X32
- bool "Toolchain only (x32 ABI)"
- select ADK_x86_64
- select ADK_x32
- select ADK_toolchain_x86_64
- select ADK_CPU_X86_64
- select ADK_LINUX_64
- select ADK_TOOLCHAIN
- select ADK_TARGET_PACKAGE_TXZ
- help
- Build a x86_64 toolchain.
-