All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Huth <thuth@redhat.com>
To: Yang Zhong <yang.zhong@intel.com>, qemu-devel@nongnu.org
Cc: peter.maydell@linaro.org, sameo@linux.intel.com,
	ehabkost@redhat.com, pbonzini@redhat.com
Subject: Re: [Qemu-devel] [RFC PATCH v2 19/37] kconfig: introduce kconfig files
Date: Wed, 16 Jan 2019 15:06:33 +0100	[thread overview]
Message-ID: <75ae9c60-de5f-3e69-f8af-94f3bc8d1db7@redhat.com> (raw)
In-Reply-To: <8c5e79dd-b177-44fb-4a3d-7aa55216d13d@redhat.com>

On 2019-01-16 11:44, Thomas Huth wrote:
> On 2019-01-15 15:10, Yang Zhong wrote:
>> From: Paolo Bonzini <pbonzini@redhat.com>
>>
>> The Kconfig files were generated mostly with this script:
>>
>>   for i in `grep -ho CONFIG_[A-Z0-9_]* default-configs/* | sort -u`; do
>>     set fnord `git grep -lw $i -- 'hw/*/Makefile.objs' `
>>     shift
>>     if test $# = 1; then
>>       cat >> $(dirname $1)/Kconfig << EOF
>> config ${i#CONFIG_}
>>     bool
>>
>> EOF
>>       git add $(dirname $1)/Kconfig
>>     else
>>       echo $i $*
>>     fi
>>   done
>>   sed -i '$d' hw/*/Kconfig
>>   for i in hw/*; do
>>     if test -d $i && ! test -f $i/Kconfig; then
>>       touch $i/Kconfig
>>       git add $i/Kconfig
>>     fi
>>   done
>>
>> Whenever a symbol is referenced from multiple subdirectories, the
>> script prints the list of directories that reference the symbol.
>> These symbols have to be added manually to the Kconfig files.
>>
>> Kconfig.host and hw/Kconfig were created manually.
>>
>> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
>> Signed-off-by: Yang Zhong <yang.zhong@intel.com>
>> ---
>>  Kconfig.host          | 17 ++++++++
>>  hw/9pfs/Kconfig       |  2 +
>>  hw/Kconfig            | 60 ++++++++++++++++++++++++++
>>  hw/acpi/Kconfig       | 23 ++++++++++
>>  hw/adc/Kconfig        |  2 +
>>  hw/arm/Kconfig        | 98 +++++++++++++++++++++++++++++++++++++++++++
>>  hw/audio/Kconfig      | 35 ++++++++++++++++
>>  hw/block/Kconfig      | 29 +++++++++++++
>>  hw/bt/Kconfig         |  2 +
>>  hw/char/Kconfig       | 32 ++++++++++++++
>>  hw/core/Kconfig       | 11 +++++
>>  hw/cpu/Kconfig        |  8 ++++
>>  hw/display/Kconfig    | 77 ++++++++++++++++++++++++++++++++++
>>  hw/dma/Kconfig        | 20 +++++++++
>>  hw/gpio/Kconfig       |  8 ++++
>>  hw/hyperv/Kconfig     |  5 +++
>>  hw/i2c/Kconfig        | 20 +++++++++
>>  hw/i386/Kconfig       | 23 ++++++++++
>>  hw/ide/Kconfig        | 35 ++++++++++++++++
>>  hw/input/Kconfig      | 23 ++++++++++
>>  hw/intc/Kconfig       | 47 +++++++++++++++++++++
>>  hw/ipack/Kconfig      |  2 +
>>  hw/ipmi/Kconfig       | 14 +++++++
>>  hw/isa/Kconfig        | 23 ++++++++++
>>  hw/lm32/Kconfig       |  5 +++
>>  hw/m68k/Kconfig       |  8 ++++
>>  hw/mem/Kconfig        |  8 ++++
>>  hw/microblaze/Kconfig |  8 ++++
>>  hw/mips/Kconfig       | 20 +++++++++
>>  hw/misc/Kconfig       | 92 ++++++++++++++++++++++++++++++++++++++++
>>  hw/misc/macio/Kconfig | 11 +++++
>>  hw/net/Kconfig        | 92 ++++++++++++++++++++++++++++++++++++++++
>>  hw/nios2/Kconfig      |  2 +
>>  hw/nvram/Kconfig      |  8 ++++
>>  hw/pci-bridge/Kconfig | 20 +++++++++
>>  hw/pci-host/Kconfig   | 35 ++++++++++++++++
>>  hw/pci/Kconfig        |  2 +
>>  hw/pcmcia/Kconfig     |  2 +
>>  hw/ppc/Kconfig        | 38 +++++++++++++++++
>>  hw/riscv/Kconfig      | 14 +++++++
>>  hw/scsi/Kconfig       | 26 ++++++++++++
>>  hw/sd/Kconfig         | 11 +++++
>>  hw/sh4/Kconfig        |  8 ++++
>>  hw/smbios/Kconfig     |  2 +
>>  hw/sparc/Kconfig      |  5 +++
>>  hw/sparc64/Kconfig    |  5 +++
>>  hw/ssi/Kconfig        | 14 +++++++
>>  hw/timer/Kconfig      | 53 +++++++++++++++++++++++
>>  hw/tpm/Kconfig        | 14 +++++++
>>  hw/usb/Kconfig        | 53 +++++++++++++++++++++++
>>  hw/vfio/Kconfig       | 11 +++++
>>  hw/virtio/Kconfig     | 17 ++++++++
>>  hw/watchdog/Kconfig   | 11 +++++
>>  hw/xtensa/Kconfig     |  5 +++
>>  54 files changed, 1216 insertions(+)
>>  create mode 100644 Kconfig.host
>>  create mode 100644 hw/9pfs/Kconfig
>>  create mode 100644 hw/Kconfig
>>  create mode 100644 hw/acpi/Kconfig
>>  create mode 100644 hw/adc/Kconfig
>>  create mode 100644 hw/arm/Kconfig
>>  create mode 100644 hw/audio/Kconfig
>>  create mode 100644 hw/block/Kconfig
>>  create mode 100644 hw/bt/Kconfig
>>  create mode 100644 hw/char/Kconfig
>>  create mode 100644 hw/core/Kconfig
>>  create mode 100644 hw/cpu/Kconfig
>>  create mode 100644 hw/display/Kconfig
>>  create mode 100644 hw/dma/Kconfig
>>  create mode 100644 hw/gpio/Kconfig
>>  create mode 100644 hw/hyperv/Kconfig
>>  create mode 100644 hw/i2c/Kconfig
>>  create mode 100644 hw/i386/Kconfig
>>  create mode 100644 hw/ide/Kconfig
>>  create mode 100644 hw/input/Kconfig
>>  create mode 100644 hw/intc/Kconfig
>>  create mode 100644 hw/ipack/Kconfig
>>  create mode 100644 hw/ipmi/Kconfig
>>  create mode 100644 hw/isa/Kconfig
>>  create mode 100644 hw/lm32/Kconfig
>>  create mode 100644 hw/m68k/Kconfig
>>  create mode 100644 hw/mem/Kconfig
>>  create mode 100644 hw/microblaze/Kconfig
>>  create mode 100644 hw/mips/Kconfig
>>  create mode 100644 hw/misc/Kconfig
>>  create mode 100644 hw/misc/macio/Kconfig
>>  create mode 100644 hw/net/Kconfig
>>  create mode 100644 hw/nios2/Kconfig
>>  create mode 100644 hw/nvram/Kconfig
>>  create mode 100644 hw/pci-bridge/Kconfig
>>  create mode 100644 hw/pci-host/Kconfig
>>  create mode 100644 hw/pci/Kconfig
>>  create mode 100644 hw/pcmcia/Kconfig
>>  create mode 100644 hw/ppc/Kconfig
>>  create mode 100644 hw/riscv/Kconfig
>>  create mode 100644 hw/scsi/Kconfig
>>  create mode 100644 hw/sd/Kconfig
>>  create mode 100644 hw/sh4/Kconfig
>>  create mode 100644 hw/smbios/Kconfig
>>  create mode 100644 hw/sparc/Kconfig
>>  create mode 100644 hw/sparc64/Kconfig
>>  create mode 100644 hw/ssi/Kconfig
>>  create mode 100644 hw/timer/Kconfig
>>  create mode 100644 hw/tpm/Kconfig
>>  create mode 100644 hw/usb/Kconfig
>>  create mode 100644 hw/vfio/Kconfig
>>  create mode 100644 hw/virtio/Kconfig
>>  create mode 100644 hw/watchdog/Kconfig
>>  create mode 100644 hw/xtensa/Kconfig
>>
>> diff --git a/Kconfig.host b/Kconfig.host
>> new file mode 100644
>> index 0000000000..2136a4c3ec
>> --- /dev/null
>> +++ b/Kconfig.host
>> @@ -0,0 +1,17 @@
>> +# These are "proxy" symbols used to pass config-host.mak values
>> +# down to Kconfig.
>> +
>> +config KVM
>> +    bool
>> +
>> +config OPENGL
>> +    bool
>> +
>> +config SPICE
>> +    bool
>> +
>> +config TPM
>> +    bool
>> +
>> +config XEN
>> +    bool
>> diff --git a/hw/9pfs/Kconfig b/hw/9pfs/Kconfig
>> new file mode 100644
>> index 0000000000..a4750999d9
>> --- /dev/null
>> +++ b/hw/9pfs/Kconfig
>> @@ -0,0 +1,2 @@
>> +config VIRTIO_9P
>> +    bool
>> diff --git a/hw/Kconfig b/hw/Kconfig
>> new file mode 100644
>> index 0000000000..55743a958a
>> --- /dev/null
>> +++ b/hw/Kconfig
>> @@ -0,0 +1,60 @@
>> +# devices Kconfig
>> +source 9pfs/Kconfig
>> +source acpi/Kconfig
>> +source audio/Kconfig
>> +source block/Kconfig
>> +source bt/Kconfig
>> +source char/Kconfig
>> +source core/Kconfig
>> +source display/Kconfig
>> +source dma/Kconfig
>> +source gpio/Kconfig
>> +source i2c/Kconfig
>> +source ide/Kconfig
>> +source input/Kconfig
>> +source intc/Kconfig
>> +source ipack/Kconfig
>> +source isa/Kconfig
>> +source mem/Kconfig
>> +source misc/Kconfig
>> +source net/Kconfig
>> +source nvram/Kconfig
>> +source pci-bridge/Kconfig
>> +source pci-host/Kconfig
>> +source pci/Kconfig
>> +source scsi/Kconfig
>> +source sd/Kconfig
>> +source ssi/Kconfig
>> +source timer/Kconfig
>> +source tpm/Kconfig
>> +source usb/Kconfig
>> +source virtio/Kconfig
>> +source watchdog/Kconfig
>> +source smbios/Kconfig
>> +source ipmi/Kconfig
>> +source vfio/Kconfig
>> +source adc/Kconfig
>> +source pcmcia/Kconfig
>> +source hyperv/Kconfig
> 
> Could you please sort the last 5 entries alphabetically into the list?
> 
>> +# arch Kconfig
>> +source i386/Kconfig
>> +source arm/Kconfig
>> +source m68k/Kconfig
>> +source microblaze/Kconfig
>> +source mips/Kconfig
>> +source ppc/Kconfig
>> +source sh4/Kconfig
>> +source sparc/Kconfig
>> +source sparc64/Kconfig
>> +source lm32/Kconfig
>> +source xtensa/Kconfig
>> +source nios2/Kconfig
>> +source riscv/Kconfig
> 
> dito, please sort last 4 entries alphabetically into the list.
> 
> Apart from that, patch looks good to me.

FWIW, looks like we still need alpha/Kconfig, cris/Kconfig,
hppa/Kconfig, unicore32/Kconfig, tricore/Kconfig and xtensa/Kconfig ?

 Thomas

  reply	other threads:[~2019-01-16 14:06 UTC|newest]

Thread overview: 86+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-15 14:10 [Qemu-devel] [RFC PATCH v2 00/37] Support Kconfig in QEMU Yang Zhong
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 01/37] build: actually use CONFIG_PAM Yang Zhong
2019-01-15 18:02   ` Thomas Huth
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 02/37] hw/i386/Makefile.objs: Build pc_piix* and pc_q35 boards Yang Zhong
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 03/37] hw/arm/Makefile.objs: CONFIG_VIRT created for virt board Yang Zhong
2019-01-16  7:07   ` Thomas Huth
     [not found]   ` <bb109ff0-8475-73f6-c33d-52044de758ac@redhat.com>
2019-01-17 11:17     ` Yang Zhong
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 04/37] hw/m68k/Makefile.objs: Conditionally build boards Yang Zhong
2019-01-16  7:15   ` Thomas Huth
2019-01-17 11:33     ` Yang Zhong
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 05/37] hw/microblaze/Makefile.objs: Create configs for petalogix and xilinx boards Yang Zhong
2019-01-16  8:28   ` Thomas Huth
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 06/37] hw/mips/Makefile.objs: Create CONFIG_* for r4k, malta, mipssim boards Yang Zhong
2019-01-16  8:34   ` Thomas Huth
2019-01-17 11:44     ` Yang Zhong
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 07/37] hw/ppc/Makefile.objs: Build all boards conditinally with CONFIG_* Yang Zhong
2019-01-15 23:10   ` Paolo Bonzini
2019-01-16  8:41   ` Thomas Huth
2019-01-17 11:58     ` Yang Zhong
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 08/37] hw/sh4/Makefile.objs: New CONFIG_* varibales created for sh4 boards and device Yang Zhong
2019-01-16  8:48   ` Thomas Huth
2019-01-17 12:10     ` Yang Zhong
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 09/37] hw/sparc/Makefile.objs: CONFIG_* for sun4m and leon3 created Yang Zhong
2019-01-16  9:04   ` Thomas Huth
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 10/37] hw/lm32/Makefile.objs: Conditionally build lm32 and milkmyst Yang Zhong
2019-01-16  9:10   ` Thomas Huth
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 11/37] hw/xtensa/Makefile.objs: Build xtensa_sim and xtensa_fpga conditionally Yang Zhong
2019-01-16  9:31   ` Thomas Huth
2019-01-16 18:43   ` Max Filippov
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 12/37] hw/nios2/Makefile.objs: Conditionally build nios2 Yang Zhong
2019-01-16  9:37   ` Thomas Huth
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 13/37] hw/riscv/Makefile.objs: Create CONFIG_* for riscv boards Yang Zhong
2019-01-16  9:46   ` Thomas Huth
2019-01-16  9:46     ` [Qemu-riscv] " Thomas Huth
2019-01-17 12:36     ` Yang Zhong
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 14/37] hw/sparc64/Makefile.objs: Create CONFIG_* for sparc64 Yang Zhong
2019-01-16  9:56   ` Thomas Huth
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 15/37] minikconfig: add parser skeleton Yang Zhong
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 16/37] minikconfig: add AST Yang Zhong
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 17/37] minikconfig: add semantic analysis Yang Zhong
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 18/37] hw/display: make edid configurable Yang Zhong
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 19/37] kconfig: introduce kconfig files Yang Zhong
2019-01-16 10:44   ` Thomas Huth
2019-01-16 14:06     ` Thomas Huth [this message]
2019-01-18  6:41       ` Yang Zhong
2019-01-18  6:34     ` Yang Zhong
2019-01-17  9:17   ` Thomas Huth
2019-01-18  6:42     ` Yang Zhong
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 20/37] build: switch to Kconfig Yang Zhong
2019-01-16 11:05   ` Thomas Huth
2019-01-16 16:28   ` Thomas Huth
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 21/37] ide: express dependencies with Kconfig Yang Zhong
2019-01-16 11:21   ` Thomas Huth
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 22/37] hw/pci/Makefile.objs: make pcie configurable Yang Zhong
2019-01-16 11:23   ` Thomas Huth
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 23/37] build: convert pci.mak to Kconfig Yang Zhong
2019-01-16 11:41   ` Thomas Huth
2019-01-18  7:08     ` Yang Zhong
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 24/37] build: convert sound.mak " Yang Zhong
2019-01-16 13:48   ` Thomas Huth
2019-01-16 13:51     ` Thomas Huth
2019-01-18  7:24       ` Yang Zhong
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 25/37] build: convert usb.mak " Yang Zhong
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 26/37] scsi: express dependencies with Kconfig Yang Zhong
2019-01-16 11:50   ` Thomas Huth
2019-01-16 13:57     ` Paolo Bonzini
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 27/37] bluetooth: " Yang Zhong
2019-01-17 10:19   ` Thomas Huth
2019-01-15 14:10 ` [Qemu-devel] [RFC PATCH v2 28/37] isa: express dependencies with kconfig Yang Zhong
2019-01-17 10:25   ` Thomas Huth
2019-01-15 14:11 ` [Qemu-devel] [RFC PATCH v2 29/37] i386: express dependencies with Kconfig Yang Zhong
2019-01-15 14:11 ` [Qemu-devel] [RFC PATCH v2 30/37] i2c: " Yang Zhong
2019-01-17 10:30   ` Thomas Huth
2019-01-15 14:11 ` [Qemu-devel] [RFC PATCH v2 31/37] ptimer: " Yang Zhong
2019-01-17 10:32   ` Thomas Huth
2019-01-15 14:11 ` [Qemu-devel] [RFC PATCH v2 32/37] edid: express dependencies with kconfig Yang Zhong
2019-01-15 14:11 ` [Qemu-devel] [RFC PATCH v2 33/37] hyperv: " Yang Zhong
2019-01-15 14:11 ` [Qemu-devel] [RFC PATCH v2 34/37] virtio: make virtio dependencies with Kconfig Yang Zhong
2019-01-17 10:37   ` Thomas Huth
2019-01-15 14:11 ` [Qemu-devel] [RFC PATCH v2 35/37] i386-softmmu.mak: remove all CONFIG_* except boards definitions Yang Zhong
2019-01-17 11:03   ` Thomas Huth
2019-01-18  9:00     ` Yang Zhong
2019-01-15 14:11 ` [Qemu-devel] [RFC PATCH v2 36/37] minikconf: implement allyesconfig, allnoconfig, randconfig, defconfig Yang Zhong
2019-01-15 14:11 ` [Qemu-devel] [RFC PATCH v2 37/37] Makefile: only support defconfig Yang Zhong
2019-01-15 23:20 ` [Qemu-devel] [RFC PATCH v2 00/37] Support Kconfig in QEMU Paolo Bonzini
2019-01-16 12:52 ` Thomas Huth

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=75ae9c60-de5f-3e69-f8af-94f3bc8d1db7@redhat.com \
    --to=thuth@redhat.com \
    --cc=ehabkost@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=sameo@linux.intel.com \
    --cc=yang.zhong@intel.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.