meson: Introduce target-specific Kconfig

Add a target-specific Kconfig. We need the definitions in Kconfig so
the minikconf tool can verify they exits. However CONFIG_FOO is only
enabled for target foo via the meson.build rules.

Two architecture have a particularity, ARM and MIPS. As their
translators have been split you can potentially build a plain 32 bit
build along with a 64-bit version including the 32-bit subset.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20210131111316.232778-6-f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20210707131744.26027-2-alex.bennee@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Philippe Mathieu-Daudé 2021-07-07 14:17:40 +01:00 committed by Paolo Bonzini
parent 904ad5ec15
commit f4063f9c31
22 changed files with 80 additions and 1 deletions

View File

@ -1,5 +1,6 @@
source Kconfig.host
source backends/Kconfig
source accel/Kconfig
source target/Kconfig
source hw/Kconfig
source semihosting/Kconfig

View File

@ -1604,7 +1604,8 @@ foreach target : target_dirs
command: [minikconf,
get_option('default_devices') ? '--defconfig' : '--allnoconfig',
config_devices_mak, '@DEPFILE@', '@INPUT@',
host_kconfig, accel_kconfig])
host_kconfig, accel_kconfig,
'CONFIG_' + config_target['TARGET_ARCH'].to_upper() + '=y'])
config_devices_data = configuration_data()
config_devices = keyval.load(config_devices_mak)

19
target/Kconfig Normal file
View File

@ -0,0 +1,19 @@
source alpha/Kconfig
source arm/Kconfig
source avr/Kconfig
source cris/Kconfig
source hppa/Kconfig
source i386/Kconfig
source m68k/Kconfig
source microblaze/Kconfig
source mips/Kconfig
source nios2/Kconfig
source openrisc/Kconfig
source ppc/Kconfig
source riscv/Kconfig
source rx/Kconfig
source s390x/Kconfig
source sh4/Kconfig
source sparc/Kconfig
source tricore/Kconfig
source xtensa/Kconfig

2
target/alpha/Kconfig Normal file
View File

@ -0,0 +1,2 @@
config ALPHA
bool

6
target/arm/Kconfig Normal file
View File

@ -0,0 +1,6 @@
config ARM
bool
config AARCH64
bool
select ARM

2
target/avr/Kconfig Normal file
View File

@ -0,0 +1,2 @@
config AVR
bool

2
target/cris/Kconfig Normal file
View File

@ -0,0 +1,2 @@
config CRIS
bool

2
target/hppa/Kconfig Normal file
View File

@ -0,0 +1,2 @@
config HPPA
bool

5
target/i386/Kconfig Normal file
View File

@ -0,0 +1,5 @@
config I386
bool
config X86_64
bool

2
target/m68k/Kconfig Normal file
View File

@ -0,0 +1,2 @@
config M68K
bool

View File

@ -0,0 +1,2 @@
config MICROBLAZE
bool

6
target/mips/Kconfig Normal file
View File

@ -0,0 +1,6 @@
config MIPS
bool
config MIPS64
bool
select MIPS

2
target/nios2/Kconfig Normal file
View File

@ -0,0 +1,2 @@
config NIOS2
bool

2
target/openrisc/Kconfig Normal file
View File

@ -0,0 +1,2 @@
config OPENRISC
bool

5
target/ppc/Kconfig Normal file
View File

@ -0,0 +1,5 @@
config PPC
bool
config PPC64
bool

5
target/riscv/Kconfig Normal file
View File

@ -0,0 +1,5 @@
config RISCV32
bool
config RISCV64
bool

2
target/rx/Kconfig Normal file
View File

@ -0,0 +1,2 @@
config RX
bool

2
target/s390x/Kconfig Normal file
View File

@ -0,0 +1,2 @@
config S390X
bool

2
target/sh4/Kconfig Normal file
View File

@ -0,0 +1,2 @@
config SH4
bool

5
target/sparc/Kconfig Normal file
View File

@ -0,0 +1,5 @@
config SPARC
bool
config SPARC64
bool

2
target/tricore/Kconfig Normal file
View File

@ -0,0 +1,2 @@
config TRICORE
bool

2
target/xtensa/Kconfig Normal file
View File

@ -0,0 +1,2 @@
config XTENSA
bool