From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45400) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ar678-0003Yz-Ek for qemu-devel@nongnu.org; Fri, 15 Apr 2016 11:56:59 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ar674-0008Vw-QZ for qemu-devel@nongnu.org; Fri, 15 Apr 2016 11:56:58 -0400 Received: from mail-wm0-x235.google.com ([2a00:1450:400c:c09::235]:38689) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ar674-0008Vf-JS for qemu-devel@nongnu.org; Fri, 15 Apr 2016 11:56:54 -0400 Received: by mail-wm0-x235.google.com with SMTP id u206so38664325wme.1 for ; Fri, 15 Apr 2016 08:56:54 -0700 (PDT) From: =?UTF-8?q?Alex=20Benn=C3=A9e?= Date: Fri, 15 Apr 2016 16:56:58 +0100 Message-Id: <1460735821-12775-2-git-send-email-alex.bennee@linaro.org> In-Reply-To: <1460735821-12775-1-git-send-email-alex.bennee@linaro.org> References: <1460735821-12775-1-git-send-email-alex.bennee@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: [Qemu-devel] [PATCH 1/4] ./configure: accept stems to match a range of targets List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Alex=20Benn=C3=A9e?= This is useful if you want to build all targets of a given architecture or type. A simple submatch to an real target will add it to the list. Signed-off-by: Alex Bennée --- configure | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/configure b/configure index 5db29f0..1e04a4f 100755 --- a/configure +++ b/configure @@ -1247,7 +1247,8 @@ Standard options: --target-list=LIST set target list (default: build everything) $(echo Available targets: $default_target_list | \ fold -s -w 53 | sed -e 's/^/ /') - + LIST can contain stems to match sets of targets + (e.g. softmmu will match all softmmu targets) Advanced options (experts only): --source-path=PATH path of source code [$source_path] --cross-prefix=PREFIX use PREFIX for compile tools [$cross_prefix] @@ -1640,15 +1641,29 @@ fi # Check that we recognised the target name; this allows a more # friendly error message than if we let it fall through. +final_target_list="" for target in $target_list; do case " $default_target_list " in *" $target "*) + final_target_list="$target $final_target_list" ;; *) - error_exit "Unknown target name '$target'" + # Maybe we can match to range of targets? + exp="no" + for match in $default_target_list; do + if test "${match#*$target}" != "$match" ; then + final_target_list="$match $final_target_list" + exp="yes" + fi + done + if test "$exp" = "no"; then + error_exit "Unknown target name '$target'" + fi ;; esac done +target_list=$final_target_list + # see if system emulation was really requested case " $target_list " in -- 2.7.4