summaryrefslogtreecommitdiff
path: root/target/config
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2018-05-25 13:36:17 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2018-05-25 21:16:12 +0200
commit08317fa541a10bd2e385479d73e99348cc2351dd (patch)
treea3b86ffff6c225c695c748bb417284768922acca /target/config
parentac941fcdd80d48404c91e8035a5836086f0a40ee (diff)
rework hardware and C library settings
Make the menu system for configuration more intuitive. First choose operating system, then hardware, starting with architecture. Then choose either generic or a sample system. When choosing a sample be more strict in case of MMU or Endianess selection, so a misconfiguration isn't possible. Furthermore put a new top level menu for C library configuration and add Binary format, Instruction set, version selection, float type and any C library specific options. Refactor the duplicate definition of Qemu system versatile and Synopsys NSIM.
Diffstat (limited to 'target/config')
-rw-r--r--target/config/Config.in.addons40
-rw-r--r--target/config/Config.in.binfmt7
-rw-r--r--target/config/Config.in.cpu98
-rw-r--r--target/config/Config.in.endian43
-rw-r--r--target/config/Config.in.hardware8
-rw-r--r--target/config/Config.in.instructions (renamed from target/config/Config.in.archopts)0
-rw-r--r--target/config/Config.in.libc50
-rw-r--r--target/config/Config.in.libs28
-rw-r--r--target/config/Config.in.mmu9
-rw-r--r--target/config/Config.in.runtime7
-rw-r--r--target/config/Config.in.systemopts38
-rw-r--r--target/config/Config.in.threads28
-rw-r--r--target/config/Config.in.toolchain43
-rw-r--r--target/config/Config.in.uclibc-ng19
14 files changed, 171 insertions, 247 deletions
diff --git a/target/config/Config.in.addons b/target/config/Config.in.addons
index 0c1e003c6..241ff1b20 100644
--- a/target/config/Config.in.addons
+++ b/target/config/Config.in.addons
@@ -2,7 +2,43 @@
# material, please see the LICENCE file in the top-level directory.
choice
-prompt "Optional hardware configuration"
+prompt "GPU memory size"
+depends on ADK_TARGET_BOARD_BCM28XX
+default ADK_TARGET_GPU_MEM_256 if ADK_PACKAGE_KODI
+
+config ADK_TARGET_GPU_MEM_16
+ bool "16"
+ help
+ use minimal 16 MB.
+
+config ADK_TARGET_GPU_MEM_64
+ bool "64"
+ help
+ use 64 MB.
+
+config ADK_TARGET_GPU_MEM_128
+ bool "128"
+ help
+ use 128 MB.
+
+config ADK_TARGET_GPU_MEM_256
+ bool "256"
+ help
+ use 256 MB.
+
+endchoice
+
+config ADK_TARGET_GPU_MEM
+ int
+ default 16 if ADK_TARGET_GPU_MEM_16
+ default 64 if ADK_TARGET_GPU_MEM_64
+ default 128 if ADK_TARGET_GPU_MEM_128
+ default 256 if ADK_TARGET_GPU_MEM_256
+ depends on ADK_TARGET_BOARD_BCM28XX
+
+
+choice
+prompt "Serial or Bluetooth"
depends on ( ADK_TARGET_OS_LINUX || ADK_TARGET_OS_WALDUX ) \
&& ( ADK_TARGET_SYSTEM_RASPBERRY_PI3 \
|| ADK_TARGET_SYSTEM_RASPBERRY_PI3P \
@@ -25,7 +61,7 @@ config ADK_TARGET_HARDWARE_RPI3_NONE
endchoice
choice
-prompt "Audio Board"
+prompt "Audio Board Addon"
depends on (ADK_TARGET_OS_LINUX || ADK_TARGET_OS_WALDUX) && ADK_TARGET_BOARD_BCM28XX
config ADK_TARGET_HARDWARE_NONE
diff --git a/target/config/Config.in.binfmt b/target/config/Config.in.binfmt
index 750f1990a..b48ff1cbf 100644
--- a/target/config/Config.in.binfmt
+++ b/target/config/Config.in.binfmt
@@ -2,8 +2,8 @@
# material, please see the LICENCE file in the top-level directory.
choice
-prompt "Binary Format"
-depends on ADK_TARGET_OS_LINUX || ADK_TARGET_OS_WALDUX
+prompt "Binary format"
+depends on (ADK_TARGET_OS_LINUX || ADK_TARGET_OS_WALDUX) && !ADK_APPLIANCE_TOOLCHAIN && !ADK_TARGET_CHOOSE_ARCH
config ADK_TARGET_BINFMT_ELF
bool "ELF"
@@ -13,7 +13,8 @@ config ADK_TARGET_BINFMT_FLAT
bool "FLAT"
select ADK_TARGET_UCLINUX if ADK_TARGET_ARCH_BFIN
depends on ADK_TARGET_LIB_UCLIBC_NG
- depends on (ADK_TARGET_ARCH_ARM || ADK_TARGET_ARCH_M68K || ADK_TARGET_ARCH_SH || ADK_TARGET_ARCH_XTENSA) && ADK_TARGET_WITHOUT_MMU \
+ depends on !ADK_TARGET_WITH_MMU
+ depends on ADK_TARGET_ARCH_ARM || ADK_TARGET_ARCH_M68K || ADK_TARGET_ARCH_SH || ADK_TARGET_ARCH_XTENSA \
|| ADK_TARGET_ARCH_H8300 || ADK_TARGET_ARCH_LM32 || ADK_TARGET_ARCH_BFIN
config ADK_TARGET_BINFMT_FDPIC
diff --git a/target/config/Config.in.cpu b/target/config/Config.in.cpu
index 93845b36e..635baad43 100644
--- a/target/config/Config.in.cpu
+++ b/target/config/Config.in.cpu
@@ -81,7 +81,6 @@ config ADK_TARGET_CPU_ARM_ARM1176JZF_S
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITH_MMU
select ADK_TARGET_CPU_WITH_FPU_VFP
depends on ADK_TARGET_ARCH_ARM
@@ -90,15 +89,6 @@ config ADK_TARGET_CPU_ARM_ARM926EJ_S
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITH_MMU
- depends on ADK_TARGET_ARCH_ARM
-
-config ADK_TARGET_CPU_ARM_ARM926EJ_S_NOMMU
- bool "arm926ej-s (noMMU)"
- select ADK_TARGET_SUPPORTS_THREADS
- select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
- select ADK_TARGET_UCLINUX
depends on ADK_TARGET_ARCH_ARM
config ADK_TARGET_CPU_ARM_ARM11MPCORE
@@ -106,7 +96,6 @@ config ADK_TARGET_CPU_ARM_ARM11MPCORE
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITH_MMU
select ADK_TARGET_CPU_WITH_FPU_VFPV3
depends on ADK_TARGET_ARCH_ARM
@@ -115,7 +104,6 @@ config ADK_TARGET_CPU_ARM_CORTEX_A5
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITH_MMU
select ADK_TARGET_CPU_WITH_FPU_VFPV3
select ADK_TARGET_CPU_WITH_NEON
select ADK_TARGET_CPU_WITH_THUMB2
@@ -126,7 +114,6 @@ config ADK_TARGET_CPU_ARM_CORTEX_A7
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITH_MMU
select ADK_TARGET_CPU_WITH_FPU_VFPV4
select ADK_TARGET_CPU_WITH_NEON
select ADK_TARGET_CPU_WITH_THUMB2
@@ -137,7 +124,6 @@ config ADK_TARGET_CPU_ARM_CORTEX_A8
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITH_MMU
select ADK_TARGET_CPU_WITH_FPU_VFPV3
select ADK_TARGET_CPU_WITH_NEON
select ADK_TARGET_CPU_WITH_THUMB2
@@ -148,7 +134,6 @@ config ADK_TARGET_CPU_ARM_CORTEX_A9
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITH_MMU
select ADK_TARGET_CPU_WITH_FPU_VFPV3
select ADK_TARGET_CPU_WITH_NEON
select ADK_TARGET_CPU_WITH_THUMB2
@@ -159,7 +144,6 @@ config ADK_TARGET_CPU_ARM_CORTEX_A15
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITH_MMU
select ADK_TARGET_CPU_WITH_FPU_VFPV4
select ADK_TARGET_CPU_WITH_NEON
depends on ADK_TARGET_ARCH_ARM
@@ -169,7 +153,6 @@ config ADK_TARGET_CPU_ARM_CORTEX_A17
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITH_MMU
select ADK_TARGET_CPU_WITH_FPU_VFPV4
select ADK_TARGET_CPU_WITH_NEON
depends on ADK_TARGET_ARCH_ARM
@@ -179,7 +162,6 @@ config ADK_TARGET_CPU_ARM_CORTEX_A53
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITH_MMU
select ADK_TARGET_CPU_WITH_FPU_VFPV4
select ADK_TARGET_CPU_WITH_NEON
depends on ADK_TARGET_ARCH_ARM
@@ -189,7 +171,6 @@ config ADK_TARGET_CPU_ARM_CORTEX_A57
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITH_MMU
select ADK_TARGET_CPU_WITH_FPU_VFPV4
select ADK_TARGET_CPU_WITH_NEON
depends on ADK_TARGET_ARCH_ARM
@@ -198,8 +179,6 @@ config ADK_TARGET_CPU_ARM_CORTEX_M7
bool "cortex-m7"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
select ADK_TARGET_CPU_WITH_THUMB2
select ADK_TARGET_CPU_WITH_FPU_FPV5
depends on ADK_TARGET_ARCH_ARM
@@ -208,8 +187,6 @@ config ADK_TARGET_CPU_ARM_CORTEX_M4
bool "cortex-m4"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
select ADK_TARGET_CPU_WITH_THUMB2
select ADK_TARGET_CPU_WITH_FPU_FPV4
depends on ADK_TARGET_ARCH_ARM
@@ -218,8 +195,6 @@ config ADK_TARGET_CPU_ARM_CORTEX_M3
bool "cortex-m3"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
select ADK_TARGET_CPU_WITH_THUMB2
depends on ADK_TARGET_ARCH_ARM
@@ -227,8 +202,6 @@ config ADK_TARGET_CPU_ARM_CORTEX_M0
bool "cortex-m0"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
select ADK_TARGET_CPU_WITH_THUMB2
depends on ADK_TARGET_ARCH_ARM
@@ -237,7 +210,6 @@ config ADK_TARGET_CPU_ARM_XSCALE
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITH_MMU
depends on ADK_TARGET_ARCH_ARM
# avr32
@@ -253,210 +225,180 @@ config ADK_TARGET_CPU_BFIN_BF512
bool "bf512"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF514
bool "bf514"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF516
bool "bf516"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF518
bool "bf518"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF522
bool "bf522"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF523
bool "bf523"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF524
bool "bf524"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF525
bool "bf525"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF526
bool "bf526"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF527
bool "bf527"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF531
bool "bf531"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF532
bool "bf532"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF533
bool "bf533"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF534
bool "bf534"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF536
bool "bf536"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF537
bool "bf537"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF538
bool "bf538"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF539
bool "bf539"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF542
bool "bf542"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF544
bool "bf544"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF547
bool "bf547"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF548
bool "bf548"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF549
bool "bf549"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF542M
bool "bf542m"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF544M
bool "bf544m"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF547M
bool "bf547m"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF548M
bool "bf548m"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF549M
bool "bf549m"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF561
bool "bf561"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
config ADK_TARGET_CPU_BFIN_BF592
bool "bf592"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_BFIN
# c6x
@@ -465,7 +407,6 @@ config ADK_TARGET_CPU_C6X
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_C6X
# cr16
@@ -525,24 +466,20 @@ config ADK_TARGET_CPU_EPIPHANY
# fr-v
config ADK_TARGET_CPU_FRV
bool "fr-v"
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_FRV
# ft32
config ADK_TARGET_CPU_FT32
bool "ft32"
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_FT32
# h8/300
config ADK_TARGET_CPU_H8300H
bool "h8300h"
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_H8300
config ADK_TARGET_CPU_H8S
bool "h8s"
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_H8300
# hppa
@@ -568,7 +505,6 @@ config ADK_TARGET_CPU_IA64
config ADK_TARGET_CPU_LM32
bool "lm32"
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_LM32
# coldfire
@@ -578,7 +514,6 @@ config ADK_TARGET_CPU_CF_51
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5206
@@ -587,7 +522,6 @@ config ADK_TARGET_CPU_CF_5206
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5206E
@@ -596,7 +530,6 @@ config ADK_TARGET_CPU_CF_5206E
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5208
@@ -605,7 +538,6 @@ config ADK_TARGET_CPU_CF_5208
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5211A
@@ -614,7 +546,6 @@ config ADK_TARGET_CPU_CF_5211A
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5213
@@ -623,7 +554,6 @@ config ADK_TARGET_CPU_CF_5213
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5216
@@ -632,7 +562,6 @@ config ADK_TARGET_CPU_CF_5216
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_52235
@@ -641,7 +570,6 @@ config ADK_TARGET_CPU_CF_52235
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5225
@@ -650,7 +578,6 @@ config ADK_TARGET_CPU_CF_5225
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_52259
@@ -659,7 +586,6 @@ config ADK_TARGET_CPU_CF_52259
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5235
@@ -668,7 +594,6 @@ config ADK_TARGET_CPU_CF_5235
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5249
@@ -677,7 +602,6 @@ config ADK_TARGET_CPU_CF_5249
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5250
@@ -686,7 +610,6 @@ config ADK_TARGET_CPU_CF_5250
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5271
@@ -695,7 +618,6 @@ config ADK_TARGET_CPU_CF_5271
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5272
@@ -704,7 +626,6 @@ config ADK_TARGET_CPU_CF_5272
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5275
@@ -713,7 +634,6 @@ config ADK_TARGET_CPU_CF_5275
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5282
@@ -722,7 +642,6 @@ config ADK_TARGET_CPU_CF_5282
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_53017
@@ -731,7 +650,6 @@ config ADK_TARGET_CPU_CF_53017
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5307
@@ -740,7 +658,6 @@ config ADK_TARGET_CPU_CF_5307
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5328
@@ -749,7 +666,6 @@ config ADK_TARGET_CPU_CF_5328
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5329
@@ -758,7 +674,6 @@ config ADK_TARGET_CPU_CF_5329
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5373
@@ -767,7 +682,6 @@ config ADK_TARGET_CPU_CF_5373
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5407
@@ -776,7 +690,6 @@ config ADK_TARGET_CPU_CF_5407
select ADK_TARGET_SUPPORTS_LT
select ADK_TARGET_CPU_CF
select ADK_TARGET_UCLINUX
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_M68K
config ADK_TARGET_CPU_CF_5475
@@ -1216,7 +1129,6 @@ config ADK_TARGET_CPU_RISCV64_RV64IMAC
# rx
config ADK_TARGET_CPU_RX
bool "rx"
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_RX
# s390
@@ -1238,7 +1150,6 @@ config ADK_TARGET_CPU_SH_J2
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL if ADK_TARGET_LIB_MUSL
select ADK_TARGET_SUPPORTS_LT if ADK_TARGET_LIB_UCLIBC_NG
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_SH
config ADK_TARGET_CPU_SH_SH2
@@ -1246,14 +1157,12 @@ config ADK_TARGET_CPU_SH_SH2
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL if ADK_TARGET_LIB_MUSL
select ADK_TARGET_SUPPORTS_LT if ADK_TARGET_LIB_UCLIBC_NG
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_SH
config ADK_TARGET_CPU_SH_SH2A
bool "sh2a"
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_SH
config ADK_TARGET_CPU_SH_SH3
@@ -1327,7 +1236,6 @@ config ADK_TARGET_CPU_TILE_TILEGX
# v850
config ADK_TARGET_CPU_V850
bool "v850"
- select ADK_TARGET_WITHOUT_MMU
depends on ADK_TARGET_ARCH_V850
# x86
@@ -1800,7 +1708,6 @@ config ADK_TARGET_CPU_XTENSA_DC233C
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITH_MMU
select ADK_TARGET_KERNEL_UIMAGE
select ADK_LINUX_KERNEL_XTENSA_VARIANT_DC233C if ADK_TARGET_OS_LINUX
select ADK_LINUX_KERNEL_INITIALIZE_XTENSA_MMU_INSIDE_VMLINUX if ADK_TARGET_OS_LINUX
@@ -1814,7 +1721,6 @@ config ADK_TARGET_CPU_XTENSA_DC232B
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITH_MMU
select ADK_TARGET_KERNEL_UIMAGE
select ADK_LINUX_KERNEL_XTENSA_VARIANT_DC232B if ADK_TARGET_OS_LINUX
select ADK_WALDUX_KERNEL_XTENSA_VARIANT_DC232B if ADK_TARGET_OS_WALDUX
@@ -1825,8 +1731,6 @@ config ADK_TARGET_CPU_XTENSA_DE212
depends on ADK_TARGET_LITTLE_ENDIAN
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITHOUT_MMU
- select ADK_TARGET_UCLINUX
select ADK_TARGET_KERNEL_IMAGE
select ADK_LINUX_KERNEL_XTENSA_VARIANT_CUSTOM if ADK_TARGET_OS_LINUX
select ADK_WALDUX_KERNEL_XTENSA_VARIANT_CUSTOM if ADK_TARGET_OS_WALDUX
@@ -1838,7 +1742,6 @@ config ADK_TARGET_CPU_XTENSA_KC705_BE
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITH_MMU
select ADK_TARGET_KERNEL_UIMAGE
select ADK_LINUX_KERNEL_XTENSA_VARIANT_DC233C if ADK_TARGET_OS_LINUX
select ADK_WALDUX_KERNEL_XTENSA_VARIANT_DC233C if ADK_TARGET_OS_WALDUX
@@ -1850,7 +1753,6 @@ config ADK_TARGET_CPU_XTENSA_FSF
select ADK_TARGET_SUPPORTS_THREADS
select ADK_TARGET_SUPPORTS_NPTL
select ADK_TARGET_SUPPORTS_LT
- select ADK_TARGET_WITH_MMU
select ADK_TARGET_KERNEL_ZIMAGE
select ADK_LINUX_KERNEL_XTENSA_VARIANT_FSF if ADK_TARGET_OS_LINUX
select ADK_WALDUX_KERNEL_XTENSA_VARIANT_FSF if ADK_TARGET_OS_WALDUX
diff --git a/target/config/Config.in.endian b/target/config/Config.in.endian
index 6803d5d25..4382b8f45 100644
--- a/target/config/Config.in.endian
+++ b/target/config/Config.in.endian
@@ -3,27 +3,42 @@
choice ADK_TARGET_ENDIAN_MODE
prompt "Endianess"
-depends on ADK_TARGET_ARCH_ARC \
- || ADK_TARGET_ARCH_AARCH64 \
- || ADK_TARGET_ARCH_ARM \
- || ADK_TARGET_ARCH_CSKY \
- || ADK_TARGET_ARCH_C6X \
- || ADK_TARGET_ARCH_MICROBLAZE \
- || ADK_TARGET_ARCH_MIPS \
- || ADK_TARGET_ARCH_MIPS64 \
- || ADK_TARGET_ARCH_NDS32 \
- || ADK_TARGET_ARCH_PPC64 \
- || ADK_TARGET_ARCH_SH \
- || ADK_TARGET_ARCH_XTENSA
+depends on ADK_TARGET_SYSTEM_GENERIC_ARC \
+ || ADK_TARGET_SYSTEM_GENERIC_AARCH64 \
+ || ADK_TARGET_SYSTEM_GENERIC_ARM \
+ || ADK_TARGET_SYSTEM_GENERIC_CSKY \
+ || ADK_TARGET_SYSTEM_GENERIC_C6X \
+ || ADK_TARGET_SYSTEM_GENERIC_MICROBLAZE \
+ || ADK_TARGET_SYSTEM_GENERIC_MIPS \
+ || ADK_TARGET_SYSTEM_GENERIC_MIPS64 \
+ || ADK_TARGET_SYSTEM_GENERIC_NDS32 \
+ || ADK_TARGET_SYSTEM_GENERIC_PPC64 \
+ || ADK_TARGET_SYSTEM_GENERIC_SH \
+ || ADK_TARGET_SYSTEM_GENERIC_XTENSA \
+ || ADK_TARGET_SYSTEM_SYNOPSYS_NSIM \
+ || ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_ML605 \
+ || ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_S3ADSP1800 \
+ || ADK_TARGET_SYSTEM_QEMU_MIPS \
+ || ADK_TARGET_SYSTEM_QEMU_MIPS64 \
+ || ADK_TARGET_SYSTEM_QEMU_SH \
+ || ADK_TARGET_SYSTEM_QEMU_XTENSA
-config ADK_TARGET_LITTLE_ENDIAN
+config ADK_TARGET_WITH_LITTLE_ENDIAN
bool "little"
+ select ADK_TARGET_LITTLE_ENDIAN
-config ADK_TARGET_BIG_ENDIAN
+config ADK_TARGET_WITH_BIG_ENDIAN
bool "big"
+ select ADK_TARGET_BIG_ENDIAN
endchoice
+config ADK_TARGET_LITTLE_ENDIAN
+ bool
+
+config ADK_TARGET_BIG_ENDIAN
+ bool
+
config ADK_TARGET_ENDIAN_SUFFIX
string
default "le" if ADK_TARGET_LITTLE_ENDIAN && (ADK_TARGET_ARCH_NDS32 || ADK_TARGET_ARCH_PPC64)
diff --git a/target/config/Config.in.hardware b/target/config/Config.in.hardware
index f136bbebc..a7d21e55c 100644
--- a/target/config/Config.in.hardware
+++ b/target/config/Config.in.hardware
@@ -110,13 +110,5 @@ config ADK_TARGET_WITH_USB_BOOT
config ADK_TARGET_WITH_SMP
bool
-config ADK_TARGET_WITH_MMU
- bool
- select ADK_LINUX_KERNEL_MMU if ADK_TARGET_OS_LINUX
- select ADK_WALDUX_KERNEL_MMU if ADK_TARGET_OS_WALDUX
-
-config ADK_TARGET_WITHOUT_MMU
- bool
-
config ADK_TARGET_WITH_IOMMU
bool
diff --git a/target/config/Config.in.archopts b/target/config/Config.in.instructions
index 9393a5ac8..9393a5ac8 100644
--- a/target/config/Config.in.archopts
+++ b/target/config/Config.in.instructions
diff --git a/target/config/Config.in.libc b/target/config/Config.in.libc
index 46a3559b2..e16164119 100644
--- a/target/config/Config.in.libc
+++ b/target/config/Config.in.libc
@@ -2,11 +2,12 @@
# material, please see the LICENCE file in the top-level directory.
choice
-prompt "C library"
+prompt "Target C library"
+depends on !ADK_APPLIANCE_TOOLCHAIN && !ADK_TARGET_CHOOSE_ARCH
default ADK_TARGET_LIB_UCLIBC_NG if ADK_TARGET_OS_LINUX || ADK_TARGET_OS_WALDUX
config ADK_TARGET_LIB_UCLIBC_NG
- bool "uClibc-ng embedded C library"
+ bool "uClibc-ng"
select ADK_PACKAGE_LIBGCC
depends on (\
ADK_TARGET_ARCH_AARCH64 || \
@@ -43,7 +44,7 @@ config ADK_TARGET_LIB_UCLIBC_NG
https://uclibc-ng.org
config ADK_TARGET_LIB_MUSL
- bool "musl C library"
+ bool "musl"
select ADK_PACKAGE_LIBGCC
depends on (\
ADK_TARGET_ARCH_AARCH64 || \
@@ -62,7 +63,7 @@ config ADK_TARGET_LIB_MUSL
http://musl-libc.org
config ADK_TARGET_LIB_GLIBC
- bool "GNU C library"
+ bool "glibc"
select ADK_PACKAGE_LIBGCC
depends on (\
ADK_TARGET_ARCH_AARCH64 || \
@@ -91,7 +92,7 @@ config ADK_TARGET_LIB_GLIBC
http://www.gnu.org/libc
config ADK_TARGET_LIB_NEWLIB
- bool "newlib C library"
+ bool "newlib"
select ADK_TARGET_WITHOUT_THREADS
depends on (\
ADK_TARGET_ARCH_AARCH64 || \
@@ -139,7 +140,8 @@ config ADK_TARGET_LIB_NEWLIB
endchoice
choice
-prompt "C library version"
+prompt "Target C library version"
+depends on !ADK_APPLIANCE_TOOLCHAIN && !ADK_TARGET_CHOOSE_ARCH
config ADK_TARGET_LIB_UCLIBC_NG_1_0_30
bool "1.0.30"
@@ -147,7 +149,7 @@ config ADK_TARGET_LIB_UCLIBC_NG_1_0_30
config ADK_TARGET_LIB_UCLIBC_NG_GIT
bool "git"
- depends on ADK_TARGET_LIB_UCLIBC_NG
+ depends on ADK_TARGET_LIB_UCLIBC_NG && ADK_EXPERIMENTAL
config ADK_TARGET_LIB_GLIBC_2_27
bool "2.27"
@@ -159,7 +161,7 @@ config ADK_TARGET_LIB_GLIBC_CSKY
config ADK_TARGET_LIB_GLIBC_GIT
bool "git"
- depends on ADK_TARGET_LIB_GLIBC && !ADK_TARGET_ARCH_CSKY
+ depends on ADK_TARGET_LIB_GLIBC && !ADK_TARGET_ARCH_CSKY && ADK_EXPERIMENTAL
config ADK_TARGET_LIB_MUSL_1_1_19
bool "1.1.19"
@@ -167,7 +169,7 @@ config ADK_TARGET_LIB_MUSL_1_1_19
config ADK_TARGET_LIB_MUSL_GIT
bool "git"
- depends on ADK_TARGET_LIB_MUSL
+ depends on ADK_TARGET_LIB_MUSL && ADK_EXPERIMENTAL
config ADK_TARGET_LIB_NEWLIB_3_0_0
bool "3.0.0"
@@ -186,36 +188,10 @@ config ADK_TARGET_LIB_NEWLIB_FROSTED
config ADK_TARGET_LIB_NEWLIB_GIT
bool "git"
- depends on ADK_TARGET_LIB_NEWLIB && !ADK_TARGET_OS_FROSTED
-
-endchoice
-
-choice
-prompt "Threading"
-depends on ADK_TARGET_LIB_UCLIBC_NG
-
-config ADK_TARGET_WITH_NPTL
- bool "enable NPTL"
- depends on ADK_TARGET_SUPPORTS_NPTL && ADK_TARGET_SUPPORTS_THREADS
-
-config ADK_TARGET_WITH_LT
- bool "enable Linuxthreads"
- depends on ADK_TARGET_SUPPORTS_LT && ADK_TARGET_SUPPORTS_THREADS
-
-config ADK_TARGET_WITHOUT_THREADS
- bool "disable threads"
+ depends on ADK_TARGET_LIB_NEWLIB && !ADK_TARGET_OS_FROSTED && ADK_EXPERIMENTAL
endchoice
-config ADK_TARGET_SUPPORTS_THREADS
- bool
-
-config ADK_TARGET_SUPPORTS_NPTL
- bool
-
-config ADK_TARGET_SUPPORTS_LT
- bool
-
config ADK_TARGET_LIBC_UTILS
bool
default n if ADK_TARGET_ARCH_C6X
@@ -254,7 +230,7 @@ config ADK_TARGET_SUFFIX
default "gnu" if ADK_TARGET_LIB_GLIBC
default "uclibceabihf" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ARCH_ARM && ADK_TARGET_HARD_FLOAT
default "uclibceabi" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ARCH_ARM
- default "uclinuxeabi" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ARCH_ARM && ADK_TARGET_WITHOUT_MMU
+ default "uclinuxeabi" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ARCH_ARM && ADK_TARGET_UCLINUX
default "uclibcabi64" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ABI_N64
default "uclibcabin32" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ABI_N32
default "uclibcabi32" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ABI_O32
diff --git a/target/config/Config.in.libs b/target/config/Config.in.libs
new file mode 100644
index 000000000..46734c842
--- /dev/null
+++ b/target/config/Config.in.libs
@@ -0,0 +1,28 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+choice
+depends on ADK_TARGET_OS_LINUX || ADK_TARGET_OS_WALDUX
+bool "Library support"
+
+config ADK_TARGET_USE_SHARED_LIBS_ONLY
+ bool "Create shared libraries only and link dynamically"
+ depends on !ADK_TARGET_BINFMT_FLAT && !ADK_TARGET_BINFMT_DSBT
+
+config ADK_TARGET_USE_STATIC_LIBS_ONLY
+ bool "Create static libraries only and link statically"
+ select BUSYBOX_STATIC
+ help
+ Useful for debugging of dynamic linker problems. Be aware of the fact, that uClibc and glibc
+ still requires libgcc_so.so.1 for pthread_cancel. Glibc also requires libnss_*.so libraries
+ at runtime. Full static builds are only supported for musl libc.
+
+config ADK_TARGET_USE_SHARED_AND_STATIC_LIBS
+ bool "Create shared and static libraries and link dynamically"
+ depends on !ADK_TARGET_BINFMT_FLAT && !ADK_TARGET_BINFMT_DSBT
+
+config ADK_TARGET_USE_STATIC_AND_SHARED_LIBS
+ bool "Create static and shared libraries and link statically"
+ depends on !ADK_TARGET_BINFMT_FLAT && !ADK_TARGET_BINFMT_DSBT
+
+endchoice
diff --git a/target/config/Config.in.mmu b/target/config/Config.in.mmu
new file mode 100644
index 000000000..53a477486
--- /dev/null
+++ b/target/config/Config.in.mmu
@@ -0,0 +1,9 @@
+# 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_WITH_MMU
+ bool "MMU"
+ depends on !ADK_APPLIANCE_TOOLCHAIN && !ADK_TARGET_CHOOSE_ARCH
+ select ADK_LINUX_KERNEL_MMU if ADK_TARGET_OS_LINUX
+ select ADK_WALDUX_KERNEL_MMU if ADK_TARGET_OS_WALDUX
+ default y
diff --git a/target/config/Config.in.runtime b/target/config/Config.in.runtime
index b78b1a88b..5403df361 100644
--- a/target/config/Config.in.runtime
+++ b/target/config/Config.in.runtime
@@ -52,7 +52,7 @@ endchoice
choice
prompt "system for /dev management"
depends on !ADK_APPLIANCE_TOOLCHAIN
-default ADK_RUNTIME_DEV_STATIC if ADK_TARGET_WITHOUT_MMU || ADK_TARGET_ARCH_CRIS
+default ADK_RUNTIME_DEV_STATIC if ADK_TARGET_ARCH_CRIS || ADK_TARGET_UCLINUX
default ADK_RUNTIME_DEV_MDEV
config ADK_RUNTIME_DEV_MDEV
@@ -377,7 +377,6 @@ config ADK_RUNTIME_CONSOLE_SERIAL_DEVICE
default "ttyARC0" if ADK_TARGET_SYSTEM_NSIM_ARCV1 \
|| ADK_TARGET_SYSTEM_NSIM_ARCV2
default "ttyAMA0" if ADK_TARGET_SYSTEM_QEMU_ARM_VERSATILEPB \
- || ADK_TARGET_SYSTEM_QEMU_ARM_VERSATILEPB_NOMMU \
|| ADK_TARGET_SYSTEM_QEMU_ARM_REALVIEW_EB_MPCORE \
|| ADK_TARGET_SYSTEM_QEMU_ARM_VEXPRESS_A9 \
|| ADK_TARGET_SYSTEM_QEMU_AARCH64
@@ -426,7 +425,7 @@ config ADK_RUNTIME_KBD_LAYOUT
choice
prompt "initial login shell for the root user"
-default ADK_ROOTSH_HUSH if ADK_TARGET_WITHOUT_MMU
+default ADK_ROOTSH_HUSH if ADK_TARGET_UCLINUX
default ADK_ROOTSH_MKSH
config ADK_ROOTSH_MKSH
@@ -481,7 +480,7 @@ endchoice
choice
prompt "system /bin/sh (POSIX script shell)"
-default ADK_BINSH_HUSH if ADK_TARGET_WITHOUT_MMU
+default ADK_BINSH_HUSH if ADK_TARGET_UCLINUX
default ADK_BINSH_MKSH
config ADK_BINSH_MKSH
diff --git a/target/config/Config.in.systemopts b/target/config/Config.in.systemopts
deleted file mode 100644
index e0b77042d..000000000
--- a/target/config/Config.in.systemopts
+++ /dev/null
@@ -1,38 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-choice
-prompt "GPU memory size"
-depends on ADK_TARGET_BOARD_BCM28XX
-default ADK_TARGET_GPU_MEM_256 if ADK_PACKAGE_KODI
-
-config ADK_TARGET_GPU_MEM_16
- bool "16"
- help
- use minimal 16 MB.
-
-config ADK_TARGET_GPU_MEM_64
- bool "64"
- help
- use 64 MB.
-
-config ADK_TARGET_GPU_MEM_128
- bool "128"
- help
- use 128 MB.
-
-config ADK_TARGET_GPU_MEM_256
- bool "256"
- help
- use 256 MB.
-
-endchoice
-
-config ADK_TARGET_GPU_MEM
- int
- default 16 if ADK_TARGET_GPU_MEM_16
- default 64 if ADK_TARGET_GPU_MEM_64
- default 128 if ADK_TARGET_GPU_MEM_128
- default 256 if ADK_TARGET_GPU_MEM_256
- depends on ADK_TARGET_BOARD_BCM28XX
-
diff --git a/target/config/Config.in.threads b/target/config/Config.in.threads
new file mode 100644
index 000000000..b0bb2f452
--- /dev/null
+++ b/target/config/Config.in.threads
@@ -0,0 +1,28 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+choice
+prompt "Threading mode"
+depends on ADK_TARGET_LIB_UCLIBC_NG
+
+config ADK_TARGET_WITH_NPTL
+ bool "NPTL"
+ depends on ADK_TARGET_SUPPORTS_NPTL && ADK_TARGET_SUPPORTS_THREADS && ADK_TARGET_WITH_MMU
+
+config ADK_TARGET_WITH_LT
+ bool "Linuxthreads"
+ depends on ADK_TARGET_SUPPORTS_LT && ADK_TARGET_SUPPORTS_THREADS
+
+config ADK_TARGET_WITHOUT_THREADS
+ bool "none"
+
+endchoice
+
+config ADK_TARGET_SUPPORTS_THREADS
+ bool
+
+config ADK_TARGET_SUPPORTS_NPTL
+ bool
+
+config ADK_TARGET_SUPPORTS_LT
+ bool
diff --git a/target/config/Config.in.toolchain b/target/config/Config.in.toolchain
index 0a6011917..499e67011 100644
--- a/target/config/Config.in.toolchain
+++ b/target/config/Config.in.toolchain
@@ -1,49 +1,6 @@
# This file is part of the OpenADK project. OpenADK is copyrighted
# material, please see the LICENCE file in the top-level directory.
-choice
-depends on ADK_TARGET_OS_LINUX || ADK_TARGET_OS_WALDUX
-bool "Library support"
-
-config ADK_TARGET_USE_SHARED_LIBS_ONLY
- bool "Create shared libraries only and link dynamically"
- depends on !ADK_TARGET_BINFMT_FLAT && !ADK_TARGET_BINFMT_DSBT
-
-config ADK_TARGET_USE_STATIC_LIBS_ONLY
- bool "Create static libraries only and link statically"
- select BUSYBOX_STATIC
- help
- Useful for debugging of dynamic linker problems. Be aware of the fact, that uClibc and glibc
- still requires libgcc_so.so.1 for pthread_cancel. Glibc also requires libnss_*.so libraries
- at runtime. Full static builds are only supported for musl libc.
-
-config ADK_TARGET_USE_SHARED_AND_STATIC_LIBS
- bool "Create shared and static libraries and link dynamically"
- depends on !ADK_TARGET_BINFMT_FLAT && !ADK_TARGET_BINFMT_DSBT
-
-config ADK_TARGET_USE_STATIC_AND_SHARED_LIBS
- bool "Create static and shared libraries and link statically"
- depends on !ADK_TARGET_BINFMT_FLAT && !ADK_TARGET_BINFMT_DSBT
-
-endchoice
-
-config ADK_TARGET_LIBC_WITH_LOCALE
- bool "Enable locale support"
- depends on ADK_TARGET_LIB_UCLIBC_NG
- select BUSYBOX_LOCALE_SUPPORT if ADK_PACKAGE_BUSYBOX
-
-config ADK_TARGET_LIBC_WITH_LIBINTL
- bool "Enable libintl stub support"
- depends on ADK_TARGET_LIB_UCLIBC_NG
- help
- Enables uClibc-ng libintl stub.
-
-config ADK_TARGET_LIBC_WITH_LIBICONV
- bool "Enable basic libiconv"
- depends on ADK_TARGET_LIB_UCLIBC_NG && !ADK_PACKAGE_LIBICONV
- help
- Enables uClibc-ng included basic libiconv support.
-
config ADK_TARGET_CFLAGS_OPT
string
default "-Os -pipe" if ADK_TARGET_CFLAGS_OPT_OS
diff --git a/target/config/Config.in.uclibc-ng b/target/config/Config.in.uclibc-ng
new file mode 100644
index 000000000..8c6974fbf
--- /dev/null
+++ b/target/config/Config.in.uclibc-ng
@@ -0,0 +1,19 @@
+# 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_LIBC_WITH_LOCALE
+ bool "Enable locale support"
+ depends on ADK_TARGET_LIB_UCLIBC_NG
+ select BUSYBOX_LOCALE_SUPPORT if ADK_PACKAGE_BUSYBOX
+
+config ADK_TARGET_LIBC_WITH_LIBINTL
+ bool "Enable libintl stub support"
+ depends on ADK_TARGET_LIB_UCLIBC_NG
+ help
+ Enables uClibc-ng libintl stub.
+
+config ADK_TARGET_LIBC_WITH_LIBICONV
+ bool "Enable basic libiconv"
+ depends on ADK_TARGET_LIB_UCLIBC_NG && !ADK_PACKAGE_LIBICONV
+ help
+ Enables uClibc-ng included basic libiconv support.