All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paolo Bonzini <pbonzini@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Thomas Huth" <thuth@redhat.com>,
	"Alex Bennée" <alex.bennee@linaro.org>,
	"Philippe Mathieu-Daudé" <f4bug@amsat.org>
Subject: [PULL 44/48] meson: Introduce target-specific Kconfig
Date: Thu,  8 Jul 2021 17:17:44 +0200	[thread overview]
Message-ID: <20210708151748.408754-45-pbonzini@redhat.com> (raw)
In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com>

From: Philippe Mathieu-Daudé <f4bug@amsat.org>

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>
---
 Kconfig                   |  1 +
 meson.build               |  3 ++-
 target/Kconfig            | 19 +++++++++++++++++++
 target/alpha/Kconfig      |  2 ++
 target/arm/Kconfig        |  6 ++++++
 target/avr/Kconfig        |  2 ++
 target/cris/Kconfig       |  2 ++
 target/hppa/Kconfig       |  2 ++
 target/i386/Kconfig       |  5 +++++
 target/m68k/Kconfig       |  2 ++
 target/microblaze/Kconfig |  2 ++
 target/mips/Kconfig       |  6 ++++++
 target/nios2/Kconfig      |  2 ++
 target/openrisc/Kconfig   |  2 ++
 target/ppc/Kconfig        |  5 +++++
 target/riscv/Kconfig      |  5 +++++
 target/rx/Kconfig         |  2 ++
 target/s390x/Kconfig      |  2 ++
 target/sh4/Kconfig        |  2 ++
 target/sparc/Kconfig      |  5 +++++
 target/tricore/Kconfig    |  2 ++
 target/xtensa/Kconfig     |  2 ++
 22 files changed, 80 insertions(+), 1 deletion(-)
 create mode 100644 target/Kconfig
 create mode 100644 target/alpha/Kconfig
 create mode 100644 target/arm/Kconfig
 create mode 100644 target/avr/Kconfig
 create mode 100644 target/cris/Kconfig
 create mode 100644 target/hppa/Kconfig
 create mode 100644 target/i386/Kconfig
 create mode 100644 target/m68k/Kconfig
 create mode 100644 target/microblaze/Kconfig
 create mode 100644 target/mips/Kconfig
 create mode 100644 target/nios2/Kconfig
 create mode 100644 target/openrisc/Kconfig
 create mode 100644 target/ppc/Kconfig
 create mode 100644 target/riscv/Kconfig
 create mode 100644 target/rx/Kconfig
 create mode 100644 target/s390x/Kconfig
 create mode 100644 target/sh4/Kconfig
 create mode 100644 target/sparc/Kconfig
 create mode 100644 target/tricore/Kconfig
 create mode 100644 target/xtensa/Kconfig

diff --git a/Kconfig b/Kconfig
index d52ebd839b..fb6a24a2de 100644
--- a/Kconfig
+++ b/Kconfig
@@ -1,5 +1,6 @@
 source Kconfig.host
 source backends/Kconfig
 source accel/Kconfig
+source target/Kconfig
 source hw/Kconfig
 source semihosting/Kconfig
diff --git a/meson.build b/meson.build
index 5a56e3fe2f..d82f7a789d 100644
--- a/meson.build
+++ b/meson.build
@@ -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)
diff --git a/target/Kconfig b/target/Kconfig
new file mode 100644
index 0000000000..ae7f24fc66
--- /dev/null
+++ b/target/Kconfig
@@ -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
diff --git a/target/alpha/Kconfig b/target/alpha/Kconfig
new file mode 100644
index 0000000000..267222c05b
--- /dev/null
+++ b/target/alpha/Kconfig
@@ -0,0 +1,2 @@
+config ALPHA
+    bool
diff --git a/target/arm/Kconfig b/target/arm/Kconfig
new file mode 100644
index 0000000000..3f3394a22b
--- /dev/null
+++ b/target/arm/Kconfig
@@ -0,0 +1,6 @@
+config ARM
+    bool
+
+config AARCH64
+    bool
+    select ARM
diff --git a/target/avr/Kconfig b/target/avr/Kconfig
new file mode 100644
index 0000000000..155592d353
--- /dev/null
+++ b/target/avr/Kconfig
@@ -0,0 +1,2 @@
+config AVR
+    bool
diff --git a/target/cris/Kconfig b/target/cris/Kconfig
new file mode 100644
index 0000000000..3fdc309fbb
--- /dev/null
+++ b/target/cris/Kconfig
@@ -0,0 +1,2 @@
+config CRIS
+    bool
diff --git a/target/hppa/Kconfig b/target/hppa/Kconfig
new file mode 100644
index 0000000000..395a35d799
--- /dev/null
+++ b/target/hppa/Kconfig
@@ -0,0 +1,2 @@
+config HPPA
+    bool
diff --git a/target/i386/Kconfig b/target/i386/Kconfig
new file mode 100644
index 0000000000..ce6968906e
--- /dev/null
+++ b/target/i386/Kconfig
@@ -0,0 +1,5 @@
+config I386
+    bool
+
+config X86_64
+    bool
diff --git a/target/m68k/Kconfig b/target/m68k/Kconfig
new file mode 100644
index 0000000000..23debad519
--- /dev/null
+++ b/target/m68k/Kconfig
@@ -0,0 +1,2 @@
+config M68K
+    bool
diff --git a/target/microblaze/Kconfig b/target/microblaze/Kconfig
new file mode 100644
index 0000000000..a5410d9218
--- /dev/null
+++ b/target/microblaze/Kconfig
@@ -0,0 +1,2 @@
+config MICROBLAZE
+    bool
diff --git a/target/mips/Kconfig b/target/mips/Kconfig
new file mode 100644
index 0000000000..6adf145354
--- /dev/null
+++ b/target/mips/Kconfig
@@ -0,0 +1,6 @@
+config MIPS
+    bool
+
+config MIPS64
+    bool
+    select MIPS
diff --git a/target/nios2/Kconfig b/target/nios2/Kconfig
new file mode 100644
index 0000000000..1529ab8950
--- /dev/null
+++ b/target/nios2/Kconfig
@@ -0,0 +1,2 @@
+config NIOS2
+    bool
diff --git a/target/openrisc/Kconfig b/target/openrisc/Kconfig
new file mode 100644
index 0000000000..e0da4ac1df
--- /dev/null
+++ b/target/openrisc/Kconfig
@@ -0,0 +1,2 @@
+config OPENRISC
+    bool
diff --git a/target/ppc/Kconfig b/target/ppc/Kconfig
new file mode 100644
index 0000000000..3ff152051a
--- /dev/null
+++ b/target/ppc/Kconfig
@@ -0,0 +1,5 @@
+config PPC
+    bool
+
+config PPC64
+    bool
diff --git a/target/riscv/Kconfig b/target/riscv/Kconfig
new file mode 100644
index 0000000000..b9e5932f13
--- /dev/null
+++ b/target/riscv/Kconfig
@@ -0,0 +1,5 @@
+config RISCV32
+    bool
+
+config RISCV64
+    bool
diff --git a/target/rx/Kconfig b/target/rx/Kconfig
new file mode 100644
index 0000000000..aceb5ed28f
--- /dev/null
+++ b/target/rx/Kconfig
@@ -0,0 +1,2 @@
+config RX
+    bool
diff --git a/target/s390x/Kconfig b/target/s390x/Kconfig
new file mode 100644
index 0000000000..72da48136c
--- /dev/null
+++ b/target/s390x/Kconfig
@@ -0,0 +1,2 @@
+config S390X
+    bool
diff --git a/target/sh4/Kconfig b/target/sh4/Kconfig
new file mode 100644
index 0000000000..2397c86028
--- /dev/null
+++ b/target/sh4/Kconfig
@@ -0,0 +1,2 @@
+config SH4
+    bool
diff --git a/target/sparc/Kconfig b/target/sparc/Kconfig
new file mode 100644
index 0000000000..70cc0f3a21
--- /dev/null
+++ b/target/sparc/Kconfig
@@ -0,0 +1,5 @@
+config SPARC
+    bool
+
+config SPARC64
+    bool
diff --git a/target/tricore/Kconfig b/target/tricore/Kconfig
new file mode 100644
index 0000000000..9313409309
--- /dev/null
+++ b/target/tricore/Kconfig
@@ -0,0 +1,2 @@
+config TRICORE
+    bool
diff --git a/target/xtensa/Kconfig b/target/xtensa/Kconfig
new file mode 100644
index 0000000000..a3c8dc7f6d
--- /dev/null
+++ b/target/xtensa/Kconfig
@@ -0,0 +1,2 @@
+config XTENSA
+    bool
-- 
2.31.1




  parent reply	other threads:[~2021-07-08 15:48 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-08 15:17 [PULL 00/48] Misc patches for QEMU 6.1 soft freeze Paolo Bonzini
2021-07-08 15:17 ` [PULL 01/48] configure: fix libdaxctl options Paolo Bonzini
2021-07-08 15:17 ` [PULL 02/48] configure: fix libpmem configuration option Paolo Bonzini
2021-07-08 15:17 ` [PULL 03/48] meson: fix missing preprocessor symbols Paolo Bonzini
2021-07-08 15:17 ` [PULL 04/48] osdep: fix HAVE_BROKEN_SIZE_MAX case Paolo Bonzini
2021-07-08 15:17 ` [PULL 05/48] modules: add modinfo macros Paolo Bonzini
2021-07-08 15:17 ` [PULL 06/48] modules: collect module meta-data Paolo Bonzini
2021-07-08 15:17 ` [PULL 07/48] modules: generate modinfo.c Paolo Bonzini
2021-07-08 15:17 ` [PULL 08/48] modules: check if all dependencies can be satisfied Paolo Bonzini
2021-07-08 15:17 ` [PULL 09/48] modules: add qxl module annotations Paolo Bonzini
2021-07-08 15:17 ` [PULL 10/48] modules: add virtio-gpu " Paolo Bonzini
2021-07-08 15:17 ` [PULL 11/48] modules: add chardev " Paolo Bonzini
2021-07-08 15:17 ` [PULL 12/48] modules: add audio " Paolo Bonzini
2021-07-08 15:17 ` [PULL 13/48] modules: add usb-redir " Paolo Bonzini
2021-07-08 15:17 ` [PULL 14/48] modules: add ccid " Paolo Bonzini
2021-07-08 15:17 ` [PULL 15/48] modules: add ui " Paolo Bonzini
2021-07-08 15:17 ` [PULL 16/48] modules: add s390x " Paolo Bonzini
2021-07-08 15:17 ` [PULL 17/48] modules: add block " Paolo Bonzini
2021-07-08 15:17 ` [PULL 18/48] modules: use modinfo for dependencies Paolo Bonzini
2021-07-08 15:17 ` [PULL 19/48] modules: use modinfo for qom load Paolo Bonzini
2021-07-08 15:17 ` [PULL 20/48] modules: use modinfo for qemu opts load Paolo Bonzini
2021-07-08 15:17 ` [PULL 21/48] modules: add tracepoints Paolo Bonzini
2021-07-08 15:17 ` [PULL 22/48] modules: check arch and block load on mismatch Paolo Bonzini
2021-07-08 15:17 ` [PULL 23/48] modules: check arch on qom lookup Paolo Bonzini
2021-07-08 15:17 ` [PULL 24/48] modules: target-specific module build infrastructure Paolo Bonzini
2021-07-08 15:17 ` [PULL 25/48] modules: add documentation for module sourcesets Paolo Bonzini
2021-07-08 15:17 ` [PULL 26/48] modules: add module_obj() note to QOM docs Paolo Bonzini
2021-07-08 15:17 ` [PULL 27/48] modules: module.h kerneldoc annotations Paolo Bonzini
2021-07-08 15:17 ` [PULL 28/48] modules: hook up modules.h to docs build Paolo Bonzini
2021-07-08 15:17 ` [PULL 29/48] accel: autoload modules Paolo Bonzini
2021-07-08 15:17 ` [PULL 30/48] accel: add qtest module annotations Paolo Bonzini
2021-07-08 15:17 ` [PULL 31/48] accel: build qtest modular Paolo Bonzini
2021-07-08 15:17 ` [PULL 32/48] accel: add tcg module annotations Paolo Bonzini
2021-07-08 15:17 ` [PULL 33/48] accel: build tcg modular Paolo Bonzini
2021-07-08 15:17 ` [PULL 34/48] monitor: allow register hmp commands Paolo Bonzini
2021-07-08 15:17 ` [PULL 35/48] usb: drop usb_host_dev_is_scsi_storage hook Paolo Bonzini
2021-07-08 15:17 ` [PULL 36/48] monitor/usb: register 'info usbhost' dynamically Paolo Bonzini
2021-07-08 15:17 ` [PULL 37/48] usb: build usb-host as module Paolo Bonzini
2021-07-22 14:10   ` Peter Krempa
2021-07-23  6:18     ` Gerd Hoffmann
2021-07-08 15:17 ` [PULL 38/48] monitor/tcg: move tcg hmp commands to accel/tcg, register them dynamically Paolo Bonzini
2021-07-08 15:17 ` [PULL 39/48] target/i386: Added MSRPM and IOPM size check Paolo Bonzini
2021-07-08 15:17 ` [PULL 40/48] target/i386: Added DR6 and DR7 consistency checks Paolo Bonzini
2021-07-08 15:17 ` [PULL 41/48] target/i386: fix exceptions for MOV to DR Paolo Bonzini
2021-07-08 15:17 ` [PULL 42/48] vl: fix leak of qdict_crumple return value Paolo Bonzini
2021-07-08 15:17 ` [PULL 43/48] meson: switch function tests from compilation to linking Paolo Bonzini
2021-07-08 15:17 ` Paolo Bonzini [this message]
2021-07-17 22:59   ` [PULL 44/48] meson: Introduce target-specific Kconfig Peter Maydell
2021-07-19 19:15     ` Peter Maydell
2021-07-08 15:17 ` [PULL 45/48] hw/arm: add dependency on OR_IRQ for XLNX_VERSAL Paolo Bonzini
2021-07-08 15:17 ` [PULL 46/48] hw/arm: move CONFIG_V7M out of default-devices Paolo Bonzini
2021-07-08 15:17 ` [PULL 47/48] configs: rename default-configs to configs and reorganise Paolo Bonzini
2021-07-08 15:17 ` [PULL 48/48] configure: allow the selection of alternate config in the build Paolo Bonzini
2021-07-09 15:45 ` [PULL 00/48] Misc patches for QEMU 6.1 soft freeze Peter Maydell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210708151748.408754-45-pbonzini@redhat.com \
    --to=pbonzini@redhat.com \
    --cc=alex.bennee@linaro.org \
    --cc=f4bug@amsat.org \
    --cc=qemu-devel@nongnu.org \
    --cc=thuth@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.