On Mon, Feb 26, 2024 at 08:12:15PM +1000, Nicholas Piggin wrote:
> configure will accept an unknown arch, and if it is the name of a
> directory in the source tree the command will silently succeed. Make
> it only accept supported arch names.
>
> Also print the full path of a missing test directory to disambiguate
> the error in out of tree builds.
>
> Cc: Alexandru Elisei
> Cc: Andrew Jones
> Cc: Claudio Imbrenda
> Cc: David Hildenbrand
> Cc: Eric Auger
> Cc: Janosch Frank
> Cc: Laurent Vivier
> Cc: Nico Böhr
> Cc: Paolo Bonzini
> Cc: Thomas Huth
> Cc: k...@vger.kernel.org
> Cc: linux-s...@vger.kernel.org
> Cc: kvm...@lists.linux.dev
> Cc: kvm-ri...@lists.infradead.org
> Cc: linuxppc-dev@lists.ozlabs.org
> Signed-off-by: Nicholas Piggin
> ---
> configure | 11 ---
> 1 file changed, 8 insertions(+), 3 deletions(-)
>
> diff --git a/configure b/configure
> index 6907ccbbb..ae522c556 100755
> --- a/configure
> +++ b/configure
> @@ -45,7 +45,8 @@ usage() {
> Usage: $0 [options]
>
> Options include:
> - --arch=ARCHarchitecture to compile for ($arch)
> + --arch=ARCHarchitecture to compile for ($arch). ARCH
> can be one of:
> +arm, arm64, i386, ppc64, riscv32, riscv64,
> s390x, x86_64
> --processor=PROCESSOR processor to compile for ($arch)
> --target=TARGETtarget platform that the tests will be
> running on (qemu or
> kvmtool, default is qemu) (arm/arm64 only)
> @@ -321,11 +322,15 @@ elif [ "$arch" = "ppc64" ]; then
> elif [ "$arch" = "riscv32" ] || [ "$arch" = "riscv64" ]; then
> testdir=riscv
> arch_libdir=riscv
> +elif [ "$arch" = "s390x" ]; then
> +testdir=s390x
> else
> -testdir=$arch
> +echo "arch $arch is not supported!"
> +arch=
> +usage
> fi
> if [ ! -d "$srcdir/$testdir" ]; then
> -echo "$testdir does not exist!"
> +echo "$srcdir/$testdir does not exist!"
> exit 1
> fi
>
> --
> 2.42.0
>
Reviewed-by: Andrew Jones