From patchwork Mon Oct 16 06:31:11 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849159 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=NSvzrMVT; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86k70hpcz20Pd for ; Mon, 16 Oct 2023 17:33:03 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH8h-0003tL-La; Mon, 16 Oct 2023 02:31:43 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8f-0003sQ-P4 for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:41 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8e-0005RV-3R for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:41 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437899; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=P/65hish4h+ImSzGo/R7iAwPvFu/GpagzDRiJtmjaPI=; b=NSvzrMVTfpCwggmGAazLbufQ0Z6Zn6FCCCKTBMXQXTe9YnltxUocJOyll/f9RLbnS5KaLv ZnezmSVB/1jQQ4CqJOu+cvvUnMGyatsbrrfEJZPC2uBrqjua3RXZBQxheVdh53eqqFHjT2 FOrY2XGMZ75EVolDyqXMh5HHl+blGKw= Received: from mail-ej1-f70.google.com (mail-ej1-f70.google.com [209.85.218.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-404-YOCIWuZXOy-nsB_XhhaPlw-1; Mon, 16 Oct 2023 02:31:33 -0400 X-MC-Unique: YOCIWuZXOy-nsB_XhhaPlw-1 Received: by mail-ej1-f70.google.com with SMTP id a640c23a62f3a-9a681c3470fso298169566b.1 for ; Sun, 15 Oct 2023 23:31:32 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437891; x=1698042691; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=P/65hish4h+ImSzGo/R7iAwPvFu/GpagzDRiJtmjaPI=; b=QF+/smCSzSDFZzNJIbyl+IEbisXo+9UEXvt59v57VCOEGGr96krhXZ59QXcVezj3Dt 6gnyrm7P3EvuebjigWblMvyq0ZYc15QXps9/Yh8Mnci+GiOS4SepTLLsVNqXTLbHFVX2 MhfyQaz0yu0BroRb6XNLBGLWdhDjpf+cKjdrn1TXuHjym6jsAdp8XKTK3fnipzQ4t5tv WwYuxLedsZ6kkFDQDRSdzxeRkycDPf7PlfJE04eSNnw0SYqQHTUa9deWIk8k4MkHMDfT xWUMcxyvDxzSpjmyWvmENLQH3jpf/iXW/tRFk0HnZCCX5+YJFfn6+OjPIRu2Gt/aKSle 24vQ== X-Gm-Message-State: AOJu0YxW3R7ZRvTxqbBYkZQz436cUvapjv7J3MO1h7dFGrLBwJ8i1vAz dLrChMv8tfjP/f4OwdkCDUUrqozyqYsyd3nNt5Jcg2slVbjuLeGfP0nnmQ9OItfN2v76lNClmcw iJ7dsOfMhNzXCWSIwOxn4v893DpvfBxjCiqq2U98Qj4Yq+qQ3hq7ZxO/cxXkWPZpM2ovZo/bCwV 8= X-Received: by 2002:a17:906:57:b0:9bd:931e:30d8 with SMTP id 23-20020a170906005700b009bd931e30d8mr8273166ejg.14.1697437891412; Sun, 15 Oct 2023 23:31:31 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHUCXVSxXg/jSqUvg0c5Xh4HJm1WJvB7Ax6+AdUCSo1qFiTc6i0bkVxntRNaWv8wraDkFckDg== X-Received: by 2002:a17:906:57:b0:9bd:931e:30d8 with SMTP id 23-20020a170906005700b009bd931e30d8mr8273151ejg.14.1697437890942; Sun, 15 Oct 2023 23:31:30 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id 17-20020a170906029100b009786c8249d6sm3431135ejf.175.2023.10.15.23.31.30 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:31:30 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PATCH 01/17] meson: do not build shaders by default Date: Mon, 16 Oct 2023 08:31:11 +0200 Message-ID: <20231016063127.161204-2-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org They are not needed when building user-mode emulators. Signed-off-by: Paolo Bonzini Reviewed-by: Emmanouil Pitsidianakis --- ui/shader/meson.build | 1 + 1 file changed, 1 insertion(+) diff --git a/ui/shader/meson.build b/ui/shader/meson.build index 592bf596b9a..3137e65578e 100644 --- a/ui/shader/meson.build +++ b/ui/shader/meson.build @@ -10,5 +10,6 @@ foreach e : shaders output: output, capture: true, input: files('@0@.@1@'.format(e[0], e[1])), + build_by_default: false, command: [shaderinclude, '@INPUT0@']) endforeach From patchwork Mon Oct 16 06:31:12 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849158 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=hwXFR3gb; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86jt0rYfz20Pd for ; Mon, 16 Oct 2023 17:32:50 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH8f-0003sD-0q; Mon, 16 Oct 2023 02:31:41 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8d-0003s2-EH for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:39 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8b-0005RE-SU for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:39 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437896; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=25xnsEqSHxpQ4CTPcOTT4GIh5JKkdRZwjXwxTddW8Dk=; b=hwXFR3gbGkyp62tqNWI0sa4oziCiaW1PUifLwhjKKl3zXIeBBxlIK43lJfnkjAKZ9K8lYg z2qoY+wTRDGwOBloXWn2jDqnWAoPUPFDLhSnEsQwr69qeIBCNd52MB+DQLtQFAQsuGoxzy t8cuPlERXmJtkJMZCA5RUnz1FHKkXdk= Received: from mail-ej1-f71.google.com (mail-ej1-f71.google.com [209.85.218.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-444-FuTLjjV5OMOmRAj85SzfAQ-1; Mon, 16 Oct 2023 02:31:34 -0400 X-MC-Unique: FuTLjjV5OMOmRAj85SzfAQ-1 Received: by mail-ej1-f71.google.com with SMTP id a640c23a62f3a-9adc78b386cso10614566b.0 for ; Sun, 15 Oct 2023 23:31:34 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437893; x=1698042693; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=25xnsEqSHxpQ4CTPcOTT4GIh5JKkdRZwjXwxTddW8Dk=; b=TuTxPDS2PBNLo66xb3etHTGwZdYpmAmtSqWwv9e46FwZIquQoRADAtKpRuRW8LfL2E F/Z272reh8zyJeVk0tx4aSZX7SYc5i1SDNL8ApAj0H+MiYWv8AsLzD4i3jugbiTCFzq2 yt66w1yLDL8Dhu/hJGt3rw/JJMrbzIx+IYDfG5GMxLK97HQceZDs33mqLMbMes4XGL/0 M30Norivm7aDzho6h1jWktbX/tVrevFznBEFIiskDB6t7QSPdS5gDHr2V3yGUvEN8wWM bjMicCpvyQrF2wG56wwHFa2or2xGQJAYxYsDBhn2jUWCX3JgxaC0sg9DHUca0uWzZBL1 9RGg== X-Gm-Message-State: AOJu0YyojZglTn1HaVpw3Fn9ZnbzMqQa0zEtjt83BYhBcLDKL2Bj2KPL l/g+deJh46xV8fdzmqpjvYAOvz/c0Szj7UDtcUPXqtDydPsAQj/yGtYu+RNPXr0ph5H9hhjleqv 38L2pCQJDuBpfJnKdb5TE+249Ic9FJXVfinZPx9gm68dZ4Mr0rWRJRCRx1Do2aHuh66rALDRSo8 8= X-Received: by 2002:a17:907:1c25:b0:9bf:b022:dc7 with SMTP id nc37-20020a1709071c2500b009bfb0220dc7mr3454970ejc.48.1697437893202; Sun, 15 Oct 2023 23:31:33 -0700 (PDT) X-Google-Smtp-Source: AGHT+IH8tKni1vr2zCfqttKutAzJ1AP4uu50K61MdWYWMHWAwqXGmfUwW49yml/h+9/Qh+zJLvgW5w== X-Received: by 2002:a17:907:1c25:b0:9bf:b022:dc7 with SMTP id nc37-20020a1709071c2500b009bfb0220dc7mr3454942ejc.48.1697437892608; Sun, 15 Oct 2023 23:31:32 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id v2-20020a17090651c200b0099cb0a7098dsm3478724ejk.19.2023.10.15.23.31.31 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:31:31 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PATCH 02/17] meson: do not use set10 Date: Mon, 16 Oct 2023 08:31:12 +0200 Message-ID: <20231016063127.161204-3-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Make all items of config-host.h consistent. To keep the --disable-coroutine-pool code visible to the compiler, mutuate the IS_ENABLED() macro from Linux. Signed-off-by: Paolo Bonzini Reviewed-by: Richard Henderson --- include/qemu/compiler.h | 15 +++++++++++++++ meson.build | 2 +- tests/unit/test-coroutine.c | 2 +- util/qemu-coroutine.c | 4 ++-- 4 files changed, 19 insertions(+), 4 deletions(-) diff --git a/include/qemu/compiler.h b/include/qemu/compiler.h index 1109482a000..c797f0d4572 100644 --- a/include/qemu/compiler.h +++ b/include/qemu/compiler.h @@ -212,4 +212,19 @@ # define QEMU_USED #endif +/* + * Ugly CPP trick that is like "defined FOO", but also works in C + * code. Useful to replace #ifdef with "if" statements; assumes + * the symbol was defined with Meson's "config.set()", so it is empty + * if defined. + */ +#define IS_ENABLED(x) IS_EMPTY(x) + +#define IS_EMPTY_JUNK_ junk, +#define IS_EMPTY(value) IS_EMPTY_(IS_EMPTY_JUNK_##value) + +/* Expands to either SECOND_ARG(junk, 1, 0) or SECOND_ARG(IS_EMPTY_JUNK_CONFIG_FOO 1, 0) */ +#define SECOND_ARG(first, second, ...) second +#define IS_EMPTY_(junk_maybecomma) SECOND_ARG(junk_maybecomma 1, 0) + #endif /* COMPILER_H */ diff --git a/meson.build b/meson.build index bd65a111aa8..010d2c649c2 100644 --- a/meson.build +++ b/meson.build @@ -2194,7 +2194,7 @@ if get_option('debug_stack_usage') and have_coroutine_pool message('Disabling coroutine pool to measure stack usage') have_coroutine_pool = false endif -config_host_data.set10('CONFIG_COROUTINE_POOL', have_coroutine_pool) +config_host_data.set('CONFIG_COROUTINE_POOL', have_coroutine_pool) config_host_data.set('CONFIG_DEBUG_GRAPH_LOCK', get_option('debug_graph_lock')) config_host_data.set('CONFIG_DEBUG_MUTEX', get_option('debug_mutex')) config_host_data.set('CONFIG_DEBUG_STACK_USAGE', get_option('debug_stack_usage')) diff --git a/tests/unit/test-coroutine.c b/tests/unit/test-coroutine.c index b0d21d673a0..a2563647e74 100644 --- a/tests/unit/test-coroutine.c +++ b/tests/unit/test-coroutine.c @@ -645,7 +645,7 @@ int main(int argc, char **argv) * with a sentinel value. If there is no freelist this would legitimately * crash, so skip it. */ - if (CONFIG_COROUTINE_POOL) { + if (IS_ENABLED(CONFIG_COROUTINE_POOL)) { g_test_add_func("/basic/no-dangling-access", test_no_dangling_access); } diff --git a/util/qemu-coroutine.c b/util/qemu-coroutine.c index 17a88f65053..5fd2dbaf8bb 100644 --- a/util/qemu-coroutine.c +++ b/util/qemu-coroutine.c @@ -57,7 +57,7 @@ Coroutine *qemu_coroutine_create(CoroutineEntry *entry, void *opaque) { Coroutine *co = NULL; - if (CONFIG_COROUTINE_POOL) { + if (IS_ENABLED(CONFIG_COROUTINE_POOL)) { CoroutineQSList *alloc_pool = get_ptr_alloc_pool(); co = QSLIST_FIRST(alloc_pool); @@ -99,7 +99,7 @@ static void coroutine_delete(Coroutine *co) { co->caller = NULL; - if (CONFIG_COROUTINE_POOL) { + if (IS_ENABLED(CONFIG_COROUTINE_POOL)) { if (release_pool_size < qatomic_read(&pool_max_size) * 2) { QSLIST_INSERT_HEAD_ATOMIC(&release_pool, co, pool_next); qatomic_inc(&release_pool_size); From patchwork Mon Oct 16 06:31:13 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849162 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=eS/Xp/FY; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86l21V1zz20Zj for ; Mon, 16 Oct 2023 17:33:50 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH8g-0003sx-Iu; Mon, 16 Oct 2023 02:31:42 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8e-0003sC-VV for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:40 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8c-0005RJ-PN for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:40 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437898; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Eu916VXR4bjLP9kWhBXksgOVS+7PTywOtWPRUF1/pAo=; b=eS/Xp/FYnXwERMQPUMwZ2Etlmv0FRtn7RVC/Vv2jLI/9Cx+20bCjndtPiryGJyiIQdowyz 7UX0c5hzHwoUMTjO+GBqvVPgHDa/aPtmVGMa8LrAYg/z7qQ6fyLqfLCbCQ7m+iVh7xj5SK 0UFgHHIujq/YfjS5pRHUfOyB8G5HGco= Received: from mail-ed1-f72.google.com (mail-ed1-f72.google.com [209.85.208.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-290-6HZ-o9kDM7KmlQ0xLkfx0g-1; Mon, 16 Oct 2023 02:31:36 -0400 X-MC-Unique: 6HZ-o9kDM7KmlQ0xLkfx0g-1 Received: by mail-ed1-f72.google.com with SMTP id 4fb4d7f45d1cf-53e3bfec5bdso2002538a12.0 for ; Sun, 15 Oct 2023 23:31:36 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437895; x=1698042695; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Eu916VXR4bjLP9kWhBXksgOVS+7PTywOtWPRUF1/pAo=; b=O05CFfQ1fYSuHlCMIOzvLXk7E4JNIwjHdSw74jTfkC+X2fOVe5K8JAuAJwk8XA686A eWcA1hOnT0iP+bZMXx5jGh3kfa91Lpwx3QeNjWZrAKIha7z4FN/g0639utC3OgZ7hJAF sca3AbeYVSM+KkWI8kchU0bkkP/7sW4ctErDhSfClEp1vAiadta5O5xMVkZqHzTOK5ck bUMkA/TCzdapLLGJlZ04G+UHZkeGWh3wehNNpkX8Z6bGrxnNVShDEYpYOFzy4Qn1N3Qp HD7WD6guXd2eWM1t0Dc6Ko2HkQt74eyEJUqgchyfx0DQji8nmuV+z9LWdRa7p/TzCN+Y Ic6w== X-Gm-Message-State: AOJu0YxVrL7Og0Li6Jy+zMQ1jq+zcCXz9rGA4gpLjW/4Fdwt6v/fK2Lf n8MxVuTxuYia7ltQYewwAqhru8VktixFdMMBcBLulhiXxhFo4SRIdEJgYcJVveF8S3yGjfT+zV7 2ghPFHLaEhNlg98TBnJ+3fTSN5oTpBXihC9FJKECXbrvM2HcV0qeuI+/PbFqyseRGY+llcSlBA4 U= X-Received: by 2002:a05:6402:4405:b0:53e:5dad:dce7 with SMTP id y5-20020a056402440500b0053e5daddce7mr7207981eda.29.1697437895187; Sun, 15 Oct 2023 23:31:35 -0700 (PDT) X-Google-Smtp-Source: AGHT+IE3Eczpa7yE0kVG/pozhF/qWJQK4FETyHhXhnnjN4QYpps10gcvzjOqk6k9AO4P5MYaLcpjzA== X-Received: by 2002:a05:6402:4405:b0:53e:5dad:dce7 with SMTP id y5-20020a056402440500b0053e5daddce7mr7207942eda.29.1697437894693; Sun, 15 Oct 2023 23:31:34 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id g22-20020a50d0d6000000b0053e3d8f1d9fsm4507989edf.67.2023.10.15.23.31.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:31:34 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Michael Tokarev Subject: [PATCH 03/17] meson, cutils: allow non-relocatable installs Date: Mon, 16 Oct 2023 08:31:13 +0200 Message-ID: <20231016063127.161204-4-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Suggested-by: Michael Tokarev Signed-off-by: Paolo Bonzini Reviewed-by: Emmanouil Pitsidianakis --- meson.build | 21 +++++++++++++++++++++ meson_options.txt | 2 ++ scripts/meson-buildoptions.sh | 3 +++ util/cutils.c | 11 ++++++++--- 4 files changed, 34 insertions(+), 3 deletions(-) diff --git a/meson.build b/meson.build index 010d2c649c2..251838f2609 100644 --- a/meson.build +++ b/meson.build @@ -2111,6 +2111,7 @@ config_host_data.set('CONFIG_OPENGL', opengl.found()) config_host_data.set('CONFIG_PLUGIN', get_option('plugins')) config_host_data.set('CONFIG_RBD', rbd.found()) config_host_data.set('CONFIG_RDMA', rdma.found()) +config_host_data.set('CONFIG_RELOCATABLE', get_option('relocatable')) config_host_data.set('CONFIG_SAFESTACK', get_option('safe_stack')) config_host_data.set('CONFIG_SDL', sdl.found()) config_host_data.set('CONFIG_SDL_IMAGE', sdl_image.found()) @@ -4054,6 +4055,7 @@ if 'simple' in get_option('trace_backends') endif summary_info += {'D-Bus display': dbus_display} summary_info += {'QOM debugging': get_option('qom_cast_debug')} +summary_info += {'Relocatable install': get_option('relocatable')} summary_info += {'vhost-kernel support': have_vhost_kernel} summary_info += {'vhost-net support': have_vhost_net} summary_info += {'vhost-user support': have_vhost_user} @@ -4356,3 +4358,22 @@ if host_arch == 'unknown' or not supported_oses.contains(targetos) message('If you want to help supporting QEMU on this platform, please') message('contact the developers at qemu-devel@nongnu.org.') endif + +actually_reloc = get_option('relocatable') +# check if get_relocated_path() is actually able to relocate paths +if get_option('relocatable') and \ + not (get_option('prefix') / get_option('bindir')).startswith(get_option('prefix') / '') + message() + warning('bindir not included within prefix, the installation will not be relocatable.') + message() + message('Use --disable-relocatable to remove this warning.') + actually_reloc = false +endif +if not actually_reloc and (targetos == 'windows' or get_option('relocatable')) + if targetos == 'windows' + message() + warning('Windows installs should usually be relocatable.') + endif + message() + message('QEMU will have to be installed under ' + get_option('prefix') + '.') +endif diff --git a/meson_options.txt b/meson_options.txt index 6a17b909680..e237b268469 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -101,6 +101,8 @@ option('cfi_debug', type: 'boolean', value: false, description: 'Verbose errors in case of CFI violation') option('multiprocess', type: 'feature', value: 'auto', description: 'Out of process device emulation support') +option('relocatable', type : 'boolean', value : 'true', + description: 'toggle relocatable install') option('vfio_user_server', type: 'feature', value: 'disabled', description: 'vfio-user server support') option('dbus_display', type: 'feature', value: 'auto', diff --git a/scripts/meson-buildoptions.sh b/scripts/meson-buildoptions.sh index 2a74b0275b3..d4b89e6b443 100644 --- a/scripts/meson-buildoptions.sh +++ b/scripts/meson-buildoptions.sh @@ -17,6 +17,7 @@ meson_options_help() { printf "%s\n" ' code for the Hexagon frontend' printf "%s\n" ' --disable-install-blobs install provided firmware blobs' printf "%s\n" ' --disable-qom-cast-debug cast debugging support' + printf "%s\n" ' --disable-relocatable toggle relocatable install' printf "%s\n" ' --docdir=VALUE Base directory for documentation installation' printf "%s\n" ' (can be empty) [share/doc]' printf "%s\n" ' --enable-block-drv-whitelist-in-tools' @@ -421,6 +422,8 @@ _meson_option_parse() { --disable-rbd) printf "%s" -Drbd=disabled ;; --enable-rdma) printf "%s" -Drdma=enabled ;; --disable-rdma) printf "%s" -Drdma=disabled ;; + --enable-relocatable) printf "%s" -Drelocatable=true ;; + --disable-relocatable) printf "%s" -Drelocatable=false ;; --enable-replication) printf "%s" -Dreplication=enabled ;; --disable-replication) printf "%s" -Dreplication=disabled ;; --enable-rng-none) printf "%s" -Drng_none=true ;; diff --git a/util/cutils.c b/util/cutils.c index c99d26c5e2d..64f817b477b 100644 --- a/util/cutils.c +++ b/util/cutils.c @@ -1178,9 +1178,11 @@ char *get_relocated_path(const char *dir) #else g_string_append(result, dir); #endif - } else if (!starts_with_prefix(dir) || !starts_with_prefix(bindir)) { - g_string_assign(result, dir); - } else { + goto out; + } + + if (IS_ENABLED(CONFIG_RELOCATABLE) && + starts_with_prefix(dir) && starts_with_prefix(bindir)) { g_string_assign(result, exec_dir); /* Advance over common components. */ @@ -1203,7 +1205,10 @@ char *get_relocated_path(const char *dir) assert(G_IS_DIR_SEPARATOR(dir[-1])); g_string_append(result, dir - 1); } + goto out; } + g_string_assign(result, dir); +out: return g_string_free(result, false); } From patchwork Mon Oct 16 06:31:14 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849169 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=ao1bUhAd; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86lX4Gvwz20Pd for ; Mon, 16 Oct 2023 17:34:16 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH8m-0003u5-Qg; Mon, 16 Oct 2023 02:31:48 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8l-0003tv-Uw for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:48 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8k-0005S4-JB for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437906; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=YfoJIpN+uZGYPzQNSBF+48daw1pWErF1si+YxUUxbaQ=; b=ao1bUhAdHnxQRQ6CuH36i/fZUsDg9m67lUbtyFyRxRU6/7ugKHv8Gw8E1eAMIPZFuZwwRn 4FSZEAXpyCQTzP4/BkWMcEWjV2atFpcOUMPU1oMev5/4GvLoezaKZlhDNAvUpMCSCXjkQ6 BxaoWtwDPsoZNkbJkjBi4Am6w13TcLU= Received: from mail-ej1-f69.google.com (mail-ej1-f69.google.com [209.85.218.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-352-o3YxCkVJPF25-6zrOj6ggg-1; Mon, 16 Oct 2023 02:31:39 -0400 X-MC-Unique: o3YxCkVJPF25-6zrOj6ggg-1 Received: by mail-ej1-f69.google.com with SMTP id a640c23a62f3a-9c4485166beso31514966b.3 for ; Sun, 15 Oct 2023 23:31:38 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437897; x=1698042697; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=YfoJIpN+uZGYPzQNSBF+48daw1pWErF1si+YxUUxbaQ=; b=CH+YYOp3VLcbjpd5QW4I1XY0pdlwpf21iurT+IWEpwpSs9I3MA7TT1eVO2iKRZ9kTq BCShNPW001wMeDYrO5RYgvSWzFvWteh56Y1H1ilqcYEnFkP8AWCTHSxm1MEoASvVKKcE WjggU0n13jbYUKfHFIf5gYLXBpBQhy0vk/MpOxSpNlmGBQYXVHMnnji1ybmI79VsPRRO czglpR6aakBRY6PKHcZ/hu8Zqy+7KdZc460LHGSnwx25UidzBKdbLismfAr770V6na74 HOAVeFxL3PAVFaDSX5HN7KrwDLuQDYOVFMnocIXb2zIDwpg49wwBQDPY1t5EIIl+JvB4 ktPA== X-Gm-Message-State: AOJu0Yzi6J55WrTzQqbAisCCOBzOncfA7jX2OfLNntERRgFGVQq/RgmJ EFenTStFwNOsZEYJfLeU8GxMbZVAlStIWZiaQwGjuLG2R7nOWtN81Fu6N1eIflZ2/1PZenxU26/ qNpwLVGVS90Tt1In1oSA0Eh8tNBbF15l9h6lnE9XLh8OKBg4dk6Vbqrk+wpbJh7Lkvj62DYmoPQ U= X-Received: by 2002:a17:906:7697:b0:9b2:b119:4918 with SMTP id o23-20020a170906769700b009b2b1194918mr30487811ejm.13.1697437897494; Sun, 15 Oct 2023 23:31:37 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFkWoMpS8vcC0SKsglKhuUpCPG+umoSznPCESBkpPHxXEa9Up5Qxuwad6KxILnf+WyMG9muEg== X-Received: by 2002:a17:906:7697:b0:9b2:b119:4918 with SMTP id o23-20020a170906769700b009b2b1194918mr30487803ejm.13.1697437897179; Sun, 15 Oct 2023 23:31:37 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id qw8-20020a170906fca800b0099bd7b26639sm3392978ejb.6.2023.10.15.23.31.35 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:31:36 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PATCH 04/17] configure: clean up handling of CFI option Date: Mon, 16 Oct 2023 08:31:14 +0200 Message-ID: <20231016063127.161204-5-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Avoid that --enable-cfi --disable-cfi leaves b_lto set to true. Signed-off-by: Paolo Bonzini Reviewed-by: Philippe Mathieu-Daudé --- configure | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/configure b/configure index bce8c57596f..3da46ed202d 100755 --- a/configure +++ b/configure @@ -766,11 +766,9 @@ for opt do ;; --disable-werror) werror="no" ;; - --enable-cfi) - cfi="true"; - meson_option_add -Db_lto=true + --enable-cfi) cfi=true ;; - --disable-cfi) cfi="false" + --disable-cfi) cfi=false ;; --disable-download) download="disabled"; git_submodules_action=validate; ;; @@ -1845,6 +1843,7 @@ if test "$skip_meson" = no; then # QEMU options test "$cfi" != false && meson_option_add "-Dcfi=$cfi" + test "$cfi" != false && meson_option_add "-Db_lto=$cfi" test "$docs" != auto && meson_option_add "-Ddocs=$docs" test -n "${LIB_FUZZING_ENGINE+xxx}" && meson_option_add "-Dfuzzing_engine=$LIB_FUZZING_ENGINE" test "$plugins" = yes && meson_option_add "-Dplugins=true" From patchwork Mon Oct 16 06:31:15 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849156 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=K/y5Ysqf; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86j61DS4z20Pd for ; Mon, 16 Oct 2023 17:32:10 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH8k-0003tV-8L; Mon, 16 Oct 2023 02:31:46 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8j-0003tN-2D for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:45 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8h-0005Rs-FR for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:44 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437902; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=gMEGfJX5yEubPkar1DYtNMZdMeXfWKJZ/edTNcXbgHQ=; b=K/y5YsqfrgQ5UIbHMJckb9piu8+WKJ5E+tzVLj06jzkB8oz1zs+vKOxSRjOZVSrI1r5uYv x5XvwI9l/C1UHgWGsW+8sx+S3WigFTJVVG9p6i+1jJOrh637KcoUOO1uPs0gMqmDjDij2R xkLoX3twyPMW2wNQC7JlBrj9ffNNTu4= Received: from mail-ed1-f69.google.com (mail-ed1-f69.google.com [209.85.208.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-271-YJRvgtlBNEyg9fQPQouNXA-1; Mon, 16 Oct 2023 02:31:40 -0400 X-MC-Unique: YJRvgtlBNEyg9fQPQouNXA-1 Received: by mail-ed1-f69.google.com with SMTP id 4fb4d7f45d1cf-53e02a0ebfdso2966021a12.3 for ; Sun, 15 Oct 2023 23:31:40 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437899; x=1698042699; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=gMEGfJX5yEubPkar1DYtNMZdMeXfWKJZ/edTNcXbgHQ=; b=homjZ/OaPV940kf/jn8tH9N3nNPjys1zPkWQR3PbsE+gpei9dYzsgWOTEp0Vg+1JiE dwIXLRjJntMbhQ+uTplWSOU+VRuKerWgHckxLwzk2gfNaHF4nyCHLQtozaxDei7m7zlE /q7yXL1u855EY7MPTfJGoSwQw7Qz854NhY51EvHihijw3gE7g+YijSkrAiu87e1Xii8u 8vt55q8mLv3fOuAXffCHJQbMIx6jktzUoaeJNzqaJPlUiQjwLZxtFnBzt5NTfQNXVCQV p3pZOO+ZzojTrFTLM+kOC/gZD8KCP8+SgSN2MOCafiZHmoKTdCMhHt8kxTDP/1+ExFge gW8g== X-Gm-Message-State: AOJu0YwLVwFmDEsXYPc08eA4dF/7UUR7QzPmGC8EEi/nagqedU7Xb1x3 3/tjJQq1xnzL+wPMf/zJXEiaOImELk5jHoi/QgSEgWXI6aPrPi0PYUf3C8AfA5vHC2Gh8pQKASx ajS+XJz+TANar1fUFwDkhVCqESh7xluP7ZCI8ovaaSH2jPMDS7knCkHiCztZ4FzGu/db9QkQL8W o= X-Received: by 2002:a05:6402:550b:b0:53d:b59c:8f91 with SMTP id fi11-20020a056402550b00b0053db59c8f91mr12132728edb.27.1697437899084; Sun, 15 Oct 2023 23:31:39 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEjjjuOkB3ug5kw3HUyPRAchelMxPFvzGmR8xsSK6TgF/z8lEkwIngwyik6AZADHOgC39ZtMw== X-Received: by 2002:a05:6402:550b:b0:53d:b59c:8f91 with SMTP id fi11-20020a056402550b00b0053db59c8f91mr12132721edb.27.1697437898832; Sun, 15 Oct 2023 23:31:38 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id v3-20020a056402174300b0053e3839fc79sm4477594edx.96.2023.10.15.23.31.38 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:31:38 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PATCH 05/17] hw/xen: cleanup sourcesets Date: Mon, 16 Oct 2023 08:31:15 +0200 Message-ID: <20231016063127.161204-6-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org xen_ss is added unconditionally to arm_ss and i386_ss (the only targets that can have CONFIG_XEN enabled) and its contents are gated by CONFIG_XEN; xen_specific_ss has no condition for its constituent files but is gated on CONFIG_XEN when its added to specific_ss. So xen_ss is a duplicate of xen_specific_ss, though defined in a different way. Merge the two by eliminating xen_ss. Signed-off-by: Paolo Bonzini --- hw/arm/meson.build | 1 - hw/i386/meson.build | 1 - hw/xen/meson.build | 11 ++++------- 3 files changed, 4 insertions(+), 9 deletions(-) diff --git a/hw/arm/meson.build b/hw/arm/meson.build index 11eb9112f88..a6feaf1af95 100644 --- a/hw/arm/meson.build +++ b/hw/arm/meson.build @@ -64,7 +64,6 @@ arm_ss.add(when: 'CONFIG_ARM_SMMUV3', if_true: files('smmuv3.c')) arm_ss.add(when: 'CONFIG_FSL_IMX6UL', if_true: files('fsl-imx6ul.c', 'mcimx6ul-evk.c')) arm_ss.add(when: 'CONFIG_NRF51_SOC', if_true: files('nrf51_soc.c')) arm_ss.add(when: 'CONFIG_XEN', if_true: files('xen_arm.c')) -arm_ss.add_all(xen_ss) system_ss.add(when: 'CONFIG_ARM_SMMUV3', if_true: files('smmu-common.c')) system_ss.add(when: 'CONFIG_EXYNOS4', if_true: files('exynos4_boards.c')) diff --git a/hw/i386/meson.build b/hw/i386/meson.build index ff879069c98..369c6bf823b 100644 --- a/hw/i386/meson.build +++ b/hw/i386/meson.build @@ -32,6 +32,5 @@ subdir('kvm') subdir('xen') i386_ss.add_all(xenpv_ss) -i386_ss.add_all(xen_ss) hw_arch += {'i386': i386_ss} diff --git a/hw/xen/meson.build b/hw/xen/meson.build index 277f9f292b4..d887fa9ba43 100644 --- a/hw/xen/meson.build +++ b/hw/xen/meson.build @@ -12,6 +12,10 @@ system_ss.add(when: ['CONFIG_XEN', xen], if_true: files( )) xen_specific_ss = ss.source_set() +xen_specific_ss.add(files( + 'xen-mapcache.c', + 'xen-hvm-common.c', +)) if have_xen_pci_passthrough xen_specific_ss.add(files( 'xen-host-pci-device.c', @@ -26,10 +30,3 @@ else endif specific_ss.add_all(when: ['CONFIG_XEN', xen], if_true: xen_specific_ss) - -xen_ss = ss.source_set() - -xen_ss.add(when: 'CONFIG_XEN', if_true: files( - 'xen-mapcache.c', - 'xen-hvm-common.c', -)) From patchwork Mon Oct 16 06:31:16 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849164 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=JdjL0SJT; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86lB2bRMz20Pd for ; Mon, 16 Oct 2023 17:33:57 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH8z-00040l-8j; Mon, 16 Oct 2023 02:32:01 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8w-0003zJ-1Q for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:58 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8t-0005T1-GG for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:57 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437914; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=9QQ5Jv++5JWrJcQC65uokcTL2BMQ3kZau3NHc7ktyfI=; b=JdjL0SJTO/e5Lm7K3l5+2VF8pdj++lojTl4jrSGT4vH9pQF+YvTfcWqsoEPGgCvg4YfpdI AigZAw7DlIqVAZ4+ZrmoNgK8A8q94DTtUojVK/gXwVXSO9LK3TrGq7mSprKbHmpMt1hNht gcnIGSX5Q2uH/wxUy9+lrRwcdvcqwjw= Received: from mail-ej1-f69.google.com (mail-ej1-f69.google.com [209.85.218.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-127-VC_bdEVqOkae6hQAGioAEw-1; Mon, 16 Oct 2023 02:31:42 -0400 X-MC-Unique: VC_bdEVqOkae6hQAGioAEw-1 Received: by mail-ej1-f69.google.com with SMTP id a640c23a62f3a-993eeb3a950so260252066b.2 for ; Sun, 15 Oct 2023 23:31:42 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437900; x=1698042700; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=9QQ5Jv++5JWrJcQC65uokcTL2BMQ3kZau3NHc7ktyfI=; b=BEraUrID7MKHSoHJjnQmiD2z4nVe9/2MopFRvOMnzguRTDiiHe8YWGA04qG/MecbaG 1GPC0hezsFmy0Ar0kMLEmEYNkOS/WgliKq3rCV/o5DBXe4Ly7mpvuOIt2lE64CACb9ws yoDze+tz8xQ+WjETYe3Kcuhq6HmSRc0xIAZhul8+FVT8ULL4ZDjGLn6BLqUycHYlfcD0 1Az9z8cOW0eh60HbI7ACFXVv7kq3bFp805ytaJ0Q+O79dqDs8+j16hJRFEVgBSYBrpP2 pJGY8UQljS/JhRP4dEgGGQUFvzWYZrJczTtASQNR0Dk1yh4NBF9z/3ZTojGsAe33xewg Uomw== X-Gm-Message-State: AOJu0Yz0JyeYve8P4tvzDu3VjhPIAgMkyhWCM4Ug6Mv0PbmAKoXGO/aN rIDFqPu7MeA8yHKS7HDm9ND0NKcbzma4i3mk/KUZsCVL0sDxVaiFMYo20nS+mljSzHXjLVIibf2 qfLOe66lINaynfK/gX4ZtZaTBvEuorwkx/6ywXh14YZkZWsub/3bWl45SecCu1mCN2/fIwyKNsq c= X-Received: by 2002:a17:906:cc0d:b0:9a2:86b:bb18 with SMTP id ml13-20020a170906cc0d00b009a2086bbb18mr27954287ejb.26.1697437900774; Sun, 15 Oct 2023 23:31:40 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEJZkDpMl2j4MMjNlYIGSeWRfUJyCUnuvgxQTwyd4LwUU2QsZIfAfvt1NEF41QG0ayrpMN7Og== X-Received: by 2002:a17:906:cc0d:b0:9a2:86b:bb18 with SMTP id ml13-20020a170906cc0d00b009a2086bbb18mr27954282ejb.26.1697437900463; Sun, 15 Oct 2023 23:31:40 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id f11-20020a170906738b00b00992e94bcfabsm3376851ejl.167.2023.10.15.23.31.39 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:31:39 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PATCH 06/17] hw/remote: move stub vfu_object_set_bus_irq out of stubs/ Date: Mon, 16 Oct 2023 08:31:16 +0200 Message-ID: <20231016063127.161204-7-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Signed-off-by: Paolo Bonzini --- hw/remote/meson.build | 4 +++- stubs/vfio-user-obj.c => hw/remote/vfio-user-obj-stub.c | 0 stubs/meson.build | 1 - 3 files changed, 3 insertions(+), 2 deletions(-) rename stubs/vfio-user-obj.c => hw/remote/vfio-user-obj-stub.c (100%) diff --git a/hw/remote/meson.build b/hw/remote/meson.build index a1e8708c732..a3aa29aaf17 100644 --- a/hw/remote/meson.build +++ b/hw/remote/meson.build @@ -7,9 +7,11 @@ remote_ss.add(when: 'CONFIG_MULTIPROCESS', if_true: files('remote-obj.c')) remote_ss.add(when: 'CONFIG_MULTIPROCESS', if_true: files('proxy.c')) remote_ss.add(when: 'CONFIG_MULTIPROCESS', if_true: files('iohub.c')) remote_ss.add(when: 'CONFIG_MULTIPROCESS', if_true: files('iommu.c')) -remote_ss.add(when: 'CONFIG_VFIO_USER_SERVER', if_true: files('vfio-user-obj.c')) remote_ss.add(when: 'CONFIG_VFIO_USER_SERVER', if_true: libvfio_user_dep) +remote_ss.add(when: 'CONFIG_VFIO_USER_SERVER', if_true: files('vfio-user-obj.c'), + if_false: files('vfio-user-obj-stub.c')) +remote_ss.add(when: 'CONFIG_ALL', if_true: files('vfio-user-obj-stub.c')) specific_ss.add(when: 'CONFIG_MULTIPROCESS', if_true: files('memory.c')) specific_ss.add(when: 'CONFIG_MULTIPROCESS', if_true: files('proxy-memory-listener.c')) diff --git a/stubs/vfio-user-obj.c b/hw/remote/vfio-user-obj-stub.c similarity index 100% rename from stubs/vfio-user-obj.c rename to hw/remote/vfio-user-obj-stub.c diff --git a/stubs/meson.build b/stubs/meson.build index ef6e39a64d8..025e7d2851f 100644 --- a/stubs/meson.build +++ b/stubs/meson.build @@ -65,4 +65,3 @@ else stub_ss.add(files('qdev.c')) endif stub_ss.add(files('semihost-all.c')) -stub_ss.add(when: 'CONFIG_VFIO_USER_SERVER', if_false: files('vfio-user-obj.c')) From patchwork Mon Oct 16 06:31:17 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849172 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=Fp41g1Hn; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86ly6Pmhz20Pd for ; Mon, 16 Oct 2023 17:34:38 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH8s-0003y9-Mb; Mon, 16 Oct 2023 02:31:54 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8r-0003wf-DM for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:53 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8p-0005Sb-V7 for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:53 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437911; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=UWFwfKWsP26Bal1UGvJOrMRc81Ismgv98NyAMzklpAA=; b=Fp41g1HnLVFsG68QwrSoKw8kiMpka7Ohd0TljUd06FxJcpTO1JBXaUQlOcQX9t6ub8zr1p c3zJIpK8iEHmp1BhA5UKfSF4uTjpSVJZrAJJVu4vljqnX2uSl9VoCQREYmcJcyvMKEd3ko jAr1CST3GDsYqBlF8K1+M6fhM2m0Z9U= Received: from mail-ej1-f72.google.com (mail-ej1-f72.google.com [209.85.218.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-423-pj5aymv8MjabHIdWMdSYqA-1; Mon, 16 Oct 2023 02:31:44 -0400 X-MC-Unique: pj5aymv8MjabHIdWMdSYqA-1 Received: by mail-ej1-f72.google.com with SMTP id a640c23a62f3a-9ae0bf9c0b4so308478266b.0 for ; Sun, 15 Oct 2023 23:31:43 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437902; x=1698042702; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UWFwfKWsP26Bal1UGvJOrMRc81Ismgv98NyAMzklpAA=; b=G3AS6eZJHC2aro3B+ECKvGTo/+NtJWt5Cxn/hDBa9Cw47HBEwuMOPu1nfT8q0TCoiH x9QiXyAFvnpcjrphrHPwr5/HD3t8gMmIHcdjKRyRnVykOlWMIsfo+oq+zhxL31qNuAK/ qGA8m2oaMsJhRJc/xxioxJCsvDC8He5flaqx62ZOfZQkLY/DkQIwPL51VrLT/kzoukNK xuu2KAP4ps6Jw1OnD8UFGPyxw8mZdaZn9WPvARoA94ushbgZcRqou6rU5WX7LkPbI+dB 98FA3a25oxdoVQclzq5pAwIJuRwBxbUE5HNc/oILX+xcA0s5WHbiynPN6pED7SL39LeC nNkQ== X-Gm-Message-State: AOJu0Yw0M1xmVJBp4sOo3gTvxh89leZodcMoPrk6OHR9GQF6oohEOR8n ORS8NT83MXAoNWIEfiI1G4/ClYpM6Q5xyBqABeNoYLK8vdEvByR6a/ZYzp28PlvJclK8qH5ISJ6 K2VmaJKEpdQX38SGJzy9cf0PHV+8zfxUkWvAHixTmRnDvgijOG9Zm2KA4227zCjzHmzF0zCVB9i U= X-Received: by 2002:a17:907:ea1:b0:9be:ef46:6b9d with SMTP id ho33-20020a1709070ea100b009beef466b9dmr5256525ejc.29.1697437902617; Sun, 15 Oct 2023 23:31:42 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFaIESZJFotBx06sVT+rwuyDzGjszwQKsje+roRzrw0N3haxPz+2QLQwADSw3XCPMoT4KK4ag== X-Received: by 2002:a17:907:ea1:b0:9be:ef46:6b9d with SMTP id ho33-20020a1709070ea100b009beef466b9dmr5256509ejc.29.1697437902177; Sun, 15 Oct 2023 23:31:42 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id r15-20020a17090638cf00b00997cce73cc7sm3398153ejd.29.2023.10.15.23.31.41 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:31:41 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PATCH 07/17] tests/tcg/arm: move non-SVE tests out of conditional Date: Mon, 16 Oct 2023 08:31:17 +0200 Message-ID: <20231016063127.161204-8-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org test-aes, sha1-vector and sha512-vector need not be conditional on $(CROSS_CC_HAS_SVE), reorganize the "if"s to move them outside. Signed-off-by: Paolo Bonzini --- tests/tcg/aarch64/Makefile.target | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/tests/tcg/aarch64/Makefile.target b/tests/tcg/aarch64/Makefile.target index 2efacf9a5a3..d01b8ff47c8 100644 --- a/tests/tcg/aarch64/Makefile.target +++ b/tests/tcg/aarch64/Makefile.target @@ -73,11 +73,6 @@ endif # System Registers Tests AARCH64_TESTS += sysregs -ifneq ($(CROSS_CC_HAS_SVE),) -# SVE ioctl test -AARCH64_TESTS += sve-ioctls -sve-ioctls: CFLAGS+=-march=armv8.1-a+sve - AARCH64_TESTS += test-aes test-aes: CFLAGS += -O -march=armv8-a+aes test-aes: test-aes-main.c.inc @@ -100,12 +95,15 @@ sha512-vector: sha512.c TESTS += sha512-vector ifneq ($(CROSS_CC_HAS_SVE),) +# SVE ioctl test +AARCH64_TESTS += sve-ioctls +sve-ioctls: CFLAGS+=-march=armv8.1-a+sve + sha512-sve: CFLAGS=-O3 -march=armv8.1-a+sve sha512-sve: sha512.c $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $< -o $@ $(LDFLAGS) TESTS += sha512-sve -endif ifeq ($(HOST_GDB_SUPPORTS_ARCH),y) GDB_SCRIPT=$(SRC_PATH)/tests/guest-debug/run-test.py From patchwork Mon Oct 16 06:31:18 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849157 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=Ck+Mxs58; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86j64j8cz20Zj for ; Mon, 16 Oct 2023 17:32:10 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH8r-0003wy-Jv; Mon, 16 Oct 2023 02:31:53 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8q-0003uM-4j for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:52 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8o-0005SM-4O for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:51 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437909; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=UrHZ5GRzW8lQtPg843T6Htzc+QHUFHYsEY4Zs9sIB4w=; b=Ck+Mxs58cn2UMG2dgnbXuDAaMxRx4XWlIExnOeK/sV3xUKZMI1c1Rn32G+6JJM8CcHS9bT AHMv7+25XbncVjC1D37Fu+mjAezLI+XZNqULva0Y4iiZ1BKwF+S6WoErAbVhxI67IPHGp8 TgD+zRmTfyAkN/2ydxIyWHhN7XVwmsY= Received: from mail-lj1-f198.google.com (mail-lj1-f198.google.com [209.85.208.198]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-212-jQtmKb20MdKSxSQaMjqRaQ-1; Mon, 16 Oct 2023 02:31:47 -0400 X-MC-Unique: jQtmKb20MdKSxSQaMjqRaQ-1 Received: by mail-lj1-f198.google.com with SMTP id 38308e7fff4ca-2c5073588cbso22571191fa.3 for ; Sun, 15 Oct 2023 23:31:47 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437905; x=1698042705; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UrHZ5GRzW8lQtPg843T6Htzc+QHUFHYsEY4Zs9sIB4w=; b=h2keN6BfUQjgzhe61WxMu/seU2yd4WTNabUplWOVFv983SCXZDQ1b8yUx4JvQutaPK q3oUyRew8ans4le0dOKyQYRvfuICwB8+X1oB9RWtKR4h1tnZxtH/T33rvrB33RdC+5Hq TvQ/7ZHa2UTct3s3YLFEZ1ON5sfE2Cc53JIKpsdSSPI/Cv585zECX9lJtVE+Nbye80kD BoYMI8dWX8AEr2jmRO97n8zrhjnqUlqfw1630YhHBGG8RODpNEgyO5lEYaOY8UNPcNAg UX7WEazS0y7j5Sd8a1cjPRQGDxDWPWpZuwyRBTJEYYeIfHDKLVqtqV+k+o0rsCf7cdGx vBgw== X-Gm-Message-State: AOJu0Yx9CCd0CANOtMXiIEMwqcOqqWH01mrlxFSDXYMYMCd2tdnjqXZ6 kQPCbRA7Aohz0KrtGOl3Qrff20Vf96ZciRjyV21M724Kwb4nJgsvEhcdR0mt740SrkQ52Ht5AWu +hueqb+a41817nuhPcoKJJvVdX5F3BeXvrENTAMSac5+PHWH1Y2kq2x5xmnsCfrod8dmJTnAKsY c= X-Received: by 2002:a2e:b2d4:0:b0:2c5:19ea:b6ac with SMTP id 20-20020a2eb2d4000000b002c519eab6acmr2842191ljz.21.1697437905318; Sun, 15 Oct 2023 23:31:45 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGz6vF9qFSFNLaIHkjitheYt2SfBmp/5316YZYRGkto31nAklo/j1xnUSkl9UAt70cbvhQO1g== X-Received: by 2002:a2e:b2d4:0:b0:2c5:19ea:b6ac with SMTP id 20-20020a2eb2d4000000b002c519eab6acmr2842170ljz.21.1697437904773; Sun, 15 Oct 2023 23:31:44 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id y25-20020a1709063a9900b009ae3e6c342asm3382543ejd.111.2023.10.15.23.31.43 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:31:43 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PATCH 08/17] configure, tests/tcg: simplify GDB conditionals Date: Mon, 16 Oct 2023 08:31:18 +0200 Message-ID: <20231016063127.161204-9-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Unify HAVE_GDB_BIN (currently in config-host.mak) and HOST_GDB_SUPPORTS_ARCH into a single GDB variable in config-target.mak. Signed-off-by: Paolo Bonzini Reviewed-by: Emmanouil Pitsidianakis --- configure | 30 +++++++++---------- meson.build | 4 +-- tests/tcg/aarch64/Makefile.target | 6 ++-- tests/tcg/multiarch/Makefile.target | 18 ++++------- .../multiarch/system/Makefile.softmmu-target | 15 ++++------ tests/tcg/s390x/Makefile.target | 6 ++-- 6 files changed, 33 insertions(+), 46 deletions(-) diff --git a/configure b/configure index 3da46ed202d..732220fdd45 100755 --- a/configure +++ b/configure @@ -1136,6 +1136,18 @@ if test "$tcg" = "auto"; then fi fi +######################################### +# gdb test + +if test -n "$gdb_bin"; then + gdb_version=$($gdb_bin --version | head -n 1) + if version_ge ${gdb_version##* } 9.1; then + gdb_arches=$($python "$source_path/scripts/probe-gdb-support.py" $gdb_bin) + else + gdb_bin="" + fi +fi + ########################################## # big/little endian test cat > $TMPC << EOF @@ -1656,17 +1668,7 @@ fi echo "SRC_PATH=$source_path" >> $config_host_mak echo "TARGET_DIRS=$target_list" >> $config_host_mak - -if test -n "$gdb_bin"; then - gdb_version=$($gdb_bin --version | head -n 1) - if version_ge ${gdb_version##* } 9.1; then - echo "HAVE_GDB_BIN=$gdb_bin" >> $config_host_mak - gdb_arches=$($python "$source_path/scripts/probe-gdb-support.py" $gdb_bin) - else - gdb_bin="" - fi -fi - +echo "GDB=$gdb_bin" >> $config_host_mak if test "$container" != no; then echo "RUNC=$runc" >> $config_host_mak fi @@ -1711,10 +1713,6 @@ mkdir -p tests/tcg echo "# Automatically generated by configure - do not modify" > $config_host_mak echo "SRC_PATH=$source_path" >> $config_host_mak -# versioned checked in the main config_host.mak above -if test -n "$gdb_bin"; then - echo "HAVE_GDB_BIN=$gdb_bin" >> $config_host_mak -fi if test "$plugins" = "yes" ; then echo "CONFIG_PLUGIN=y" >> $config_host_mak fi @@ -1751,7 +1749,7 @@ for target in $target_list; do # will GDB work with these binaries? if test "${gdb_arches#*$arch}" != "$gdb_arches"; then - echo "HOST_GDB_SUPPORTS_ARCH=y" >> "$config_target_mak" + echo "GDB=$gdb_bin" >> $config_target_mak fi echo "run-tcg-tests-$target: $qemu\$(EXESUF)" >> Makefile.prereqs diff --git a/meson.build b/meson.build index 251838f2609..87bb4e9243a 100644 --- a/meson.build +++ b/meson.build @@ -4021,8 +4021,8 @@ summary(summary_info, bool_yn: true, section: 'Directories') summary_info = {} summary_info += {'python': '@0@ (version: @1@)'.format(python.full_path(), python.language_version())} summary_info += {'sphinx-build': sphinx_build} -if config_host.has_key('HAVE_GDB_BIN') - summary_info += {'gdb': config_host['HAVE_GDB_BIN']} +if config_host.has_key('GDB') + summary_info += {'gdb': config_host['GDB']} endif summary_info += {'iasl': iasl} summary_info += {'genisoimage': config_host['GENISOIMAGE']} diff --git a/tests/tcg/aarch64/Makefile.target b/tests/tcg/aarch64/Makefile.target index d01b8ff47c8..62b38c792fb 100644 --- a/tests/tcg/aarch64/Makefile.target +++ b/tests/tcg/aarch64/Makefile.target @@ -105,19 +105,19 @@ sha512-sve: sha512.c TESTS += sha512-sve -ifeq ($(HOST_GDB_SUPPORTS_ARCH),y) +ifneq ($(GDB),) GDB_SCRIPT=$(SRC_PATH)/tests/guest-debug/run-test.py run-gdbstub-sysregs: sysregs $(call run-test, $@, $(GDB_SCRIPT) \ - --gdb $(HAVE_GDB_BIN) \ + --gdb $(GDB) \ --qemu $(QEMU) --qargs "$(QEMU_OPTS)" \ --bin $< --test $(AARCH64_SRC)/gdbstub/test-sve.py, \ basic gdbstub SVE support) run-gdbstub-sve-ioctls: sve-ioctls $(call run-test, $@, $(GDB_SCRIPT) \ - --gdb $(HAVE_GDB_BIN) \ + --gdb $(GDB) \ --qemu $(QEMU) --qargs "$(QEMU_OPTS)" \ --bin $< --test $(AARCH64_SRC)/gdbstub/test-sve-ioctl.py, \ basic gdbstub SVE ZLEN support) diff --git a/tests/tcg/multiarch/Makefile.target b/tests/tcg/multiarch/Makefile.target index 43bddeaf212..f3bfaf1a228 100644 --- a/tests/tcg/multiarch/Makefile.target +++ b/tests/tcg/multiarch/Makefile.target @@ -63,45 +63,39 @@ run-test-mmap: test-mmap run-test-mmap-%: test-mmap $(call run-test, test-mmap-$*, $(QEMU) -p $* $<, $< ($* byte pages)) -ifneq ($(HAVE_GDB_BIN),) -ifeq ($(HOST_GDB_SUPPORTS_ARCH),y) +ifneq ($(GDB),) GDB_SCRIPT=$(SRC_PATH)/tests/guest-debug/run-test.py run-gdbstub-sha1: sha1 $(call run-test, $@, $(GDB_SCRIPT) \ - --gdb $(HAVE_GDB_BIN) \ + --gdb $(GDB) \ --qemu $(QEMU) --qargs "$(QEMU_OPTS)" \ --bin $< --test $(MULTIARCH_SRC)/gdbstub/sha1.py, \ basic gdbstub support) run-gdbstub-qxfer-auxv-read: sha1 $(call run-test, $@, $(GDB_SCRIPT) \ - --gdb $(HAVE_GDB_BIN) \ + --gdb $(GDB) \ --qemu $(QEMU) --qargs "$(QEMU_OPTS)" \ --bin $< --test $(MULTIARCH_SRC)/gdbstub/test-qxfer-auxv-read.py, \ basic gdbstub qXfer:auxv:read support) run-gdbstub-proc-mappings: sha1 $(call run-test, $@, $(GDB_SCRIPT) \ - --gdb $(HAVE_GDB_BIN) \ + --gdb $(GDB) \ --qemu $(QEMU) --qargs "$(QEMU_OPTS)" \ --bin $< --test $(MULTIARCH_SRC)/gdbstub/test-proc-mappings.py, \ proc mappings support) run-gdbstub-thread-breakpoint: testthread $(call run-test, $@, $(GDB_SCRIPT) \ - --gdb $(HAVE_GDB_BIN) \ + --gdb $(GDB) \ --qemu $(QEMU) --qargs "$(QEMU_OPTS)" \ --bin $< --test $(MULTIARCH_SRC)/gdbstub/test-thread-breakpoint.py, \ hitting a breakpoint on non-main thread) - else run-gdbstub-%: - $(call skip-test, "gdbstub test $*", "no guest arch support") -endif -else -run-gdbstub-%: - $(call skip-test, "gdbstub test $*", "need working gdb") + $(call skip-test, "gdbstub test $*", "need working gdb with $(patsubst -%,,$(TARGET_NAME)) support") endif EXTRA_RUNS += run-gdbstub-sha1 run-gdbstub-qxfer-auxv-read \ run-gdbstub-proc-mappings run-gdbstub-thread-breakpoint diff --git a/tests/tcg/multiarch/system/Makefile.softmmu-target b/tests/tcg/multiarch/system/Makefile.softmmu-target index 90810a32b2f..dee4f58dea1 100644 --- a/tests/tcg/multiarch/system/Makefile.softmmu-target +++ b/tests/tcg/multiarch/system/Makefile.softmmu-target @@ -14,13 +14,12 @@ VPATH+=$(MULTIARCH_SYSTEM_SRC) MULTIARCH_TEST_SRCS=$(wildcard $(MULTIARCH_SYSTEM_SRC)/*.c) MULTIARCH_TESTS = $(patsubst $(MULTIARCH_SYSTEM_SRC)/%.c, %, $(MULTIARCH_TEST_SRCS)) -ifneq ($(HAVE_GDB_BIN),) -ifeq ($(HOST_GDB_SUPPORTS_ARCH),y) +ifneq ($(GDB),) GDB_SCRIPT=$(SRC_PATH)/tests/guest-debug/run-test.py run-gdbstub-memory: memory $(call run-test, $@, $(GDB_SCRIPT) \ - --gdb $(HAVE_GDB_BIN) \ + --gdb $(GDB) \ --qemu $(QEMU) \ --output $<.gdb.out \ --qargs \ @@ -29,7 +28,7 @@ run-gdbstub-memory: memory softmmu gdbstub support) run-gdbstub-interrupt: interrupt $(call run-test, $@, $(GDB_SCRIPT) \ - --gdb $(HAVE_GDB_BIN) \ + --gdb $(GDB) \ --qemu $(QEMU) \ --output $<.gdb.out \ --qargs \ @@ -38,7 +37,7 @@ run-gdbstub-interrupt: interrupt softmmu gdbstub support) run-gdbstub-untimely-packet: hello $(call run-test, $@, $(GDB_SCRIPT) \ - --gdb $(HAVE_GDB_BIN) \ + --gdb $(GDB) \ --gdb-args "-ex 'set debug remote 1'" \ --output untimely-packet.gdb.out \ --stderr untimely-packet.gdb.err \ @@ -51,11 +50,7 @@ run-gdbstub-untimely-packet: hello "GREP", file untimely-packet.gdb.err) else run-gdbstub-%: - $(call skip-test, "gdbstub test $*", "no guest arch support") -endif -else -run-gdbstub-%: - $(call skip-test, "gdbstub test $*", "need working gdb") + $(call skip-test, "gdbstub test $*", "need working gdb with $(patsubst -%,,$(TARGET_NAME)) support") endif MULTIARCH_RUNS += run-gdbstub-memory run-gdbstub-interrupt run-gdbstub-untimely-packet diff --git a/tests/tcg/s390x/Makefile.target b/tests/tcg/s390x/Makefile.target index c650aefe5c1..826f0a18e43 100644 --- a/tests/tcg/s390x/Makefile.target +++ b/tests/tcg/s390x/Makefile.target @@ -81,12 +81,12 @@ $(Z15_TESTS): CFLAGS+=-march=z15 -O2 TESTS+=$(Z15_TESTS) endif -ifeq ($(HOST_GDB_SUPPORTS_ARCH),y) +ifneq ($(GDB),) GDB_SCRIPT=$(SRC_PATH)/tests/guest-debug/run-test.py run-gdbstub-signals-s390x: signals-s390x $(call run-test, $@, $(GDB_SCRIPT) \ - --gdb $(HAVE_GDB_BIN) \ + --gdb $(GDB) \ --qemu $(QEMU) --qargs "$(QEMU_OPTS)" \ --bin $< --test $(S390X_SRC)/gdbstub/test-signals-s390x.py, \ mixing signals and debugging) @@ -95,7 +95,7 @@ hello-s390x-asm: CFLAGS+=-nostdlib run-gdbstub-svc: hello-s390x-asm $(call run-test, $@, $(GDB_SCRIPT) \ - --gdb $(HAVE_GDB_BIN) \ + --gdb $(GDB) \ --qemu $(QEMU) --qargs "$(QEMU_OPTS)" \ --bin $< --test $(S390X_SRC)/gdbstub/test-svc.py, \ single-stepping svc) From patchwork Mon Oct 16 06:31:19 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849165 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=XBIIPSh2; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86lB4871z20Zj for ; Mon, 16 Oct 2023 17:33:58 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH8z-00041K-JO; Mon, 16 Oct 2023 02:32:01 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8x-000405-IK for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:59 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8u-0005TD-Va for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:59 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437916; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=QEBhg/nis2v2E6TOtez7OB+wequT7+FUk6KnJtqVqLQ=; b=XBIIPSh2p7wHw/8KxUKuNtEwuOmcCUbUSMDoXuoR1awGxbcBRUS3QOfhe//2i4tpTv2q5/ v9+4EaMvOj56dDDNo5WIftjc0Zmany4JvSg78WXTDjh7IYlvRiQqdXBXRFUzoavYUBWyJG xc5+oKqfF+3Sudbm+oLgWG6DuwItO2A= Received: from mail-ej1-f69.google.com (mail-ej1-f69.google.com [209.85.218.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-462-20BsEUevO1eosAyHqBxjrA-1; Mon, 16 Oct 2023 02:31:48 -0400 X-MC-Unique: 20BsEUevO1eosAyHqBxjrA-1 Received: by mail-ej1-f69.google.com with SMTP id a640c23a62f3a-9bf8678af70so79786566b.2 for ; Sun, 15 Oct 2023 23:31:48 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437907; x=1698042707; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=QEBhg/nis2v2E6TOtez7OB+wequT7+FUk6KnJtqVqLQ=; b=r0d7YNi2/GwbOPLbe/AGcV55jghIJNOXteqUafLwgHE4aZrz2Ro40gITaiRo1JhSwm J2m049HdJbrxzyTUMdDiHcdErPXEFiD1NPMsJSwt7HGrtUne2K5zxVFZ1ObydUbfP18s jZxX2YhcMSYomJCtJSYvVdvp9GRKF+1GvMq/LfNtVWex/DRHTF/2QoydFcDsbFHpFH7T SKiUaprvXbZoHKZv6cTbDeIZCGePnloljKX3e1QBHTg2PpssQIt89HeG8TV3KTjKo1Ma WO7PREWndrDGg2fDdxieG+i8zKIfbNEOfWIRJculfo5+9pGZJu2e3Q/UDlaU9N32haEC 7RBA== X-Gm-Message-State: AOJu0YwObkRu6hBnCDY3Rlv5Vl+FFfqMoM/Ir+3OOsVGMmn3jEGrZQ0Y 6tRBEqDbXEBG+YW/xNSvki/fz5zuJOkKS3UbPB1ym+sA/b/Nsa7sGUyCL6moKc/uCwpGUJDWGda fA6rh7tUccwhV0EFYm5q+8LUUQETv+VZm07eHwc/UTDPhPWzwWbLJ8aT+LZPVaMP6FYXidunFAa E= X-Received: by 2002:a17:906:1092:b0:9bd:8cfd:e588 with SMTP id u18-20020a170906109200b009bd8cfde588mr9430116eju.27.1697437907116; Sun, 15 Oct 2023 23:31:47 -0700 (PDT) X-Google-Smtp-Source: AGHT+IG8iKsTJyQLe9NFzfJuJFc04u+LWkH7wByxPCpsdCjH86lkpHt8yWbA1G7Jd7O3KRQAVN8/8w== X-Received: by 2002:a17:906:1092:b0:9bd:8cfd:e588 with SMTP id u18-20020a170906109200b009bd8cfde588mr9430104eju.27.1697437906806; Sun, 15 Oct 2023 23:31:46 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id jz28-20020a17090775fc00b009b29553b648sm3285597ejc.206.2023.10.15.23.31.45 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:31:45 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PATCH 09/17] configure: clean up plugin option handling Date: Mon, 16 Oct 2023 08:31:19 +0200 Message-ID: <20231016063127.161204-10-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Keep together all the conditions that lead to disabling plugins, and remove now-dead code. Since the option was not in SKIP_OPTIONS, it was present twice in the help message, both from configure and from meson-buildoptions.sh. Remove the duplication and take the occasion to document the option as autodetected, which it is. Signed-off-by: Paolo Bonzini --- configure | 39 +++++++++++++++-------------------- scripts/meson-buildoptions.py | 17 ++++++++++----- scripts/meson-buildoptions.sh | 2 +- 3 files changed, 30 insertions(+), 28 deletions(-) diff --git a/configure b/configure index 732220fdd45..7dad78f329b 100755 --- a/configure +++ b/configure @@ -377,7 +377,6 @@ fi case $targetos in windows) - plugins="no" pie="no" ;; haiku) @@ -737,7 +736,6 @@ for opt do default_cflags='-O0 -g' ;; --disable-tcg) tcg="disabled" - plugins="no" ;; --enable-tcg) tcg="enabled" ;; @@ -774,11 +772,7 @@ for opt do ;; --enable-download) download="enabled"; git_submodules_action=update; ;; - --enable-plugins) if test "$targetos" = "windows"; then - error_exit "TCG plugins not currently supported on Windows platforms" - else - plugins="yes" - fi + --enable-plugins) plugins="yes" ;; --disable-plugins) plugins="no" ;; @@ -804,11 +798,6 @@ then git_submodules_action="validate" fi -# test for any invalid configuration combinations -if test "$plugins" = "yes" -a "$tcg" = "disabled"; then - error_exit "Can't enable plugins on non-TCG builds" -fi - if ! test -f "$source_path/subprojects/keycodemapdb/README" \ && test "$download" = disabled then @@ -919,8 +908,6 @@ Advanced options (experts only): --enable-debug enable common debug build options --disable-werror disable compilation abort on warning --cpu=CPU Build for host CPU [$cpu] - --enable-plugins - enable plugins via shared library loading --disable-containers don't use containers for cross-building --container-engine=TYPE which container engine to use [$container_engine] --gdb=GDB-path gdb to use for gdbstub tests [$gdb_bin] @@ -1062,15 +1049,27 @@ if test "$targetos" = "bogus"; then error_exit "Unrecognized host OS (uname -s reports '$(uname -s)')" fi +# test for any invalid configuration combinations +if test "$targetos" = "windows"; then + if test "$plugins" = "yes"; then + error_exit "TCG plugins not currently supported on Windows platforms" + fi + plugins="no" +fi +if test "$tcg" = "disabled" ; then + if test "$plugins" = "yes"; then + error_exit "Can't enable plugins on non-TCG builds" + fi + plugins="no" +fi if test "$static" = "yes" ; then if test "$plugins" = "yes"; then error_exit "static and plugins are mutually incompatible" - else - plugins="no" fi + plugins="no" fi -test "$plugins" = "" && plugins=yes -if test "$plugins" = "yes"; then +if test "$plugins" != "no"; then + plugins=yes subdirs="$subdirs contrib/plugins" fi @@ -1713,10 +1712,6 @@ mkdir -p tests/tcg echo "# Automatically generated by configure - do not modify" > $config_host_mak echo "SRC_PATH=$source_path" >> $config_host_mak -if test "$plugins" = "yes" ; then - echo "CONFIG_PLUGIN=y" >> $config_host_mak -fi - tcg_tests_targets= for target in $target_list; do arch=${target%%-*} diff --git a/scripts/meson-buildoptions.py b/scripts/meson-buildoptions.py index 8d2e526132a..b787c84e914 100644 --- a/scripts/meson-buildoptions.py +++ b/scripts/meson-buildoptions.py @@ -44,6 +44,11 @@ "trace_file": "with-trace-file", } +# Options that configure autodetects, even though meson defines them as boolean +AUTO_OPTIONS = { + "plugins", +} + BUILTIN_OPTIONS = { "b_coverage", "b_lto", @@ -168,6 +173,7 @@ def cli_metavar(opt): def print_help(options): print("meson_options_help() {") + feature_opts = [] for opt in sorted(options, key=cli_help_key): key = cli_help_key(opt) # The first section includes options that have an arguments, @@ -176,7 +182,7 @@ def print_help(options): metavar = cli_metavar(opt) left = f"--{key}={metavar}" help_line(left, opt, 27, True) - elif opt["type"] == "boolean": + elif opt["type"] == "boolean" and opt["name"] not in AUTO_OPTIONS: left = f"--{key}" help_line(left, opt, 27, False) elif allow_arg(opt): @@ -185,16 +191,17 @@ def print_help(options): else: left = f"--{key}=CHOICE" help_line(left, opt, 27, True) + else: + feature_opts.append(opt) sh_print() sh_print("Optional features, enabled with --enable-FEATURE and") sh_print("disabled with --disable-FEATURE, default is enabled if available") sh_print("(unless built with --without-default-features):") sh_print() - for opt in options: - key = opt["name"].replace("_", "-") - if opt["type"] != "boolean" and not allow_arg(opt): - help_line(key, opt, 18, False) + for opt in sorted(feature_opts, key=cli_option): + key = cli_option(opt) + help_line(key, opt, 18, False) print("}") diff --git a/scripts/meson-buildoptions.sh b/scripts/meson-buildoptions.sh index d4b89e6b443..22d69966606 100644 --- a/scripts/meson-buildoptions.sh +++ b/scripts/meson-buildoptions.sh @@ -40,7 +40,6 @@ meson_options_help() { printf "%s\n" ' jemalloc/system/tcmalloc)' printf "%s\n" ' --enable-module-upgrades try to load modules from alternate paths for' printf "%s\n" ' upgrades' - printf "%s\n" ' --enable-plugins TCG plugins via shared library loading' printf "%s\n" ' --enable-rng-none dummy RNG, avoid using /dev/(u)random and' printf "%s\n" ' getrandom()' printf "%s\n" ' --enable-safe-stack SafeStack Stack Smash Protection (requires' @@ -149,6 +148,7 @@ meson_options_help() { printf "%s\n" ' pa PulseAudio sound support' printf "%s\n" ' parallels parallels image format support' printf "%s\n" ' pipewire PipeWire sound support' + printf "%s\n" ' plugins TCG plugins via shared library loading' printf "%s\n" ' png PNG support with libpng' printf "%s\n" ' pvrdma Enable PVRDMA support' printf "%s\n" ' qcow1 qcow1 image format support' From patchwork Mon Oct 16 06:31:20 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849166 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=Ci5+aga/; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86lM3j8Jz20Pd for ; Mon, 16 Oct 2023 17:34:07 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH8w-0003zV-DC; Mon, 16 Oct 2023 02:31:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8u-0003yi-Ur for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:56 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8t-0005T3-FD for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:56 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437914; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=igE3z/qNeoB/rMwL7Qq+v4/CnSK2ZONLhR6t8IlRdAw=; b=Ci5+aga/2ywCtxk5PrSjvB2nT/mTJurs5tY6/ICU4fZ3VPaLA5tgU2ptLqkfdLmITIqqk/ IA7TF4Pqr8tn/hsdfECIwRNl5cvFcVnCWbGzRXwhBCtArl5RLmlIkTvhT2uGyTbCVCncW4 pKElQas4MH5pNp8961yagR+cq0UV9pY= Received: from mail-ej1-f69.google.com (mail-ej1-f69.google.com [209.85.218.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-518-2RmlmJIuOAmJhh6BlB_NDQ-1; Mon, 16 Oct 2023 02:31:50 -0400 X-MC-Unique: 2RmlmJIuOAmJhh6BlB_NDQ-1 Received: by mail-ej1-f69.google.com with SMTP id a640c23a62f3a-9a5d86705e4so295060766b.1 for ; Sun, 15 Oct 2023 23:31:50 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437909; x=1698042709; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=igE3z/qNeoB/rMwL7Qq+v4/CnSK2ZONLhR6t8IlRdAw=; b=oIJmK0c/nWQbx4pJjBz6bICYVbbCLePsVsreBE0pxogHk+N+hvfqAAfnegHgC51Jms gfMBL8AatCdGi3Ft5CN/FMtL2t16D26dxaMmcBzo/MT7O3EKHZ7PkSwF8UL0mP9JKJG2 bOYokDePCROChMzoX1gNzOtSWrFHXkuRoVLXQFsJg5kMocHkbPJ3AmKI9B9kqDBJcXa6 M999ql51kRLSQ51NYKBCDkybQs+ug8fdWM2PVtHhMNop/LQuVPF8bj9Tnmie62DFd8ml DsAa6ZjxbQWF3JvfU7/nheiQexSTmlWnsEwP92FbcjFo6es41K2Z/pzKdtirvQhQ7i7Z zPXg== X-Gm-Message-State: AOJu0YzA79CMPhQKxnilZXTLKqdqkHolAH66X9keKJYeZIMCtFQ5fZdp ydhqW4hqUxL0brA4enn8zVzbvjSM1eP/KQISFsBF9bM3iMfbYobGbFlTK3G6F8+XKN+QXC9njKJ 1Xm93B99WxO59MXP7wMEhOhfBcDwefdQrZbDInXytHI22dk9H/Qpe7/i2khSglMPjSgYcP1ZyHm g= X-Received: by 2002:a17:906:3cb2:b0:9ba:65e:7529 with SMTP id b18-20020a1709063cb200b009ba065e7529mr18822091ejh.68.1697437908848; Sun, 15 Oct 2023 23:31:48 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHk0RWCTY/BLOTlvzBGAel54+I+OIWV2SKIJVrhrQ0XNqFwqkSJgt8000QHkbeaplVg9GCuNQ== X-Received: by 2002:a17:906:3cb2:b0:9ba:65e:7529 with SMTP id b18-20020a1709063cb200b009ba065e7529mr18822079ejh.68.1697437908521; Sun, 15 Oct 2023 23:31:48 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id rh9-20020a17090720e900b009ae54585aebsm3345161ejb.89.2023.10.15.23.31.47 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:31:47 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PATCH 10/17] configure: clean up PIE option handling Date: Mon, 16 Oct 2023 08:31:20 +0200 Message-ID: <20231016063127.161204-11-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Keep together all the conditions that lead to disabling PIE. Signed-off-by: Paolo Bonzini --- configure | 35 ++++++++++++++--------------------- 1 file changed, 14 insertions(+), 21 deletions(-) diff --git a/configure b/configure index 7dad78f329b..a713493e9e2 100755 --- a/configure +++ b/configure @@ -373,17 +373,6 @@ else targetos=bogus fi -# OS specific - -case $targetos in -windows) - pie="no" -;; -haiku) - pie="no" -;; -esac - if test ! -z "$cpu" ; then # command line argument : @@ -1084,19 +1073,23 @@ static THREAD int tls_var; int main(void) { return tls_var; } EOF -if test "$static" = "yes"; then - if test "$pie" != "no" && compile_prog "-Werror -fPIE -DPIE" "-static-pie"; then +if test "$targetos" = windows || test "$targetos" = haiku; then + if test "$pie" = "yes"; then + error_exit "PIE not available due to missing OS support" + fi + pie=no +fi + +if test "$pie" != "no"; then + if test "$static" = "yes"; then + pie_ldflags=-static-pie + else + pie_ldflags=-pie + fi + if compile_prog "-Werror -fPIE -DPIE" "$pie_ldflags"; then pie="yes" elif test "$pie" = "yes"; then error_exit "-static-pie not available due to missing toolchain support" - else - pie="no" - fi -elif test "$pie" != "no"; then - if compile_prog "-Werror -fPIE -DPIE" "-pie"; then - pie="yes" - elif test "$pie" = "yes"; then - error_exit "PIE not available due to missing toolchain support" else echo "Disabling PIE due to missing toolchain support" pie="no" From patchwork Mon Oct 16 06:31:21 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849170 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=AAIBqnEp; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86lY1zsDz20Zj for ; Mon, 16 Oct 2023 17:34:17 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH8y-00040U-VT; Mon, 16 Oct 2023 02:32:00 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8w-0003zN-7H for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:58 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8u-0005T9-Qu for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:57 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437915; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=+xiOvaSzl8o1kGTHwVfCqOfceYz2MAK3SLhuAOzF+c4=; b=AAIBqnEpUpvf0SI5vxvoZzrQcrMOor9VPjMenkiLqA2bMyqS+571t6QBduGLEYn9yEwsN6 Lvjq4CNt9g1IlaGEmoSvgLfeksVa2+o50OA57PVkn+TMofnctIM+9dWS6ECCZsynaaRAFw yUifb98/dzaUrtKE0c4sHHhAc88wzVs= Received: from mail-ej1-f72.google.com (mail-ej1-f72.google.com [209.85.218.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-213-oHvnGE0AMvucCql0-RjFKQ-1; Mon, 16 Oct 2023 02:31:53 -0400 X-MC-Unique: oHvnGE0AMvucCql0-RjFKQ-1 Received: by mail-ej1-f72.google.com with SMTP id a640c23a62f3a-9ae686dafedso294018266b.3 for ; Sun, 15 Oct 2023 23:31:52 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437911; x=1698042711; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+xiOvaSzl8o1kGTHwVfCqOfceYz2MAK3SLhuAOzF+c4=; b=MBHFmrNLdiGhgIUMF7aY+uUhKUC1fOvs4Qhnn2wZgIf1z9u7lOdQCAI6uj6E9PifM4 125uBGYcm2a99E55bv+0oL4+8RYw6HhwSWDmPb8hpO8l3xhca/XTd8u8yEXeob5JLgK8 rPyLYuXGGgyGwnHGOpuXKWMKPbmlbWjtzOcsEZZmIF+DKrWg4rTphFrHvwu6EaKlMfR2 BHF7tyot1gt6uPNlmjoGz12EkxXGXBixoa030RZm4CvI1bhHx/l6zsaFFkiHu0lOVF6C 5FhpKwAFZhFRf2Lpo4R1vs1IFqeIyDmh5a8qgro8R/DZu4E6xBEekeOXj3/PTVi7wedL ww+Q== X-Gm-Message-State: AOJu0Ywm9tPmc6Ki4JCH9c3okwlWKj5jfjb43PdlFDCkzWDVg2tRDxjF oPF+fEYi5CNGLvXEpRVO2QdslkwgVVgZhupOyIOsXKadolLloZb2RauQGaplRMLSC9SFdycEicL whQRLLibkxQULvO2nbWQjQu0hwJToFtt5/eHGiautsp9TBs1ziQEa5gYI2g7z7Hg5PfDQ+7APYr E= X-Received: by 2002:a17:906:ef04:b0:9be:b12:1423 with SMTP id f4-20020a170906ef0400b009be0b121423mr6485171ejs.44.1697437911595; Sun, 15 Oct 2023 23:31:51 -0700 (PDT) X-Google-Smtp-Source: AGHT+IF4WsH4oqpVyVEszql1pDDrDZU+oYyYtk3oea8CCNQckqb7DKPoa100cbkj2BIZCbLqVyZEbQ== X-Received: by 2002:a17:906:ef04:b0:9be:b12:1423 with SMTP id f4-20020a170906ef0400b009be0b121423mr6485159ejs.44.1697437911278; Sun, 15 Oct 2023 23:31:51 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id l1-20020a170906078100b009928b4e3b9fsm3386493ejc.114.2023.10.15.23.31.50 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:31:50 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PATCH 11/17] configure: remove some dead cruft Date: Mon, 16 Oct 2023 08:31:21 +0200 Message-ID: <20231016063127.161204-12-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org print_error is only invoked in one place, and $git is unused. Signed-off-by: Paolo Bonzini Reviewed-by: Thomas Huth --- configure | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/configure b/configure index a713493e9e2..211591911cc 100755 --- a/configure +++ b/configure @@ -94,7 +94,7 @@ quote_sh() { printf "%s" "$1" | sed "s,','\\\\'',g; s,.*,'&'," } -print_error() { +error_exit() { (echo echo "ERROR: $1" while test -n "$2"; do @@ -102,10 +102,6 @@ print_error() { shift done echo) >&2 -} - -error_exit() { - print_error "$@" exit 1 } @@ -248,7 +244,6 @@ done default_cflags='-O2 -g' git_submodules_action="update" -git="git" docs="auto" EXESUF="" prefix="/usr/local" From patchwork Mon Oct 16 06:31:22 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849168 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=LKG3IhPC; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86lQ20GCz20Zj for ; Mon, 16 Oct 2023 17:34:10 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH91-000420-SJ; Mon, 16 Oct 2023 02:32:03 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8x-00040D-SN for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:59 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH8v-0005TN-K7 for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:31:59 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437916; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=REi6HQck2TUeMpOKRqPBSFfgxuGcZSMdyfYk1mhVlOw=; b=LKG3IhPCDDK7wWIqTiygEYw7+0ZjUQraapS/99j26aH9ipNQiiw8mm/wzHBYqhfk3IiLFz 7eeBI/C4cBsVh5cit4wxC8HhbEY2mk9i+eCKLl7DI2XRVBrka8ccZJOOUWdp1jYkTYRmm4 Og/VA54NNVtJsuFdNZDvGzJ/CJsKQ6s= Received: from mail-ej1-f72.google.com (mail-ej1-f72.google.com [209.85.218.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-103-_ltPE-YoMEOEK5ubLWAVzw-1; Mon, 16 Oct 2023 02:31:54 -0400 X-MC-Unique: _ltPE-YoMEOEK5ubLWAVzw-1 Received: by mail-ej1-f72.google.com with SMTP id a640c23a62f3a-9bd91ce3033so260201166b.0 for ; Sun, 15 Oct 2023 23:31:54 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437913; x=1698042713; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=REi6HQck2TUeMpOKRqPBSFfgxuGcZSMdyfYk1mhVlOw=; b=dOQfjhSdjhc1Vy3Te6ubMhSSJhmDpAQ6Fxiel+Q2GCaVschLqDY2OZLrNrr23kP6mA Lxw/DVS+xnyLX9EY1zIziYak8GEv3GnI5WOp0lWV7ftjwb+1U6uA10W7Cwu2TlU2u43b Q+olEOm6tvySUESkfOIisomw+TlaA8kmsSTuyBkztfZSaZ83Fav2Ab8C14CrBDBXpYBE F1lUYI5WLLSw7MpmSV8jOg0NltXCL0OPFBn70/hEEdjQDT9mmjIqWtjKRcy0n/tis+vL EgrzxTELdxF38TcPp4v5n6TorstciDnPAMyJDKo2iQEr+qphJfM2cPe6vD/+q3QJeR3l LguQ== X-Gm-Message-State: AOJu0YwylLv6VNKyjsWlms+DmCECafbmjXAFxn1/0owqRmZf159YYtbw Ql9J20GCImde7DaLdHEjLz66cgH2G9X7qm48JGSeycAcXGKCYrwp0ZN51L93aUbs5nE9gbAn6+r I72hVcc7oJEWlLYtQoPNxNOQMR5oU9cmvD0hzNVPevniiu0XDRxyrqwWyhTt+S1e3fA/vSxBryJ k= X-Received: by 2002:a17:907:2d27:b0:9bf:4e0b:fb05 with SMTP id gs39-20020a1709072d2700b009bf4e0bfb05mr4523007ejc.11.1697437913270; Sun, 15 Oct 2023 23:31:53 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFcDow/BUKnhkxTQsIFGZvQUTLpZD7QCkWFa0Qisc7Cw7H63N0Zr0bBN9+e1Ze3irNV7bGMQw== X-Received: by 2002:a17:907:2d27:b0:9bf:4e0b:fb05 with SMTP id gs39-20020a1709072d2700b009bf4e0bfb05mr4522985ejc.11.1697437912859; Sun, 15 Oct 2023 23:31:52 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id my13-20020a1709065a4d00b0099bc8bd9066sm3357257ejc.150.2023.10.15.23.31.52 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:31:52 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PATCH 12/17] configure: move target-specific defaults to an external machine file Date: Mon, 16 Oct 2023 08:31:22 +0200 Message-ID: <20231016063127.161204-13-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Enable Windows-specific defaults with a machine file, so that related options can be automatically parsed and included in the help message. Signed-off-by: Paolo Bonzini --- configs/meson/windows.txt | 9 +++++++++ configure | 38 +++++++++++++++-------------------- scripts/meson-buildoptions.py | 4 +++- scripts/meson-buildoptions.sh | 7 +++++++ 4 files changed, 35 insertions(+), 23 deletions(-) create mode 100644 configs/meson/windows.txt diff --git a/configs/meson/windows.txt b/configs/meson/windows.txt new file mode 100644 index 00000000000..55b192e71b1 --- /dev/null +++ b/configs/meson/windows.txt @@ -0,0 +1,9 @@ +# target-specific defaults, can still be overridden on +# the command line + +[built-in options] +bindir = '' +prefix = '/qemu' + +[project options] +qemu_suffix = '' diff --git a/configure b/configure index 211591911cc..e6787dc4111 100755 --- a/configure +++ b/configure @@ -246,8 +246,6 @@ default_cflags='-O2 -g' git_submodules_action="update" docs="auto" EXESUF="" -prefix="/usr/local" -qemu_suffix="qemu" system="yes" linux_user="" bsd_user="" @@ -256,7 +254,6 @@ subdirs="" ninja="" python= download="enabled" -bindir="bin" skip_meson=no use_containers="yes" gdb_bin=$(command -v "gdb-multiarch" || command -v "gdb") @@ -582,9 +579,6 @@ done if test "$targetos" = "windows" ; then EXESUF=".exe" - prefix="/qemu" - bindir="" - qemu_suffix="" fi meson_option_build_array() { @@ -618,6 +612,15 @@ meson_option_parse() { fi } +meson_add_machine_file() { + if test "$cross_compile" = "yes"; then + meson_option_add --cross-file + else + meson_option_add --native-file + fi + meson_option_add "$1" +} + for opt do optarg=$(expr "x$opt" : 'x[^=]*=\(.*\)') case "$opt" in @@ -625,8 +628,6 @@ for opt do ;; --version|-V) exec cat "$source_path/VERSION" ;; - --prefix=*) prefix="$optarg" - ;; --cross-prefix=*) ;; --cc=*) @@ -697,10 +698,6 @@ for opt do ;; --static) static="yes" ;; - --bindir=*) bindir="$optarg" - ;; - --with-suffix=*) qemu_suffix="$optarg" - ;; --host=*|--build=*|\ --disable-dependency-tracking|\ --sbindir=*|--sharedstatedir=*|\ @@ -857,7 +854,6 @@ Options: [defaults in brackets after descriptions] Standard options: --help print this message - --prefix=PREFIX install in PREFIX [$prefix] --target-list=LIST set target list (default: build all) $(echo Available targets: $default_target_list | \ fold -s -w 53 | sed -e 's/^/ /') @@ -882,8 +878,6 @@ Advanced options (experts only): --ninja=NINJA use specified ninja [$ninja] --smbd=SMBD use specified smbd [$smbd] --static enable static build [$static] - --bindir=PATH install binaries in PATH - --with-suffix=SUFFIX suffix for QEMU data inside datadir/libdir/sysconfdir/docdir [$qemu_suffix] --without-default-features default all --enable-* options to "disabled" --without-default-devices do not include any device that is not needed to start the emulator (only use if you are including @@ -1799,24 +1793,25 @@ if test "$skip_meson" = no; then else echo "endian = 'little'" >> $cross fi - cross_arg="--cross-file config-meson.cross" native="config-meson.native.new" echo "# Automatically generated by configure - do not modify" > $native echo "[binaries]" >> $native echo "c = [$(meson_quote $host_cc)]" >> $native mv $native config-meson.native - cross_arg="$cross_arg --native-file config-meson.native" - else - cross_arg="--native-file config-meson.cross" + meson_option_add --native-file + meson_option_add config-meson.native fi mv $cross config-meson.cross + meson_add_machine_file config-meson.cross + if test -f "$source_path/configs/meson/$targetos.txt"; then + meson_add_machine_file $source_path/configs/meson/$targetos.txt + fi rm -rf meson-private meson-info meson-logs # Built-in options test "$download" = "disabled" && meson_option_add "--wrap-mode=nodownload" - test "$bindir" != "bin" && meson_option_add "-Dbindir=$bindir" test "$default_feature" = no && meson_option_add -Dauto_features=disabled test "$static" = yes && meson_option_add -Dprefer_static=true test "$pie" = no && meson_option_add -Db_pie=false @@ -1828,11 +1823,10 @@ if test "$skip_meson" = no; then test "$docs" != auto && meson_option_add "-Ddocs=$docs" test -n "${LIB_FUZZING_ENGINE+xxx}" && meson_option_add "-Dfuzzing_engine=$LIB_FUZZING_ENGINE" test "$plugins" = yes && meson_option_add "-Dplugins=true" - test "$qemu_suffix" != qemu && meson_option_add "-Dqemu_suffix=$qemu_suffix" test "$smbd" != '' && meson_option_add "-Dsmbd=$smbd" test "$tcg" != enabled && meson_option_add "-Dtcg=$tcg" run_meson() { - NINJA=$ninja $meson setup --prefix "$prefix" "$@" $cross_arg "$PWD" "$source_path" + NINJA=$ninja $meson setup "$@" "$PWD" "$source_path" } eval run_meson $meson_options if test "$?" -ne 0 ; then diff --git a/scripts/meson-buildoptions.py b/scripts/meson-buildoptions.py index b787c84e914..0c24bdc1e8c 100644 --- a/scripts/meson-buildoptions.py +++ b/scripts/meson-buildoptions.py @@ -28,7 +28,6 @@ SKIP_OPTIONS = { "default_devices", "fuzzing_engine", - "qemu_suffix", "smbd", } @@ -40,6 +39,7 @@ "malloc": "enable-malloc", "pkgversion": "with-pkgversion", "qemu_firmwarepath": "firmwarepath", + "qemu_suffix": "with-suffix", "trace_backends": "enable-trace-backends", "trace_file": "with-trace-file", } @@ -52,6 +52,7 @@ BUILTIN_OPTIONS = { "b_coverage", "b_lto", + "bindir", "datadir", "debug", "includedir", @@ -60,6 +61,7 @@ "localedir", "localstatedir", "mandir", + "prefix", "strip", "sysconfdir", } diff --git a/scripts/meson-buildoptions.sh b/scripts/meson-buildoptions.sh index 22d69966606..e1522030619 100644 --- a/scripts/meson-buildoptions.sh +++ b/scripts/meson-buildoptions.sh @@ -3,6 +3,7 @@ meson_options_help() { printf "%s\n" ' --audio-drv-list=CHOICES Set audio driver list [default] (choices: alsa/co' printf "%s\n" ' reaudio/default/dsound/jack/oss/pa/pipewire/sdl/s' printf "%s\n" ' ndio)' + printf "%s\n" ' --bindir=VALUE Executable directory [bin]' printf "%s\n" ' --block-drv-ro-whitelist=VALUE' printf "%s\n" ' set block driver read-only whitelist (by default' printf "%s\n" ' affects only QEMU, not tools like qemu-img)' @@ -62,6 +63,7 @@ meson_options_help() { printf "%s\n" ' --localedir=VALUE Locale data directory [share/locale]' printf "%s\n" ' --localstatedir=VALUE Localstate data directory [/var/local]' printf "%s\n" ' --mandir=VALUE Manual page directory [share/man]' + printf "%s\n" ' --prefix=VALUE Installation prefix [/usr/local]' printf "%s\n" ' --sysconfdir=VALUE Sysconf data directory [etc]' printf "%s\n" ' --tls-priority=VALUE Default TLS protocol/cipher priority string' printf "%s\n" ' [NORMAL]' @@ -69,6 +71,8 @@ meson_options_help() { printf "%s\n" ' auto/sigaltstack/ucontext/windows)' printf "%s\n" ' --with-pkgversion=VALUE use specified string as sub-version of the' printf "%s\n" ' package' + printf "%s\n" ' --with-suffix=VALUE Suffix for QEMU data/modules/config directories' + printf "%s\n" ' (can be empty) [qemu]' printf "%s\n" ' --with-trace-file=VALUE Trace file prefix for simple backend [trace]' printf "%s\n" '' printf "%s\n" 'Optional features, enabled with --enable-FEATURE and' @@ -229,6 +233,7 @@ _meson_option_parse() { --disable-gcov) printf "%s" -Db_coverage=false ;; --enable-lto) printf "%s" -Db_lto=true ;; --disable-lto) printf "%s" -Db_lto=false ;; + --bindir=*) quote_sh "-Dbindir=$2" ;; --enable-blkio) printf "%s" -Dblkio=enabled ;; --disable-blkio) printf "%s" -Dblkio=disabled ;; --block-drv-ro-whitelist=*) quote_sh "-Dblock_drv_ro_whitelist=$2" ;; @@ -407,6 +412,7 @@ _meson_option_parse() { --disable-plugins) printf "%s" -Dplugins=false ;; --enable-png) printf "%s" -Dpng=enabled ;; --disable-png) printf "%s" -Dpng=disabled ;; + --prefix=*) quote_sh "-Dprefix=$2" ;; --enable-pvrdma) printf "%s" -Dpvrdma=enabled ;; --disable-pvrdma) printf "%s" -Dpvrdma=disabled ;; --enable-qcow1) printf "%s" -Dqcow1=enabled ;; @@ -414,6 +420,7 @@ _meson_option_parse() { --enable-qed) printf "%s" -Dqed=enabled ;; --disable-qed) printf "%s" -Dqed=disabled ;; --firmwarepath=*) quote_sh "-Dqemu_firmwarepath=$(meson_option_build_array $2)" ;; + --with-suffix=*) quote_sh "-Dqemu_suffix=$2" ;; --enable-qga-vss) printf "%s" -Dqga_vss=enabled ;; --disable-qga-vss) printf "%s" -Dqga_vss=disabled ;; --enable-qom-cast-debug) printf "%s" -Dqom_cast_debug=true ;; From patchwork Mon Oct 16 06:31:23 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849161 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=YKOtLold; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86l11Q7vz20Pd for ; Mon, 16 Oct 2023 17:33:49 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH9M-0004cW-50; Mon, 16 Oct 2023 02:32:24 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH9I-0004Ni-TL for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:32:20 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH9H-0005WU-0d for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:32:20 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437938; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=7wRraFOki6xoNL40X+dNtMD9Sl5rl5qNKGPpTlgSs3w=; b=YKOtLoldTyWnWGHRxsRRC3BoL8kHUzaQ2zZ5+vmazvuIXUQhBqB2IAvfAX4oXQrS6nXNsC VUzlvepFFb4XLvTFTvjeYz6SEwqWeGUKt2Kt2Y50gLnCGxfXzdrqY9meMnphSDNe8zds+H 7cGFFs9t/HRJa23Jcqi+xaMIqMg9cb4= Received: from mail-ej1-f71.google.com (mail-ej1-f71.google.com [209.85.218.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-204-sQUOtt8cPhyXo6EiGol3TA-1; Mon, 16 Oct 2023 02:31:56 -0400 X-MC-Unique: sQUOtt8cPhyXo6EiGol3TA-1 Received: by mail-ej1-f71.google.com with SMTP id a640c23a62f3a-9ae686dafedso294022266b.3 for ; Sun, 15 Oct 2023 23:31:56 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437915; x=1698042715; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=7wRraFOki6xoNL40X+dNtMD9Sl5rl5qNKGPpTlgSs3w=; b=P2ddQ86C16kBz+VIXtcH0hUv3LDjqmkmyXdaEM0pQOmSqblYfg6Skg9uBgLYacCJAH 9sWDa+QRovVO0Vs25nQIRghVqxgFB9GCL0AzSkSOexlkBZPX6ZSu0LpNPIbnfRA5TvzL oWvFmjnj8+7gZUHuZxk//d8cmVFjief/EQ7aZB/sBt56H4m8CFH9Yf8n5etqYJVuEp5b ZpdffxaWcN5xN2jN1Ljs/uLQug7jk3maxlj1Del3UxkTVZ27QClzAO5tsZh8DA3+fTaf RYy9hdZ79wLFSXKjiooERwrcRA6C83SM2MhwM80bJf8ZlQCTaDW5Na2mmDG26btQsULC MCaw== X-Gm-Message-State: AOJu0YyCywayYHd82YJqICoFo8XThlxk7WNGJXKd0wt9iRQnCZTTr5wV 4nwkwuAzKqRQrQ0+WJuEqWYEqoGvkVLlZ/kgU/3cIociAyTqQ9xqDNWoHarNlY+TofzWmNq3BvT 1L9HWCspw0GJrvo/mil7CYkFLkDN0ZT9XQlG/iAhvns0qzX93DDdayCldbVEzzgoZCGT5d4Zr2u I= X-Received: by 2002:a17:907:7ea4:b0:9be:3c01:f061 with SMTP id qb36-20020a1709077ea400b009be3c01f061mr5926056ejc.66.1697437915055; Sun, 15 Oct 2023 23:31:55 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFDh0bkkHAtP4yyEz6JHjdj3iaffOzC4o8eVcMtCWQIYIqfGqSxm50IMbl3/zH0yJI+TtVsbQ== X-Received: by 2002:a17:907:7ea4:b0:9be:3c01:f061 with SMTP id qb36-20020a1709077ea400b009be3c01f061mr5926044ejc.66.1697437914697; Sun, 15 Oct 2023 23:31:54 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id f25-20020a170906085900b009ae0042e48bsm3346343ejd.5.2023.10.15.23.31.53 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:31:53 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PATCH 13/17] configure: move environment-specific defaults to config-meson.cross Date: Mon, 16 Oct 2023 08:31:23 +0200 Message-ID: <20231016063127.161204-14-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Store the -Werror and SMBD defaults in the machine file, which still allows them to be overridden on the command line and enables automatic parsing of the related options. Signed-off-by: Paolo Bonzini --- configure | 37 +++++++++++++---------------------- scripts/meson-buildoptions.py | 3 ++- scripts/meson-buildoptions.sh | 5 +++++ 3 files changed, 21 insertions(+), 24 deletions(-) diff --git a/configure b/configure index e6787dc4111..24f8866e141 100755 --- a/configure +++ b/configure @@ -258,7 +258,6 @@ skip_meson=no use_containers="yes" gdb_bin=$(command -v "gdb-multiarch" || command -v "gdb") gdb_arches="" -werror="" # Don't accept a target_list environment variable. unset target_list @@ -314,7 +313,6 @@ objcopy="${OBJCOPY-${cross_prefix}objcopy}" ld="${LD-${cross_prefix}ld}" ranlib="${RANLIB-${cross_prefix}ranlib}" nm="${NM-${cross_prefix}nm}" -smbd="$SMBD" strip="${STRIP-${cross_prefix}strip}" widl="${WIDL-${cross_prefix}widl}" windres="${WINDRES-${cross_prefix}windres}" @@ -648,8 +646,6 @@ for opt do ;; --ninja=*) ninja="$optarg" ;; - --smbd=*) smbd="$optarg" - ;; --extra-cflags=*) ;; --extra-cxxflags=*) @@ -741,10 +737,6 @@ for opt do ;; --disable-pie) pie="no" ;; - --enable-werror) werror="yes" - ;; - --disable-werror) werror="no" - ;; --enable-cfi) cfi=true ;; --disable-cfi) cfi=false @@ -876,7 +868,6 @@ Advanced options (experts only): --cross-prefix-ARCH=PREFIX cross compiler prefix when building ARCH guest test cases --python=PYTHON use specified python [$python] --ninja=NINJA use specified ninja [$ninja] - --smbd=SMBD use specified smbd [$smbd] --static enable static build [$static] --without-default-features default all --enable-* options to "disabled" --without-default-devices do not include any device that is not needed to @@ -884,7 +875,6 @@ Advanced options (experts only): desired devices in configs/devices/) --with-devices-ARCH=NAME override default configs/devices --enable-debug enable common debug build options - --disable-werror disable compilation abort on warning --cpu=CPU Build for host CPU [$cpu] --disable-containers don't use containers for cross-building --container-engine=TYPE which container engine to use [$container_engine] @@ -1008,17 +998,6 @@ if test -z "$ninja"; then fi fi -# Consult white-list to determine whether to enable werror -# by default. Only enable by default for git builds -if test -z "$werror" ; then - if test -e "$source_path/.git" && \ - { test "$targetos" = linux || test "$targetos" = "windows"; }; then - werror="yes" - else - werror="no" - fi -fi - if test "$targetos" = "bogus"; then # Now that we know that we're not printing the help and that # the compiler works (so the results of the check_defines we used @@ -1761,6 +1740,20 @@ if test "$skip_meson" = no; then test -n "$objcc" && echo "objc_args = [$(meson_quote $OBJCFLAGS $EXTRA_OBJCFLAGS)]" >> $cross echo "c_link_args = [$(meson_quote $CFLAGS $LDFLAGS $EXTRA_CFLAGS $EXTRA_LDFLAGS)]" >> $cross echo "cpp_link_args = [$(meson_quote $CXXFLAGS $LDFLAGS $EXTRA_CXXFLAGS $EXTRA_LDFLAGS)]" >> $cross + + # Only enable by default for git builds and on select OSes + echo "# environment defaults, can still be overridden on " >> $cross + echo "# the command line" >> $cross + if test -e "$source_path/.git" && \ + { test "$targetos" = linux || test "$targetos" = "windows"; }; then + echo 'werror = true' >> $cross + fi + echo "[project options]" >> $cross + if test "$SMBD" != ''; then + echo "smbd = $(meson_quote "$SMBD")" >> $cross + fi + + echo >> $cross echo "[binaries]" >> $cross echo "c = [$(meson_quote $cc $CPU_CFLAGS)]" >> $cross test -n "$cxx" && echo "cpp = [$(meson_quote $cxx $CPU_CFLAGS)]" >> $cross @@ -1815,7 +1808,6 @@ if test "$skip_meson" = no; then test "$default_feature" = no && meson_option_add -Dauto_features=disabled test "$static" = yes && meson_option_add -Dprefer_static=true test "$pie" = no && meson_option_add -Db_pie=false - test "$werror" = yes && meson_option_add -Dwerror=true # QEMU options test "$cfi" != false && meson_option_add "-Dcfi=$cfi" @@ -1823,7 +1815,6 @@ if test "$skip_meson" = no; then test "$docs" != auto && meson_option_add "-Ddocs=$docs" test -n "${LIB_FUZZING_ENGINE+xxx}" && meson_option_add "-Dfuzzing_engine=$LIB_FUZZING_ENGINE" test "$plugins" = yes && meson_option_add "-Dplugins=true" - test "$smbd" != '' && meson_option_add "-Dsmbd=$smbd" test "$tcg" != enabled && meson_option_add "-Dtcg=$tcg" run_meson() { NINJA=$ninja $meson setup "$@" "$PWD" "$source_path" diff --git a/scripts/meson-buildoptions.py b/scripts/meson-buildoptions.py index 0c24bdc1e8c..2e88732a291 100644 --- a/scripts/meson-buildoptions.py +++ b/scripts/meson-buildoptions.py @@ -28,7 +28,6 @@ SKIP_OPTIONS = { "default_devices", "fuzzing_engine", - "smbd", } OPTION_NAMES = { @@ -47,6 +46,7 @@ # Options that configure autodetects, even though meson defines them as boolean AUTO_OPTIONS = { "plugins", + "werror", } BUILTIN_OPTIONS = { @@ -64,6 +64,7 @@ "prefix", "strip", "sysconfdir", + "werror", } LINE_WIDTH = 76 diff --git a/scripts/meson-buildoptions.sh b/scripts/meson-buildoptions.sh index e1522030619..dec33820163 100644 --- a/scripts/meson-buildoptions.sh +++ b/scripts/meson-buildoptions.sh @@ -64,6 +64,7 @@ meson_options_help() { printf "%s\n" ' --localstatedir=VALUE Localstate data directory [/var/local]' printf "%s\n" ' --mandir=VALUE Manual page directory [share/man]' printf "%s\n" ' --prefix=VALUE Installation prefix [/usr/local]' + printf "%s\n" ' --smbd=VALUE Path to smbd for slirp networking' printf "%s\n" ' --sysconfdir=VALUE Sysconf data directory [etc]' printf "%s\n" ' --tls-priority=VALUE Default TLS protocol/cipher priority string' printf "%s\n" ' [NORMAL]' @@ -205,6 +206,7 @@ meson_options_help() { printf "%s\n" ' vpc vpc image format support' printf "%s\n" ' vte vte support for the gtk UI' printf "%s\n" ' vvfat vvfat image format support' + printf "%s\n" ' werror Treat warnings as errors' printf "%s\n" ' whpx WHPX acceleration support' printf "%s\n" ' xen Xen backend support' printf "%s\n" ' xen-pci-passthrough' @@ -453,6 +455,7 @@ _meson_option_parse() { --disable-slirp-smbd) printf "%s" -Dslirp_smbd=disabled ;; --enable-smartcard) printf "%s" -Dsmartcard=enabled ;; --disable-smartcard) printf "%s" -Dsmartcard=disabled ;; + --smbd=*) quote_sh "-Dsmbd=$2" ;; --enable-snappy) printf "%s" -Dsnappy=enabled ;; --disable-snappy) printf "%s" -Dsnappy=disabled ;; --enable-sndio) printf "%s" -Dsndio=enabled ;; @@ -529,6 +532,8 @@ _meson_option_parse() { --disable-vte) printf "%s" -Dvte=disabled ;; --enable-vvfat) printf "%s" -Dvvfat=enabled ;; --disable-vvfat) printf "%s" -Dvvfat=disabled ;; + --enable-werror) printf "%s" -Dwerror=true ;; + --disable-werror) printf "%s" -Dwerror=false ;; --enable-whpx) printf "%s" -Dwhpx=enabled ;; --disable-whpx) printf "%s" -Dwhpx=disabled ;; --enable-xen) printf "%s" -Dxen=enabled ;; From patchwork Mon Oct 16 06:31:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849167 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=a6vAab4X; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86lP6m4lz20Pd for ; Mon, 16 Oct 2023 17:34:09 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH93-00042N-M6; Mon, 16 Oct 2023 02:32:05 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH92-000424-AM for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:32:04 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH90-0005Tv-O3 for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:32:04 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437922; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=VTKK/77t6XzfLamnizLTQ3k3sm0qSCgSBszZqr27Eb0=; b=a6vAab4XUg/8P8eYlN146EcUSk6WPHyQBtXDLwV8MPTdmZwwjiQD1dxRRoJ9CmGe2bBOus V13Fec3GN4M/CuVL9gXr8QwtjI2kYO2FfeHZnC9TwthLzFPgZ4X0BQe59gn0qN0cQnXCvR DN8t9M2nnTB/UpwhIQUfOA6iYljzQuM= Received: from mail-ej1-f70.google.com (mail-ej1-f70.google.com [209.85.218.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-663-JJkGnngoNt6lLB5tY6pLAw-1; Mon, 16 Oct 2023 02:31:59 -0400 X-MC-Unique: JJkGnngoNt6lLB5tY6pLAw-1 Received: by mail-ej1-f70.google.com with SMTP id a640c23a62f3a-9b65c46bca8so10727566b.1 for ; Sun, 15 Oct 2023 23:31:59 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437918; x=1698042718; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=VTKK/77t6XzfLamnizLTQ3k3sm0qSCgSBszZqr27Eb0=; b=vSJ/2a3qcGSDcSaWsktfg89SdWeDr+F/+VUIw04eFvS3jT9vKwRILDz3WEJmLS6WAo PjCOLDZ6IX6s+dBU3rjEf8Dkxdc1hbTspfFScroNwPSwFEMSKHU2rs4SJQ+0iFG+U78T V8JSWONUs4Ywtfb0LHWVTia+D+LqJEKRftW6PUx4tdngs52wgHOJrJKwHSsYCiFS56ne s5ubQUFwqc1ZevTrhWJ7kl9WAok283ROI7TAkTZr+JpzBsLTJoWEitKCnksFqxwUx155 Lu6Chhu6GktrdoQmhDzOZeznckFCHxS7ZMHR6crqiSQBZEM3QICiZnC1Hz5HiQ/g4vQP +p6w== X-Gm-Message-State: AOJu0Yw2hgVxCIHK1qjVz2Qsx+CzdsxopNGq5dmv+CAHPOIWKyaDGfZF 3KfEYHGNPEfijymMvnubX2UPhkReDxWCWraxoDC9w2CaLadHseL83h8ABXzc36MGY3s/Sndg8/+ V3E15hV2Vn2R4yV1BTpPl2bl4F9rN8drSrNdnz3d81Y14Whi7ZnN7ZiNLP7zEOvp25h3NkLFnxl 4= X-Received: by 2002:a17:907:6ea5:b0:9bd:f3b0:c087 with SMTP id sh37-20020a1709076ea500b009bdf3b0c087mr7358287ejc.2.1697437917756; Sun, 15 Oct 2023 23:31:57 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHR8J7NsENjnNe+omtLk70t6WQpPBQZaja0Trbg02g5PKqnxjSwj697c73tdhL9nyDEA/d0fQ== X-Received: by 2002:a17:907:6ea5:b0:9bd:f3b0:c087 with SMTP id sh37-20020a1709076ea500b009bdf3b0c087mr7358271ejc.2.1697437917423; Sun, 15 Oct 2023 23:31:57 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id j8-20020a170906254800b009ae69c303aasm3338781ejb.137.2023.10.15.23.31.56 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:31:56 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PATCH 14/17] configure: unify handling of several Debian cross containers Date: Mon, 16 Oct 2023 08:31:24 +0200 Message-ID: <20231016063127.161204-15-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org The Debian and GNU architecture names match very often, even though there are common cases (32-bit Arm or 64-bit x86) where they do not and other cases in which the GNU triplet is actually a quadruplet. But it is still possible to group the common case into a single case inside probe_target_compiler. Signed-off-by: Paolo Bonzini --- configure | 41 +++++------------------------------------ 1 file changed, 5 insertions(+), 36 deletions(-) diff --git a/configure b/configure index 24f8866e141..18dcb0240ed 100755 --- a/configure +++ b/configure @@ -1278,10 +1278,6 @@ probe_target_compiler() { container_cross_prefix=aarch64-linux-gnu- container_cross_cc=${container_cross_prefix}gcc ;; - alpha) - container_image=debian-alpha-cross - container_cross_prefix=alpha-linux-gnu- - ;; arm) # We don't have any bigendian build tools so we only use this for ARM container_image=debian-armhf-cross @@ -1296,10 +1292,6 @@ probe_target_compiler() { container_cross_prefix=hexagon-unknown-linux-musl- container_cross_cc=${container_cross_prefix}clang ;; - hppa) - container_image=debian-hppa-cross - container_cross_prefix=hppa-linux-gnu- - ;; i386) container_image=fedora-i386-cross container_cross_prefix= @@ -1308,10 +1300,6 @@ probe_target_compiler() { container_image=debian-loongarch-cross container_cross_prefix=loongarch64-unknown-linux-gnu- ;; - m68k) - container_image=debian-m68k-cross - container_cross_prefix=m68k-linux-gnu- - ;; microblaze) container_image=debian-microblaze-cross container_cross_prefix=microblaze-linux-musl- @@ -1324,14 +1312,6 @@ probe_target_compiler() { container_image=debian-mips64-cross container_cross_prefix=mips64-linux-gnuabi64- ;; - mipsel) - container_image=debian-mipsel-cross - container_cross_prefix=mipsel-linux-gnu- - ;; - mips) - container_image=debian-mips-cross - container_cross_prefix=mips-linux-gnu- - ;; nios2) container_image=debian-nios2-cross container_cross_prefix=nios2-linux-gnu- @@ -1346,22 +1326,6 @@ probe_target_compiler() { container_cross_prefix=powerpc${target_arch#ppc}-linux-gnu- container_cross_cc=${container_cross_prefix}gcc-10 ;; - riscv64) - container_image=debian-riscv64-test-cross - container_cross_prefix=riscv64-linux-gnu- - ;; - s390x) - container_image=debian-s390x-cross - container_cross_prefix=s390x-linux-gnu- - ;; - sh4) - container_image=debian-sh4-cross - container_cross_prefix=sh4-linux-gnu- - ;; - sparc64) - container_image=debian-sparc64-cross - container_cross_prefix=sparc64-linux-gnu- - ;; tricore) container_image=debian-tricore-cross container_cross_prefix=tricore- @@ -1376,6 +1340,11 @@ probe_target_compiler() { # default to the dc232b cpu container_cross_prefix=/opt/2020.07/xtensa-dc232b-elf/bin/xtensa-dc232b-elf- ;; + *) + # Debian and GNU architecture names usually match + container_image=debian-$target_arch-cross + container_cross_prefix=$target_arch-linux-gnu- + ;; esac : ${container_cross_cc:=${container_cross_prefix}gcc} : ${container_cross_ar:=${container_cross_prefix}ar} From patchwork Mon Oct 16 06:31:25 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849160 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=Lr94U+o0; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86kw3ynxz20Pd for ; Mon, 16 Oct 2023 17:33:44 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH95-00042t-ER; Mon, 16 Oct 2023 02:32:07 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH94-00042a-0c for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:32:06 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH92-0005U7-8z for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:32:05 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437923; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=qwRXtVjXRc2oO6G7Ta8j3S56M6ZsrgKAu3P/PDdZ/0w=; b=Lr94U+o04qeI9TN4hl7C3/+5/v4127xcuLlWibTHWwDxjO/vDbxQajXQF/ij7WLHBuCgPL s1Ts5tvvDrW1frXLp2Rb0ejcNOKWGLd+ZcSkb6s+ubeFABXUEyeL9Ua/Ni3WqjBIUBrw97 eazRreD5Rm8DgekrKQR7UgHhR+mqSsM= Received: from mail-ed1-f69.google.com (mail-ed1-f69.google.com [209.85.208.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-530-vrOimNY7O-OzzBnNjQq9UQ-1; Mon, 16 Oct 2023 02:32:01 -0400 X-MC-Unique: vrOimNY7O-OzzBnNjQq9UQ-1 Received: by mail-ed1-f69.google.com with SMTP id 4fb4d7f45d1cf-53e119e615aso4262580a12.0 for ; Sun, 15 Oct 2023 23:32:00 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437919; x=1698042719; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=qwRXtVjXRc2oO6G7Ta8j3S56M6ZsrgKAu3P/PDdZ/0w=; b=OEmHAyXCTw0aozdbWavnst0HjW/1F1dXyu13GCw6zu03n6a7JTxfiKd5ZokGLaozlz SmBodVWZToDibN2YOvgRioDJUy7wZCbjHDjTQoeX9wAjm71LK4RMhyzM9gphGSCJZVA8 HIeLv9qCbF4TydzLQNUNMGklHX3O2LlnQ6gslrli188GWEyFd7ehEYzxu+DnAjRCfrM/ Q/7xfMWIlELJke8TcVFlP8tFTDtDXdCwnQooFXDDy8JB7SA/O2Mn+m/4jDFFIxA5lTLn bnuS7mBK0eI6+2b7ahndw4/NJ3CCqqRJCnN+cFtmtK0ToA0e1jkxbcKvv0q8+2O85wAT UfRQ== X-Gm-Message-State: AOJu0YwTE+Q/gcaTL8SDbdKziKt1HAnlCZLOn/Hx8hcxPdbj+lQYOAnW uTYxh7aiZJFjtyFE6JIIOQvgIvRwIfiXPBFICBnhcxjJ4Tw4tTiCiRRvbLwux1e+nH3epWpg80h ac/iNzghU7rCJfyx8jj1DApaNLxMysgrwVcmFlUhNE2zF05gBZo3vDR6O/tGTanSuOy2+Jp0XxK M= X-Received: by 2002:a05:6402:35d4:b0:523:2e23:a0bf with SMTP id z20-20020a05640235d400b005232e23a0bfmr5668106edc.11.1697437919595; Sun, 15 Oct 2023 23:31:59 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHH/bHATqgK2GYIe6lhDDd9ce3KvthpjNRoynTWgRZffQfIvDqriC66Cd2+6ogp4Zi8K8PuZg== X-Received: by 2002:a05:6402:35d4:b0:523:2e23:a0bf with SMTP id z20-20020a05640235d400b005232e23a0bfmr5668092edc.11.1697437919261; Sun, 15 Oct 2023 23:31:59 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id co25-20020a0564020c1900b0053e36dd75dfsm4540722edb.35.2023.10.15.23.31.58 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:31:58 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PATCH 15/17] configure, meson: use command line options to configure qemu-ga Date: Mon, 16 Oct 2023 08:31:25 +0200 Message-ID: <20231016063127.161204-16-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Preserve the functionality of the environment variables, but allow using the command line instead. Signed-off-by: Paolo Bonzini --- configure | 16 +++++++++------- meson_options.txt | 7 +++++++ qga/meson.build | 9 ++++++--- scripts/meson-buildoptions.sh | 9 +++++++++ 4 files changed, 31 insertions(+), 10 deletions(-) diff --git a/configure b/configure index 18dcb0240ed..06b27dd46f4 100755 --- a/configure +++ b/configure @@ -1589,12 +1589,6 @@ echo >> $config_host_mak echo all: >> $config_host_mak -if test "$targetos" = "windows"; then - echo "QEMU_GA_MANUFACTURER=${QEMU_GA_MANUFACTURER-QEMU}" >> $config_host_mak - echo "QEMU_GA_DISTRO=${QEMU_GA_DISTRO-Linux}" >> $config_host_mak - echo "QEMU_GA_VERSION=${QEMU_GA_VERSION-$(cat "$source_path"/VERSION)}" >> $config_host_mak -fi - echo "SRC_PATH=$source_path" >> $config_host_mak echo "TARGET_DIRS=$target_list" >> $config_host_mak echo "GDB=$gdb_bin" >> $config_host_mak @@ -1721,6 +1715,15 @@ if test "$skip_meson" = no; then if test "$SMBD" != ''; then echo "smbd = $(meson_quote "$SMBD")" >> $cross fi + if test "${QEMU_GA_MANUFACTURER}" != ''; then + echo "qemu_ga_manufacturer = $(meson_quote "${QEMU_GA_MANUFACTURER}")" >> $cross + fi + if test "${QEMU_GA_DISTRO}" != ''; then + echo "qemu_ga_distro = $(meson_quote "${QEMU_GA_DISTRO}")" >> $cross + fi + if test "${QEMU_GA_VERSION}" != ''; then + echo "qemu_ga_version = $(meson_quote "${QEMU_GA_VERSION}")" >> $cross + fi echo >> $cross echo "[binaries]" >> $cross @@ -1772,7 +1775,6 @@ if test "$skip_meson" = no; then rm -rf meson-private meson-info meson-logs - # Built-in options test "$download" = "disabled" && meson_option_add "--wrap-mode=nodownload" test "$default_feature" = no && meson_option_add -Dauto_features=disabled test "$static" = yes && meson_option_add -Dprefer_static=true diff --git a/meson_options.txt b/meson_options.txt index e237b268469..1b0c02b4a58 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -353,5 +353,12 @@ option('qom_cast_debug', type: 'boolean', value: true, option('slirp_smbd', type : 'feature', value : 'auto', description: 'use smbd (at path --smbd=*) in slirp networking') +option('qemu_ga_manufacturer', type: 'string', value: 'QEMU', + description: '"manufacturer" name for qemu-ga registry entries') +option('qemu_ga_distro', type: 'string', value: 'Linux', + description: 'second path element in qemu-ga registry entries') +option('qemu_ga_version', type: 'string', value: '', + description: 'version number for qemu-ga installer') + option('hexagon_idef_parser', type : 'boolean', value : true, description: 'use idef-parser to automatically generate TCG code for the Hexagon frontend') diff --git a/qga/meson.build b/qga/meson.build index 59cae0cc6ee..940a51d55db 100644 --- a/qga/meson.build +++ b/qga/meson.build @@ -145,6 +145,9 @@ if targetos == 'windows' else libpcre = 'libpcre2' endif + qga_msi_version = get_option('qemu_ga_version') == '' \ + ? project.version() \ + : get_option('qemu_ga_version') qga_msi = custom_target('QGA MSI', input: files('installer/qemu-ga.wxs'), output: 'qemu-ga-@0@.msi'.format(host_arch), @@ -155,9 +158,9 @@ if targetos == 'windows' qemu_ga_msi_vss, '-D', 'BUILD_DIR=' + meson.project_build_root(), '-D', 'BIN_DIR=' + glib_pc.get_variable('bindir'), - '-D', 'QEMU_GA_VERSION=' + config_host['QEMU_GA_VERSION'], - '-D', 'QEMU_GA_MANUFACTURER=' + config_host['QEMU_GA_MANUFACTURER'], - '-D', 'QEMU_GA_DISTRO=' + config_host['QEMU_GA_DISTRO'], + '-D', 'QEMU_GA_VERSION=' + qga_msi_version, + '-D', 'QEMU_GA_MANUFACTURER=' + get_option('qemu_ga_manufacturer'), + '-D', 'QEMU_GA_DISTRO=' + get_option('qemu_ga_distro'), '-D', 'LIBPCRE=' + libpcre, ]) all_qga += [qga_msi] diff --git a/scripts/meson-buildoptions.sh b/scripts/meson-buildoptions.sh index dec33820163..bda88993bd1 100644 --- a/scripts/meson-buildoptions.sh +++ b/scripts/meson-buildoptions.sh @@ -64,6 +64,12 @@ meson_options_help() { printf "%s\n" ' --localstatedir=VALUE Localstate data directory [/var/local]' printf "%s\n" ' --mandir=VALUE Manual page directory [share/man]' printf "%s\n" ' --prefix=VALUE Installation prefix [/usr/local]' + printf "%s\n" ' --qemu-ga-distro=VALUE second path element in qemu-ga registry entries' + printf "%s\n" ' [Linux]' + printf "%s\n" ' --qemu-ga-manufacturer=VALUE' + printf "%s\n" ' "manufacturer" name for qemu-ga registry entries' + printf "%s\n" ' [QEMU]' + printf "%s\n" ' --qemu-ga-version=VALUE version number for qemu-ga installer' printf "%s\n" ' --smbd=VALUE Path to smbd for slirp networking' printf "%s\n" ' --sysconfdir=VALUE Sysconf data directory [etc]' printf "%s\n" ' --tls-priority=VALUE Default TLS protocol/cipher priority string' @@ -422,6 +428,9 @@ _meson_option_parse() { --enable-qed) printf "%s" -Dqed=enabled ;; --disable-qed) printf "%s" -Dqed=disabled ;; --firmwarepath=*) quote_sh "-Dqemu_firmwarepath=$(meson_option_build_array $2)" ;; + --qemu-ga-distro=*) quote_sh "-Dqemu_ga_distro=$2" ;; + --qemu-ga-manufacturer=*) quote_sh "-Dqemu_ga_manufacturer=$2" ;; + --qemu-ga-version=*) quote_sh "-Dqemu_ga_version=$2" ;; --with-suffix=*) quote_sh "-Dqemu_suffix=$2" ;; --enable-qga-vss) printf "%s" -Dqga_vss=enabled ;; --disable-qga-vss) printf "%s" -Dqga_vss=disabled ;; From patchwork Mon Oct 16 06:31:26 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849163 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=UORIBvA3; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86l60bqkz20Pd for ; Mon, 16 Oct 2023 17:33:53 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH9C-00047q-Vi; Mon, 16 Oct 2023 02:32:15 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH94-00042j-L4 for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:32:06 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH93-0005UO-4e for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:32:06 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437924; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Hhz5NoA8No/Gwx+ZeOtjgQ6Cuap6+7hqMf6Rp4/O1Yk=; b=UORIBvA3GsnKr2rGzrC1q3PLK4BNQoFjXrnJkdclZ7FWZGilg5QBkJAkH69vvN9iNuf33G gp3WqwHhRvvaA2U1lAUQaxNvAKL34cgb3r9vyp3sJH2tTJvyeZhBnyFC5G0A9TyFi1IFw6 ra3u5/r3NMD1TNUdK6fNORkJHAEvJFk= Received: from mail-ej1-f72.google.com (mail-ej1-f72.google.com [209.85.218.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-538-YEx8ZihuNPeJirJW-cHfjw-1; Mon, 16 Oct 2023 02:32:02 -0400 X-MC-Unique: YEx8ZihuNPeJirJW-cHfjw-1 Received: by mail-ej1-f72.google.com with SMTP id a640c23a62f3a-9ba247e03aeso279585066b.1 for ; Sun, 15 Oct 2023 23:32:02 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437921; x=1698042721; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Hhz5NoA8No/Gwx+ZeOtjgQ6Cuap6+7hqMf6Rp4/O1Yk=; b=gSqaaC8whmaETD+9i1svRHNaS4574a5iiSbnVbxJuO8GAZa4sL0uAqF6uheTAUI3ni /f2CWYv6m1N1qypZAHhMm2gNmi067FmQM135ZlcbEMkx+jJj4hweUfdvSX9mKNqhPSFl CdUsks/PFKudI4X3u77ZqOTpbcXO1QegSUKbChJgnmaIMYr+86HtN3PpN3ZClmQeibx8 ojfc70xPU07Yd8uwl+LRfJqBL0eWFQeztXOHU6UVZ8M0/H07C146grrDeowycB957L34 AnNYHmreXYGV0ku9+eOCOPBcDDAiPNXmXIRMLMSRnDIIONicKXfcjyht5DBHq2iiYY5q 79sw== X-Gm-Message-State: AOJu0YxwRsEfKOn8P3eh0er3w3YLN+DTzSJnuzGnIu6KJ0t+pe4udJz1 KCP69mK+2JXGBH48JMaP0iaqX4/CIh6IQfQf+ezFton2vQmVby2ipdiM0Qiown5ad//Nd5aSnhS ByVCYc3J9jorU9VVhdRPqf4YcgoHDrZ8dYqMkIOKXPgN8aparhAwpYUftr67WfwEqK6s3eaEgUk c= X-Received: by 2002:a17:906:6a19:b0:9a5:a0c6:9e8e with SMTP id qw25-20020a1709066a1900b009a5a0c69e8emr37462738ejc.31.1697437921274; Sun, 15 Oct 2023 23:32:01 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEzg/gggD4uLsmQzqyaQIiFLsMU215D0qbivs4qNkup6bsjQUwuGnObLaLTlkvDZFM2Ip/oDQ== X-Received: by 2002:a17:906:6a19:b0:9a5:a0c6:9e8e with SMTP id qw25-20020a1709066a1900b009a5a0c69e8emr37462722ejc.31.1697437920902; Sun, 15 Oct 2023 23:32:00 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id 26-20020a170906225a00b009ade1a4f795sm3365187ejr.168.2023.10.15.23.32.00 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:32:00 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PATCH 16/17] meson-buildoptions: document the data at the top Date: Mon, 16 Oct 2023 08:31:26 +0200 Message-ID: <20231016063127.161204-17-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Signed-off-by: Paolo Bonzini --- scripts/meson-buildoptions.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/scripts/meson-buildoptions.py b/scripts/meson-buildoptions.py index 2e88732a291..4814a8ff61f 100644 --- a/scripts/meson-buildoptions.py +++ b/scripts/meson-buildoptions.py @@ -25,11 +25,15 @@ import shlex import sys +# Options with nonstandard names (e.g. --with/--without) or OS-dependent +# defaults. Try not to add any. SKIP_OPTIONS = { "default_devices", "fuzzing_engine", } +# Options whose name doesn't match the option for backwards compatibility +# reasons, because Meson gives them a funny name, or both OPTION_NAMES = { "b_coverage": "gcov", "b_lto": "lto", @@ -49,6 +53,10 @@ "werror", } +# Builtin options that should be definable via configure. Some of the others +# we really do not want (e.g. c_args is defined via the native file, not +# via -D, because it's a mix of CFLAGS and --extra-cflags); for specific +# cases "../configure -D" can be used as an escape hatch. BUILTIN_OPTIONS = { "b_coverage", "b_lto", From patchwork Mon Oct 16 06:31:27 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 1849171 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=NjD44VlV; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4S86lf5BMLz20Pd for ; Mon, 16 Oct 2023 17:34:22 +1100 (AEDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qsH9I-0004Lj-PJ; Mon, 16 Oct 2023 02:32:20 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH9A-00047O-HF for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:32:12 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qsH98-0005WI-If for qemu-devel@nongnu.org; Mon, 16 Oct 2023 02:32:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697437930; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=oahmSuJ7paVGXQzz0W0nviH8/X3gevqOR6gcPfSk8kQ=; b=NjD44VlVm76bZSN6zBislCb6O2iz6HqN3LOfMdy+/Xz6pRpTl2mGnkr1edkl5F2E3lw550 OwWQ3dtmUvRnQR0X+du4ea1ytsw5V/2oJCMEHNpWtVb5WRUCTOxTHXvDJQ1GT4+cfB8f5U PCkTJu9xxEEOV66RHsal7Xin1+UTX4s= Received: from mail-ej1-f72.google.com (mail-ej1-f72.google.com [209.85.218.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-634-AEGB8yR2OQKnkxIhxFd9Vg-1; Mon, 16 Oct 2023 02:32:07 -0400 X-MC-Unique: AEGB8yR2OQKnkxIhxFd9Vg-1 Received: by mail-ej1-f72.google.com with SMTP id a640c23a62f3a-9b274cc9636so302121266b.0 for ; Sun, 15 Oct 2023 23:32:07 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697437926; x=1698042726; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=oahmSuJ7paVGXQzz0W0nviH8/X3gevqOR6gcPfSk8kQ=; b=n4oQXG/7rOIDh8IAYtJI2eXWwzBhL/X8X1QFNKTRBijHdTrZr/YSr8wwH6noYU09jj TtEkokEwAELK5Pa5KaDCMekeM5T9khomZHWmzv5FSQUBXuZnQjBBArgw/lcY+9i8dnqz RbAvlsck0E0GJJHheWOK5Rb3V5Bp1AZRDxAdplpoTciWwEtPegiG3ikByuHq1qkYr2Ii OODWr3zYR3dSpNKriWGHBjGZssvP0OrZvtk97oySr3A1q5p1qcFMH4vJLQMQoH19uomT d/ammIgy2HF231VKTeTI14kEt1i53rSjKuV1cnzlv8mMZhlotPSkz06C/psMwQqfprFe oMNw== X-Gm-Message-State: AOJu0YzpecnAQhYzNBKdFySMthlyhiYiq8IABsTILYEWL8KbKE4fCqP6 NwyPi4qVKq1HBP+ZYAX++vkkwSwz9+jVy8KexR4QQd+AS24TsoHrB7ito0ZNbwoHd8lG1Y0KC2A b6oygvQQENQdRTo9t6QlkU8lvQt5BsARe1r6oequb1ym4UmgFd21G0JuVtAm5/PSjtRgw2gHVa2 0= X-Received: by 2002:a17:907:7d92:b0:9be:b668:5700 with SMTP id oz18-20020a1709077d9200b009beb6685700mr4488497ejc.58.1697437925849; Sun, 15 Oct 2023 23:32:05 -0700 (PDT) X-Google-Smtp-Source: AGHT+IE2mCzb8gcDm4JMdr2Y7sMzd9V61g/BRbVaII5kmFG9DvePvtn48kp5eRezSbd1yTJfk/GwdQ== X-Received: by 2002:a17:907:7d92:b0:9be:b668:5700 with SMTP id oz18-20020a1709077d9200b009beb6685700mr4488490ejc.58.1697437925534; Sun, 15 Oct 2023 23:32:05 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:63a7:c72e:ea0e:6045]) by smtp.gmail.com with ESMTPSA id f15-20020a170906738f00b009a198078c53sm3392532ejl.214.2023.10.15.23.32.04 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Oct 2023 23:32:04 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PATCH 17/17] meson: add a note on why we use config_host for program paths Date: Mon, 16 Oct 2023 08:31:27 +0200 Message-ID: <20231016063127.161204-18-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231016063127.161204-1-pbonzini@redhat.com> References: <20231016063127.161204-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Signed-off-by: Paolo Bonzini --- meson.build | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/meson.build b/meson.build index 87bb4e9243a..c80882da6fd 100644 --- a/meson.build +++ b/meson.build @@ -4021,6 +4021,11 @@ summary(summary_info, bool_yn: true, section: 'Directories') summary_info = {} summary_info += {'python': '@0@ (version: @1@)'.format(python.full_path(), python.language_version())} summary_info += {'sphinx-build': sphinx_build} + +# FIXME: the [binaries] section of machine files, which can be probed +# with find_program(), would be great for passing gdb and genisoimage +# paths from configure to Meson. However, there seems to be no way to +# hide a program (for example if gdb is too old). if config_host.has_key('GDB') summary_info += {'gdb': config_host['GDB']} endif