[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 1/9] configure: add --target-list-exclude
From: |
Alex Bennée |
Subject: |
[Qemu-devel] [PULL 1/9] configure: add --target-list-exclude |
Date: |
Mon, 25 Mar 2019 13:20:01 +0000 |
This is an inverse selection which excludes a selected set of targets
from the default target list. It will mostly be useful for CI
configurations but it might be useful for some users as well.
You cannot specify --target-list and --target-list-exclude at the same
time.
Signed-off-by: Alex Bennée <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
Tested-by: Wainer dos Santos Moschetta <address@hidden>
diff --git a/configure b/configure
index c5032425e6..1c563a7027 100755
--- a/configure
+++ b/configure
@@ -327,6 +327,7 @@ git="git"
# Don't accept a target_list environment variable.
unset target_list
+unset target_list_exclude
# Default value for a variable defining feature "foo".
# * foo="no" feature will only be used if --enable-foo arg is given
@@ -990,6 +991,14 @@ for opt do
--cpu=*)
;;
--target-list=*) target_list="$optarg"
+ if test "$target_list_exclude"; then
+ error_exit "Can't mix --target-list with
--target-list-exclude"
+ fi
+ ;;
+ --target-list-exclude=*) target_list_exclude="$optarg"
+ if test "$target_list"; then
+ error_exit "Can't mix --target-list-exclude with
--target-list"
+ fi
;;
--enable-trace-backends=*) trace_backends="$optarg"
;;
@@ -1601,9 +1610,26 @@ if [ "$bsd_user" = "yes" ]; then
mak_wilds="${mak_wilds} $source_path/default-configs/*-bsd-user.mak"
fi
-for config in $mak_wilds; do
- default_target_list="${default_target_list} $(basename "$config" .mak)"
-done
+if test -z "$target_list_exclude"; then
+ for config in $mak_wilds; do
+ default_target_list="${default_target_list} $(basename "$config" .mak)"
+ done
+else
+ exclude_list=$(echo "$target_list_exclude" | sed -e 's/,/ /g')
+ for config in $mak_wilds; do
+ target="$(basename "$config" .mak)"
+ exclude="no"
+ for excl in $exclude_list; do
+ if test "$excl" = "$target"; then
+ exclude="yes"
+ break;
+ fi
+ done
+ if test "$exclude" = "no"; then
+ default_target_list="${default_target_list} $target"
+ fi
+ done
+fi
# Enumerate public trace backends for --help output
trace_backend_list=$(echo $(grep -le '^PUBLIC = True$'
"$source_path"/scripts/tracetool/backend/*.py | sed -e
's/^.*\/\(.*\)\.py$/\1/'))
@@ -1622,6 +1648,7 @@ Standard options:
--target-list=LIST set target list (default: build everything)
$(echo Available targets: $default_target_list | \
fold -s -w 53 | sed -e 's/^/ /')
+ --target-list-exclude=LIST exclude a set of targets from the default
target-list
Advanced options (experts only):
--source-path=PATH path of source code [$source_path]
--
2.20.1
- [Qemu-devel] [PULL 0/9 for 4.0] fpu and testing fixes, Alex Bennée, 2019/03/25
- [Qemu-devel] [PULL 1/9] configure: add --target-list-exclude,
Alex Bennée <=
- [Qemu-devel] [PULL 3/9] .travis.yml: --disable-user for --without-default-devices, Alex Bennée, 2019/03/25
- [Qemu-devel] [PULL 2/9] .travis.yml: split some more system builds, Alex Bennée, 2019/03/25
- [Qemu-devel] [PULL 4/9] .travis.yml: reduce number of targets built while disabling things, Alex Bennée, 2019/03/25
- [Qemu-devel] [PULL 7/9] docker: Fix travis.py parser and misc change, Alex Bennée, 2019/03/25
- [Qemu-devel] [PULL 6/9] hardfloat: fix float32/64 fused multiply-add, Alex Bennée, 2019/03/25
- [Qemu-devel] [PULL 5/9] target/mips: Fix minor bug in FPU, Alex Bennée, 2019/03/25
- [Qemu-devel] [PULL 8/9] docker: Fix travis script unable to find source dir, Alex Bennée, 2019/03/25
- [Qemu-devel] [PULL 9/9] docker: trivial changes to `make docker` help, Alex Bennée, 2019/03/25
- Re: [Qemu-devel] [PULL 0/9 for 4.0] fpu and testing fixes, Peter Maydell, 2019/03/25