qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [RFC PATCH v2 19/37] kconfig: introduce kconfig files


From: Thomas Huth
Subject: Re: [Qemu-devel] [RFC PATCH v2 19/37] kconfig: introduce kconfig files
Date: Wed, 16 Jan 2019 15:06:33 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1

On 2019-01-16 11:44, Thomas Huth wrote:
> On 2019-01-15 15:10, Yang Zhong wrote:
>> From: Paolo Bonzini <address@hidden>
>>
>> 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 <address@hidden>
>> Signed-off-by: Yang Zhong <address@hidden>
>> ---
>>  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 via email to

[Prev in Thread] Current Thread [Next in Thread]