qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 46/47] configure: Generate Kconfig.targets with


From: Paolo Bonzini
Subject: Re: [Qemu-devel] [PATCH 46/47] configure: Generate Kconfig.targets with --target-list
Date: Mon, 26 Aug 2013 13:14:19 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130805 Thunderbird/17.0.8

Il 26/08/2013 00:58, Ákos Kovács ha scritto:
> Signed-off-by: Ákos Kovács <address@hidden>
> ---
>  configure |   11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/configure b/configure
> index 18fa608..353c0cb 100755
> --- a/configure
> +++ b/configure
> @@ -4288,6 +4288,7 @@ case "$target_name" in
>    ;;
>    sparc64)
>      TARGET_BASE_ARCH=sparc
> +    kconfig_subdirs="$kconfig_subdirs sparc64"
>    ;;
>    sparc32plus)
>      TARGET_ARCH=sparc64
> @@ -4311,6 +4312,7 @@ if [ "$TARGET_BASE_ARCH" = "" ]; then
>    TARGET_BASE_ARCH=$TARGET_ARCH
>  fi
>  
> +kconfig_subdirs="$kconfig_subdirs $TARGET_BASE_ARCH"
>  symlink "$source_path/Makefile.target" "$target_dir/Makefile"
>  
>  upper() {
> @@ -4494,6 +4496,15 @@ echo "QEMU_CFLAGS+=$cflags" >> $config_target_mak
>  
>  done # for target in $targets
>  
> +# Generate Kconfig.targets
> +kconfig_targets="Kconfig.targets"
> +kconfig_subdirs=$(echo $kconfig_subdirs | tr ' ' '\n' | sort -u | tr '\n' ' 
> ')
> +echo "# Automatically generated by configure - do not modify" > 
> $kconfig_targets
> +
> +for i in $kconfig_subdirs ; do
> +  echo "source \"hw/$i/Kconfig\"" >> $kconfig_targets
> +done
> +
>  if [ "$pixman" = "internal" ]; then
>    echo "config-host.h: subdir-pixman" >> $config_host_mak
>  fi
> 

There is one issue that we have not solved yet here (pointed out by
Peter Maydell on IRC).  Right now, the presence of a file in
default-configs/ is used to check if a target name is correct.  We need
to figure out a different way to do the same thing.

This needs to cover both softmmu and user targets.  For softmmu, perhaps
there should be a hw/boards/ directory with a subdirectory for each
target.  "source hw/i386/Kconfig" (for Kconfig) or "obj-y += ../i386/"
can be used to recurse back to a common directory from there.

For linux-user, the problem is that we don't have anything to configure
with Kconfig---so no reason to have a Kconfig file or a directory
structure with one directory per target.

Paolo



reply via email to

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