diff mbox

[v2] configure: Don't implicitly hardcode list of KVM architectures

Message ID 1343998285-12848-1-git-send-email-peter.maydell@linaro.org
State Accepted
Commit 08312a63b77df45ad056d2e8d9e2cbe8f683a23c
Headers show

Commit Message

Peter Maydell Aug. 3, 2012, 12:51 p.m. UTC
The code creating the symlink from linux-headers/asm to the
architecture specific linux-headers/asm-$arch directory was
implicitly hardcoding a list of KVM supporting architectures.
Add a default case for the common "Linux architecture name and
QEMU CPU name match" case, so future architectures will only
need to add code if they've managed to get mismatched names.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
v1->v2 changes: conform to same indent rules as surrounding code

 configure |   14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

Comments

Marcelo Tosatti Aug. 3, 2012, 7:57 p.m. UTC | #1
On Fri, Aug 03, 2012 at 01:51:25PM +0100, Peter Maydell wrote:
> The code creating the symlink from linux-headers/asm to the
> architecture specific linux-headers/asm-$arch directory was
> implicitly hardcoding a list of KVM supporting architectures.
> Add a default case for the common "Linux architecture name and
> QEMU CPU name match" case, so future architectures will only
> need to add code if they've managed to get mismatched names.
> 
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
> v1->v2 changes: conform to same indent rules as surrounding code

Applied to uq/master, thanks.
Andreas Färber Aug. 4, 2012, 3:29 p.m. UTC | #2
Am 03.08.2012 14:51, schrieb Peter Maydell:
> The code creating the symlink from linux-headers/asm to the
> architecture specific linux-headers/asm-$arch directory was
> implicitly hardcoding a list of KVM supporting architectures.
> Add a default case for the common "Linux architecture name and
> QEMU CPU name match" case, so future architectures will only
> need to add code if they've managed to get mismatched names.
> 
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
> v1->v2 changes: conform to same indent rules as surrounding code

Did you send the wrong patch? ;)

Andreas

> 
>  configure |   14 +++++++++++---
>  1 file changed, 11 insertions(+), 3 deletions(-)
> 
> diff --git a/configure b/configure
> index 9f071b7..eafb81f 100755
> --- a/configure
> +++ b/configure
> @@ -3485,15 +3485,23 @@ if test "$linux" = "yes" ; then
>    mkdir -p linux-headers
>    case "$cpu" in
>    i386|x86_64)
> -    symlink "$source_path/linux-headers/asm-x86" linux-headers/asm
> +    linux_arch=x86
>      ;;
>    ppcemb|ppc|ppc64)
> -    symlink "$source_path/linux-headers/asm-powerpc" linux-headers/asm
> +    linux_arch=powerpc
>      ;;
>    s390x)
> -    symlink "$source_path/linux-headers/asm-s390" linux-headers/asm
> +    linux_arch=s390
> +    ;;
> +  *)
> +    # For most CPUs the kernel architecture name and QEMU CPU name match.
> +    linux_arch="$cpu"
>      ;;
>    esac
> +    # For non-KVM architectures we will not have asm headers
> +    if [ -e "$source_path/linux-headers/asm-$linux_arch" ]; then
> +      symlink "$source_path/linux-headers/asm-$linux_arch" linux-headers/asm
> +    fi
>  fi
>  
>  for target in $target_list; do
>
diff mbox

Patch

diff --git a/configure b/configure
index 9f071b7..eafb81f 100755
--- a/configure
+++ b/configure
@@ -3485,15 +3485,23 @@  if test "$linux" = "yes" ; then
   mkdir -p linux-headers
   case "$cpu" in
   i386|x86_64)
-    symlink "$source_path/linux-headers/asm-x86" linux-headers/asm
+    linux_arch=x86
     ;;
   ppcemb|ppc|ppc64)
-    symlink "$source_path/linux-headers/asm-powerpc" linux-headers/asm
+    linux_arch=powerpc
     ;;
   s390x)
-    symlink "$source_path/linux-headers/asm-s390" linux-headers/asm
+    linux_arch=s390
+    ;;
+  *)
+    # For most CPUs the kernel architecture name and QEMU CPU name match.
+    linux_arch="$cpu"
     ;;
   esac
+    # For non-KVM architectures we will not have asm headers
+    if [ -e "$source_path/linux-headers/asm-$linux_arch" ]; then
+      symlink "$source_path/linux-headers/asm-$linux_arch" linux-headers/asm
+    fi
 fi
 
 for target in $target_list; do