From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849378; cv=none; d=zohomail.com; s=zohoarc; b=GgY4SnZbL7f6Et67zAmMo2eMnWW9O3XHdYrb2+DIbOU1IaqdrCqYv9SUuAesq32K5ciT9h9/6tbMZV3Fv3TChEt0AabUwllpuxOnv8YWiQ2b+2MjDoupsLAzIxZBjE+7IiA26szxazz36v3O0Oxktve3CwkgDacdSOW+ocdIQhQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849378; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=fWOgpVq1O0TABc/ts49srwNRGfJLonj8rkf1fDkoI0k=; b=HaH0fGiDhx71xwpGSWZr5Bj2X5veSk5AIT94LDiTHsJK/rKHgz9hz0RSa4hB6o/UtlT5MR932DBDoUYVv0kQIzRYWyu+bZq2tICANMnIfdgL0yzi9Yv5OSpQ3IT3ixA8vfs+FsUMNLUdFIP1PPtxpxjhkq1LFmJZgzKdOvhMzyE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849378952178.19326834360083; Fri, 16 Oct 2020 04:56:18 -0700 (PDT) Received: from localhost ([::1]:35546 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOLJ-0002Qt-Lt for importer@patchew.org; Fri, 16 Oct 2020 07:56:17 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34276) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODc-0000Gr-8k for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:20 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:57826) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODa-0002nf-Jt for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:19 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-263-tDetsPiIM_a9A40YeTMTVw-1; Fri, 16 Oct 2020 07:48:16 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 333D76414D for ; Fri, 16 Oct 2020 11:48:15 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id 0267C76679 for ; Fri, 16 Oct 2020 11:48:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848897; 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=fWOgpVq1O0TABc/ts49srwNRGfJLonj8rkf1fDkoI0k=; b=SH5MgieqVRFp3MqdzPIDum4GxDuudV92CqW6FN/qA7UfA6V5A4PoQYPdGH5u6jyomUNpGX dPKqS6Z5IbRMZlFOqSvJ2PBmG4R5RurXgixQRQdP+QBmLxBfl1XlcTRClXbc25qCD4bKha DqvrmnxQSCvQBRspmD+br124SleCt4I= X-MC-Unique: tDetsPiIM_a9A40YeTMTVw-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 01/22] submodules: bump meson to 0.55.3 Date: Fri, 16 Oct 2020 07:47:53 -0400 Message-Id: <20201016114814.1564523-2-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 20:29:24 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" This adds some bugfixes, and allows MSYS2 to configure without "--ninja=3Dninja". Signed-off-by: Paolo Bonzini --- .cirrus.yml | 3 +-- meson | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index 99d118239c..0f46cb5eaf 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -123,8 +123,7 @@ windows_msys2_task: =20 script: - C:\tools\msys64\usr\bin\bash.exe -lc "mkdir build" - - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && ../configure - --python=3Dpython3 --ninja=3Dninja" + - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && ../configure --pyt= hon=3Dpython3" - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && make -j8" test_script: - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && make V=3D1 check" diff --git a/meson b/meson index 68ed748f84..776acd2a80 160000 --- a/meson +++ b/meson @@ -1 +1 @@ -Subproject commit 68ed748f84f14c2d4e62dcbd123816e5898eb04c +Subproject commit 776acd2a805c9b42b4f0375150977df42130317f --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602848990; cv=none; d=zohomail.com; s=zohoarc; b=OY11PXwAc89lsT7TxgpBAnvStzXoRGYj8QMX9kHi7x3ksKxptOWg++bNmQBw9xBRpQ4J2FF5Wukla0+oNzhhvVdymtoUgB9YYCGTH5a6M0sn2Z5fM3WJ4ZAADRy4ceLYdf2wxxnMeekh+CnMkdW20qB0ArQlXNh2dVHte2BqgC0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602848990; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=n66gcb6JPvi1HUeyWqEtPpl5bDBAMxwb7H9A1rO31qA=; b=BXE5d6VhlSD7LNLbpgVDqEzDewyRUyEOVpgH6j+ZAYYNXLnN+HyNxPaYApE6DYdJKVvN3oP+rlwNIfsN3L3Ao0Um77djr0hhFpqJAPok4VVDERjkFzONHsOAguIYYIsFgI+WIcSXRHyEIhM3RsgtDGNWBrXaZrGY8XAVDb3u+xk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602848990949903.4756836394967; Fri, 16 Oct 2020 04:49:50 -0700 (PDT) Received: from localhost ([::1]:42972 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOF3-00022R-On for importer@patchew.org; Fri, 16 Oct 2020 07:49:49 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34308) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODd-0000IY-7O for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:21 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:25170) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODb-0002no-GC for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:20 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-301-nR1iz4zFMH6xR3OP6-H7Iw-1; Fri, 16 Oct 2020 07:48:16 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 8DCE618A8233; Fri, 16 Oct 2020 11:48:15 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4E14876640; Fri, 16 Oct 2020 11:48:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848898; 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=n66gcb6JPvi1HUeyWqEtPpl5bDBAMxwb7H9A1rO31qA=; b=MsZO+Vqee4WdkcVugDeFcdDGCmS+HTLNQM0rfrMdFcpj/p197b8NL9XaOocUMEYY4bSuMP luO/5r5+5biWJ296f8gGf8d/uhvhapLdxKl194o7rG8r/lR6iTTfo1WiV/99GiezoyY7T2 aGbWjicjoMsSsBGLGk1zqtW1VFwUfQo= X-MC-Unique: nR1iz4zFMH6xR3OP6-H7Iw-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 02/22] Makefile: Ensure cscope.out/tags/TAGS are generated in the source tree Date: Fri, 16 Oct 2020 07:47:54 -0400 Message-Id: <20201016114814.1564523-3-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 20:29:24 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Greg Kurz Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" From: Greg Kurz Tools usually expect the index files to be in the source tree, eg. emacs. This is already the case when doing out-of-tree builds, but with in-tree builds they end up in the build directory. Force cscope, ctags and etags to put them in the source tree. Signed-off-by: Greg Kurz Message-Id: <160277334665.1754102.10921580280105870386.stgit@bahia.lan> Signed-off-by: Paolo Bonzini --- Makefile | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index c37e513431..d20c7a3f80 100644 --- a/Makefile +++ b/Makefile @@ -194,19 +194,19 @@ find-src-path =3D find "$(SRC_PATH)/" -path "$(SRC_PA= TH)/meson" -prune -o -name "* =20 .PHONY: ctags ctags: - rm -f tags - $(find-src-path) -exec ctags --append {} + + rm -f "$(SRC_PATH)/"tags + $(find-src-path) -exec ctags -f "$(SRC_PATH)/"tags --append {} + =20 .PHONY: TAGS TAGS: - rm -f TAGS - $(find-src-path) -exec etags --append {} + + rm -f "$(SRC_PATH)/"TAGS + $(find-src-path) -exec etags -f "$(SRC_PATH)/"TAGS --append {} + =20 .PHONY: cscope cscope: rm -f "$(SRC_PATH)"/cscope.* $(find-src-path) -print | sed -e 's,^\./,,' > "$(SRC_PATH)/cscope.files" - cscope -b -i"$(SRC_PATH)/cscope.files" + cscope -b -i"$(SRC_PATH)/cscope.files" -f"$(SRC_PATH)"/cscope.out =20 # Needed by "meson install" export DESTDIR --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849542; cv=none; d=zohomail.com; s=zohoarc; b=Jw4VTtKKJ//o81paxyFCtz+rsWwcZqhU5nZBc8CqByikV2OM8etFrik1fzxr398nsRIMkp/428QQwVdbnfxrldGg9MUg4RpC84FOPUiBgBlyzgqxRREizOrPpsYwh7gXLpFGW/UzBKuPRDnizAW+ADTWuOUcRslOoTdfwD7DlsQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849542; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=bxcs1UWRUjW+FgcbN000s8btZxfWnUPgHTQ/TzRI1PQ=; b=H4dieNBVUERdRD3mREhJEeW1EPmGzA1CZFbPRsCXeqD53G90yrV+pBTpUQc4d5DOjjK8TVL7jkGd8o13hUdlSibSEtHwacBjuoTGDifFocSHB/S/BKMHK88SE1cBTGZrjY+jb+3Lzn4d16NwvHAs04KyD18c23yNLMe9IV6udFc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849542510636.2745729488013; Fri, 16 Oct 2020 04:59:02 -0700 (PDT) Received: from localhost ([::1]:43498 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTONx-0005lU-7N for importer@patchew.org; Fri, 16 Oct 2020 07:59:01 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34326) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODd-0000KC-TL for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:21 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:23804) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODb-0002nk-H7 for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:21 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-366-jV6_cTulMqaMKzdp9HJUlg-1; Fri, 16 Oct 2020 07:48:16 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id E8E0A803650 for ; Fri, 16 Oct 2020 11:48:15 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id A885C76640; Fri, 16 Oct 2020 11:48:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848898; 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=bxcs1UWRUjW+FgcbN000s8btZxfWnUPgHTQ/TzRI1PQ=; b=fbv6ek+7nWHqDSe6fDRO+tksGsiH/Zk83P6lBbnfmMMDTOTyHwfiBej4LICsEhEtqwDc+G 0arbdQh4VVKndy++MPDveG4BHm6BHhtHto9LJMdE4i6qYy57UHPPkTmf2jnOXjNO3je6Rf V8ivalayHHQ14vXvloGFk4OcH4CbVLY= X-MC-Unique: jV6_cTulMqaMKzdp9HJUlg-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 03/22] tests/Makefile.include: unbreak non-tcg builds Date: Fri, 16 Oct 2020 07:47:55 -0400 Message-Id: <20201016114814.1564523-4-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/16 03:57:19 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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_H5=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Remove from check-block the requirement that all TARGET_DIRS are built. Reviewed-by: Daniel P. Berrang=C3=A9 Signed-off-by: Paolo Bonzini --- tests/Makefile.include | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Makefile.include b/tests/Makefile.include index 5aca98e60c..4037490b69 100644 --- a/tests/Makefile.include +++ b/tests/Makefile.include @@ -140,7 +140,7 @@ QEMU_IOTESTS_HELPERS-$(CONFIG_LINUX) =3D tests/qemu-iot= ests/socket_scm_helper$(EXE check: check-block check-block: $(SRC_PATH)/tests/check-block.sh qemu-img$(EXESUF) \ qemu-io$(EXESUF) qemu-nbd$(EXESUF) $(QEMU_IOTESTS_HELPERS-y) \ - $(patsubst %-softmmu,qemu-system-%,$(filter %-softmmu,$(TARGET_DIRS))) + $(filter qemu-system-%, $(ninja-targets-c_LINKER) $(ninja-targets-cpp_LI= NKER)) @$< endif =20 --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849310; cv=none; d=zohomail.com; s=zohoarc; b=Ndvro7KfXp9l/gQKKD9q+JJaLNZ8SiFIkMqkOuUr6FBFv7+gEVb4haWVLv5KJNivk6dkB6AGYbX8fgXQrjgw+98wpXhPsZgbzLBwap71blVNsbP3EUejTOTNo10e3vtCEPr9HNe3PVsnfpoGTZgfZSEzI3CEKDkjKwzZjP0XtAE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849310; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=2rchtIy+v4G9LnijX62X21JhjdwE26995xG7c+Wbh2Q=; b=BdnhiP46ZPkVL9BikjF+VKv76+M2JWvveuKzuo6Nub0H4CzcQ5hJhk0l3oaMyRPyvYgxXJ1NUawYUxr6rp1U8SA5soQAsJtLsG/+Df/4dV/hOoo8UpnQ7FFYamrevcBOSj7gMsNn+FpxAbwIc4o6R4Hj/bpbMMuURy5dVk03jUo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849310813996.6171233632995; Fri, 16 Oct 2020 04:55:10 -0700 (PDT) Received: from localhost ([::1]:59868 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOKD-0000j3-JV for importer@patchew.org; Fri, 16 Oct 2020 07:55:09 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34362) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODf-0000Nf-MC for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:23 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:45228) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODc-0002nv-5H for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:23 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-153-AMzP09o4NDqkUdonrqT-0Q-1; Fri, 16 Oct 2020 07:48:17 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 4FA8B876E3E for ; Fri, 16 Oct 2020 11:48:16 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id 0F19E76640; Fri, 16 Oct 2020 11:48:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848899; 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=2rchtIy+v4G9LnijX62X21JhjdwE26995xG7c+Wbh2Q=; b=ZsZ6GVPyXAYIvBXQVSw0NAiFeZs3PR2GoLM436cTEV/7R3HFV2bSyi089aFzy0+h75PK6H DzS0MpoYjoQBhd/BqteS4p1VKXn4kU0zanyXL8x/D+gP7Cf2R0hKHGabesAK5SJsUsZfeT krqywYXzvsmXyoyqIxLqRh5vS4WamxI= X-MC-Unique: AMzP09o4NDqkUdonrqT-0Q-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 04/22] make: run shell with pipefail Date: Fri, 16 Oct 2020 07:47:56 -0400 Message-Id: <20201016114814.1564523-5-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 20:29:24 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Without pipefail, it is possible to miss failures if the recipes include pipes. Reviewed-by: Daniel P. Berrang=C3=A9 Signed-off-by: Paolo Bonzini --- Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Makefile b/Makefile index d20c7a3f80..91c62a26c8 100644 --- a/Makefile +++ b/Makefile @@ -14,6 +14,8 @@ SRC_PATH=3D. # we have explicit rules for everything MAKEFLAGS +=3D -rR =20 +SHELL =3D /usr/bin/env bash -o pipefail + # Usage: $(call quiet-command,command and args,"NAME","args to print") # This will run "command and args", and either: # if V=3D1 just print the whole command and args --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849719; cv=none; d=zohomail.com; s=zohoarc; b=g0RpIIarn9ECiqvovHMuKgryATqWN9+KMvSUrn4gi22sE7w/SuglDPnZZPmhY3cIdQ/8uKRTbiPo1Kr4ajy3fjkkWE8K6wImmkrgwCPxkrhY0sH4qRIiJnq+J6skOftZM9Syml6QlBKHH0qiNps/xxTVAdeJ33QYEEpjpE49jX0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849719; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=q9z/m4ESTg5T+PETE/Wuky1JefDySUw5SrCPfc7Rt9E=; b=GG2vBLq368BNm5wBaafibXenBS6ceiuPAHLkvZRif4XdB268UZ0ZXh4NbroQ8BgFHCJfUW0DtNJOAdJHaDkRaHgnJRHLdj2gP+W+bQwCT20DN4Hst5zJEFOatGqvLYksVeCh3snseGk6QzANDY5WyfpMm4ofcqnSE2Li4psD+GA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849718996790.7009692825355; Fri, 16 Oct 2020 05:01:58 -0700 (PDT) Received: from localhost ([::1]:51658 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOQo-0001T7-5c for importer@patchew.org; Fri, 16 Oct 2020 08:01:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34376) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODg-0000Oh-2e for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:24 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:28835) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODc-0002nw-2d for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:23 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-416-DqwN_q79OTa-_BU6UlihbA-1; Fri, 16 Oct 2020 07:48:17 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id A8988800683 for ; Fri, 16 Oct 2020 11:48:16 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id 694F97667A; Fri, 16 Oct 2020 11:48:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848899; 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=q9z/m4ESTg5T+PETE/Wuky1JefDySUw5SrCPfc7Rt9E=; b=U52ix8zMLD4z+FvNjylkA87Ly3zA5fxToiuXzJ3vwQleHCi1UWSmU32SfxbfIwRakWC20X 7iY36HOhCPHoFF15f+NiV9FncYgZ4ZiiAlZ8XSO+t7u+SfFGD/rkBF/N62n7FEReDa8thl HcHT0t3NGi87o5CQ9O+VAsyndcnkzUs= X-MC-Unique: DqwN_q79OTa-_BU6UlihbA-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 05/22] tests: add missing generated sources to testqapi Date: Fri, 16 Oct 2020 07:47:57 -0400 Message-Id: <20201016114814.1564523-6-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/16 03:57:19 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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_H5=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Ninja notices them due to a different order in visiting the graph. Reviewed-by: Daniel P. Berrang=C3=A9 Signed-off-by: Paolo Bonzini --- tests/include/meson.build | 8 ++++---- tests/meson.build | 14 ++++++++++++-- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/tests/include/meson.build b/tests/include/meson.build index fea3a6342f..9abba308fa 100644 --- a/tests/include/meson.build +++ b/tests/include/meson.build @@ -10,7 +10,7 @@ test_qapi_outputs_extra =3D [ 'test-qapi-visit-sub-module.h', ] =20 -test_qapi_outputs_extra =3D custom_target('QAPI test (include)', - output: test_qapi_outputs_extra, - input: test_qapi_files, - command: 'true') +test_qapi_files_extra =3D custom_target('QAPI test (include)', + output: test_qapi_outputs_extra, + input: test_qapi_files, + command: 'true') diff --git a/tests/meson.build b/tests/meson.build index bf47a38c74..afeb6be689 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -56,8 +56,18 @@ test_qapi_files =3D custom_target('Test QAPI files', # perhaps change qapi_gen to replace / with _, like Meson itself does? subdir('include') =20 -libtestqapi =3D static_library('testqapi', sources: [test_qapi_files, genh= , test_qapi_outputs_extra]) -testqapi =3D declare_dependency(link_with: libtestqapi) +test_qapi_sources =3D [] +test_qapi_headers =3D [] +i =3D 0 +foreach o: test_qapi_files.to_list() + test_qapi_files_extra.to_list() + if o.full_path().endswith('.h') + test_qapi_headers +=3D o + endif + test_qapi_sources +=3D o +endforeach + +libtestqapi =3D static_library('testqapi', sources: [genh, test_qapi_sourc= es]) +testqapi =3D declare_dependency(link_with: libtestqapi, sources: [genh, te= st_qapi_headers]) =20 testblock =3D declare_dependency(dependencies: [block], sources: 'iothread= .c') =20 --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849233; cv=none; d=zohomail.com; s=zohoarc; b=e9cszeGENfmZqOXG2njvLfGW5BRCY8o54PTmksvec0kWP7XVfzwhG4tolbTgMM1RDDKrQF8xyFSoSBq2rzUTVVqRLXA/5Jdbg7zJqCTt8j2kDsVWYcAtUa9aOwXwmiDFNpPK23wirpwur0a2RTwi2am1mk+w7i9VABEOFOILMJM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849233; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=/MUWPiZILYXMWPPKyOR/YuGLV5vrO/Lu8LXNNJ2o0A0=; b=XyAehhjXEZ0/IeQ9aQSROtidguh5+TFDuXcnP6ttfF/FGn9EhvG1s2hNL5tlUK5OGZhKSAoAE5/RUXjTdMfJbw5S+v2QsnC0t5SUmxULtuoZK/Sq0b0rwTgsNYV0Ie2IJT1/NgkAHyHVYJ6ZnkDfy/vl5xdoAUP1Q37QKgFeOkY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849233508242.52951201524945; Fri, 16 Oct 2020 04:53:53 -0700 (PDT) Received: from localhost ([::1]:55484 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOIy-0007Mf-7J for importer@patchew.org; Fri, 16 Oct 2020 07:53:52 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34348) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODf-0000MY-5f for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:23 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:56718) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODc-0002o5-F3 for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:22 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-373-f0_84ZAWPSKICcfbhpLCig-1; Fri, 16 Oct 2020 07:48:18 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 0EA251084C82 for ; Fri, 16 Oct 2020 11:48:17 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id C2EAF76640; Fri, 16 Oct 2020 11:48:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848899; 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=/MUWPiZILYXMWPPKyOR/YuGLV5vrO/Lu8LXNNJ2o0A0=; b=B9IMSRTFBqm/EkHRe5aFyEYwXLXz86+r+tDlbycgQHKJr8NnvpU7huusvrvB48pHHSfSnz eyI1bjUGFkYfnnHiOSkVRsVWrbk6bLfuKmdyBDTYHUXC87siJWkOb2CBPeEoky7LDALpUP Wh2StUZ1lFktPCF6KiAjc2pqDG2j4so= X-MC-Unique: f0_84ZAWPSKICcfbhpLCig-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 06/22] configure: move QEMU_INCLUDES to meson Date: Fri, 16 Oct 2020 07:47:58 -0400 Message-Id: <20201016114814.1564523-7-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 20:29:24 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Confusingly, QEMU_INCLUDES is not used by configure tests. Moving it to meson.build ensures that Windows paths are specified instead of the msys paths like /c/Users/... Reviewed-by: Daniel P. Berrang=C3=A9 Signed-off-by: Paolo Bonzini --- configure | 20 -------------------- meson.build | 30 ++++++++++++++++++++++++++++-- 2 files changed, 28 insertions(+), 22 deletions(-) diff --git a/configure b/configure index f839c2a557..8aa03876d4 100755 --- a/configure +++ b/configure @@ -537,8 +537,6 @@ QEMU_CFLAGS=3D"-fno-strict-aliasing -fno-common -fwrapv= $QEMU_CFLAGS" QEMU_CFLAGS=3D"-Wundef -Wwrite-strings -Wmissing-prototypes $QEMU_CFLAGS" QEMU_CFLAGS=3D"-Wstrict-prototypes -Wredundant-decls $QEMU_CFLAGS" QEMU_CFLAGS=3D"-D_GNU_SOURCE -D_FILE_OFFSET_BITS=3D64 -D_LARGEFILE_SOURCE = $QEMU_CFLAGS" -QEMU_INCLUDES=3D"-iquote . -iquote ${source_path} -iquote ${source_path}/a= ccel/tcg -iquote ${source_path}/include" -QEMU_INCLUDES=3D"$QEMU_INCLUDES -iquote ${source_path}/disas/libvixl" =20 # Flags that are needed during configure but later taken care of by Meson CONFIGURE_CFLAGS=3D"-std=3Dgnu99 -Wall" @@ -796,7 +794,6 @@ Linux) audio_possible_drivers=3D"oss alsa sdl pa" linux=3D"yes" linux_user=3D"yes" - QEMU_INCLUDES=3D"-isystem ${source_path}/linux-headers -Ilinux-headers $= QEMU_INCLUDES" ;; esac =20 @@ -6776,22 +6773,6 @@ if test "$secret_keyring" =3D "yes" ; then echo "CONFIG_SECRET_KEYRING=3Dy" >> $config_host_mak fi =20 -if test "$tcg_interpreter" =3D "yes"; then - QEMU_INCLUDES=3D"-iquote ${source_path}/tcg/tci $QEMU_INCLUDES" -elif test "$ARCH" =3D "sparc64" ; then - QEMU_INCLUDES=3D"-iquote ${source_path}/tcg/sparc $QEMU_INCLUDES" -elif test "$ARCH" =3D "s390x" ; then - QEMU_INCLUDES=3D"-iquote ${source_path}/tcg/s390 $QEMU_INCLUDES" -elif test "$ARCH" =3D "x86_64" || test "$ARCH" =3D "x32" ; then - QEMU_INCLUDES=3D"-iquote ${source_path}/tcg/i386 $QEMU_INCLUDES" -elif test "$ARCH" =3D "ppc64" ; then - QEMU_INCLUDES=3D"-iquote ${source_path}/tcg/ppc $QEMU_INCLUDES" -elif test "$ARCH" =3D "riscv32" || test "$ARCH" =3D "riscv64" ; then - QEMU_INCLUDES=3D"-I${source_path}/tcg/riscv $QEMU_INCLUDES" -else - QEMU_INCLUDES=3D"-iquote ${source_path}/tcg/${ARCH} $QEMU_INCLUDES" -fi - echo "ROMS=3D$roms" >> $config_host_mak echo "MAKE=3D$make" >> $config_host_mak echo "PYTHON=3D$python" >> $config_host_mak @@ -6818,7 +6799,6 @@ echo "WINDRES=3D$windres" >> $config_host_mak echo "CFLAGS_NOPIE=3D$CFLAGS_NOPIE" >> $config_host_mak echo "QEMU_CFLAGS=3D$QEMU_CFLAGS" >> $config_host_mak echo "QEMU_CXXFLAGS=3D$QEMU_CXXFLAGS" >> $config_host_mak -echo "QEMU_INCLUDES=3D$QEMU_INCLUDES" >> $config_host_mak echo "GLIB_CFLAGS=3D$glib_cflags" >> $config_host_mak echo "GLIB_LIBS=3D$glib_libs" >> $config_host_mak echo "QEMU_LDFLAGS=3D$QEMU_LDFLAGS" >> $config_host_mak diff --git a/meson.build b/meson.build index 1a4a482492..88f757eac9 100644 --- a/meson.build +++ b/meson.build @@ -93,9 +93,35 @@ add_project_arguments(config_host['QEMU_CXXFLAGS'].split= (), native: false, language: 'cpp') add_project_link_arguments(config_host['QEMU_LDFLAGS'].split(), native: false, language: ['c', 'cpp', 'objc']) -add_project_arguments(config_host['QEMU_INCLUDES'].split(), - language: ['c', 'cpp', 'objc']) =20 +if targetos =3D=3D 'linux' + add_project_arguments('-isystem', meson.current_source_dir() / 'linux-he= aders', + '-isystem', 'linux-headers', + language: ['c', 'cpp']) +endif + +if 'CONFIG_TCG_INTERPRETER' in config_host + tcg_arch =3D 'tci' +elif config_host['ARCH'] =3D=3D 'sparc64' + tcg_arch =3D 'sparc' +elif config_host['ARCH'] =3D=3D 's390x' + tcg_arch =3D 's390' +elif config_host['ARCH'] in ['x86_64', 'x32'] + tcg_arch =3D 'i386' +elif config_host['ARCH'] =3D=3D 'ppc64' + tcg_arch =3D 'ppc' +elif config_host['ARCH'] in ['riscv32', 'riscv64'] + tcg_arch =3D 'riscv' +else + tcg_arch =3D config_host['ARCH'] +endif +add_project_arguments('-iquote', meson.current_source_dir() / 'tcg' / tcg_= arch, + '-iquote', '.', + '-iquote', meson.current_source_dir(), + '-iquote', meson.current_source_dir() / 'accel/tcg', + '-iquote', meson.current_source_dir() / 'include', + '-iquote', meson.current_source_dir() / 'disas/libvi= xl', + language: ['c', 'cpp', 'objc']) =20 link_language =3D meson.get_external_property('link_language', 'cpp') if link_language =3D=3D 'cpp' --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849150; cv=none; d=zohomail.com; s=zohoarc; b=kGUiVzCK0yFLHBZ8enuA4BTFQrEHOrV4IzFebsMKdIkR2pQ1zX7kpzOeiYui/p2S1gF1pMGPXqA/Bf/ZOgg0k/1EokE6Q4UlHKkaXtw//zhf6h1Bdm0hMFOKkFWq6VLrRV0B+6G5F4BoD0reuCiEky/AqAEom0GmuGWOF4kVG0c= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849150; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=e7SEA8PNG0TMKMvCepIc2FJjASl/qUQtSu+AO+vIaK4=; b=LCsajTVPNjsfHSJ5TjhDZJnmx3q/QqPWxvMTpkkEkJDWUkC6NxIojl87I3TuU+eGINL+8CwuPMN7oy6gmOH4Eib/DhL7W4tqmIikY/jzNknuNIlKVSwVEVSqBjHts1mLuxD9WpHB9x3g5lr02/HuH46CJ5VsXlN2+EZtLUGCQk0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849150978662.5557854960587; Fri, 16 Oct 2020 04:52:30 -0700 (PDT) Received: from localhost ([::1]:51628 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOHd-0005kk-NB for importer@patchew.org; Fri, 16 Oct 2020 07:52:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34354) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODf-0000N0-C1 for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:23 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:27298) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODc-0002oE-V5 for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:23 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-4-SMvs130mPtmu9AltV_8S2w-1; Fri, 16 Oct 2020 07:48:18 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 58F338015B1 for ; Fri, 16 Oct 2020 11:48:17 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id 2892776679 for ; Fri, 16 Oct 2020 11:48:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848900; 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=e7SEA8PNG0TMKMvCepIc2FJjASl/qUQtSu+AO+vIaK4=; b=Q8rDBkrOpjB7n0Skhqs26EeLMcwovE34vbswYnEkRja8DpARCwOaIcmGvkebkwH72tMytN ZDu+M93O41n2PoffgwCb3uxjxYIDKjkvwTpx72hnpuCGeiRo7FqOZONoWNt6xWRVXi57cl UJpke7ObzA5e2m+TSJuUxRa3hHnlNbU= X-MC-Unique: SMvs130mPtmu9AltV_8S2w-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 07/22] dockerfiles: enable Centos 8 PowerTools Date: Fri, 16 Oct 2020 07:47:59 -0400 Message-Id: <20201016114814.1564523-8-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/16 03:57:19 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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_H5=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" ninja is included in the CentOS PowerTools repository. Signed-off-by: Paolo Bonzini --- tests/docker/dockerfiles/centos8.docker | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/docker/dockerfiles/centos8.docker b/tests/docker/dockerf= iles/centos8.docker index 0fc2697491..e29e9657fb 100644 --- a/tests/docker/dockerfiles/centos8.docker +++ b/tests/docker/dockerfiles/centos8.docker @@ -28,5 +28,7 @@ ENV PACKAGES \ tar \ zlib-devel =20 -RUN dnf install -y $PACKAGES +RUN dnf install -y dnf-plugins-core && \ + dnf config-manager --set-enabled PowerTools && \ + dnf install -y $PACKAGES RUN rpm -q $PACKAGES | sort > /packages.txt --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849013; cv=none; d=zohomail.com; s=zohoarc; b=dfHHlBz1ylZQVRmMKsSqNAy3lPtCo5vYL2X90wSfBKDFx415zHZMaalfCxKueIhiZaP6rkcV3BRTjCh7JoO1jxqYkh/nVfKE9PSA1Ns/Kg+CNZLr8GOxzKapiLgtafKn8UIPhgOvn93llp3J5KoQIsjnfPTlqPFze71KpPyKoB4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849013; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=94+iCgOQQbDRcpdXt7DL8EAFkxs6IhSDsF44c8B3Zso=; b=dt9NFisXriqSAC9ADorjrHuhqRW8d8zIBzzn4zAnycdUn6n7xLf4OXy/mmPUpomidEQE7YTp2qGvKaBYt0xIJ/b9rBxfKgrvq7Iold6JHIgE+dGZQMqGwe0ZqdMd95UcB/q41srt+W6XIGUNjEHCgpgRCCJh2gM9xDIXXC/0YVk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849012991359.1199014514377; Fri, 16 Oct 2020 04:50:12 -0700 (PDT) Received: from localhost ([::1]:43400 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOFP-0002EA-Hz for importer@patchew.org; Fri, 16 Oct 2020 07:50:11 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34388) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODg-0000Q6-JA for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:24 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:25372) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODd-0002oM-If for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:24 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-217-48IewncTPFaS7D5lpADWVg-1; Fri, 16 Oct 2020 07:48:18 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id CB6C08030D7; Fri, 16 Oct 2020 11:48:17 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id 73FAF76640; Fri, 16 Oct 2020 11:48:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848900; 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=94+iCgOQQbDRcpdXt7DL8EAFkxs6IhSDsF44c8B3Zso=; b=cVqUAo0SHaD5BKevzNkOB2TIKo983QFlqmqvftUfzYcxHmx+TPXvH759CxRRfh35qoFt0/ thifG4GOfkQSZESfGr8egK6lOrlSAPUsA6kYCDqFw3HKYl3gIojXKTj7ZEdqOcJMpEaoOO WTHrofqGxJpxwt6dXXIRYyn/XsSHjzo= X-MC-Unique: 48IewncTPFaS7D5lpADWVg-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 08/22] add ninja to dockerfiles, CI configurations and test VMs Date: Fri, 16 Oct 2020 07:48:00 -0400 Message-Id: <20201016114814.1564523-9-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 20:29:24 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Alex=20Benn=C3=A9e?= , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Reviewed-by: Daniel P. Berrang=C3=A9 Acked-by: Alex Benn=C3=A9e Signed-off-by: Paolo Bonzini --- .cirrus.yml | 6 +++--- .travis.yml | 13 +++++++++++++ tests/docker/dockerfiles/centos7.docker | 1 + tests/docker/dockerfiles/centos8.docker | 1 + tests/docker/dockerfiles/debian10.docker | 1 + tests/docker/dockerfiles/fedora.docker | 1 + tests/docker/dockerfiles/travis.docker | 2 +- tests/docker/dockerfiles/ubuntu.docker | 1 + tests/docker/dockerfiles/ubuntu1804.docker | 1 + tests/docker/dockerfiles/ubuntu2004.docker | 1 + tests/vm/centos | 2 +- tests/vm/centos.aarch64 | 2 +- tests/vm/fedora | 2 +- tests/vm/freebsd | 1 + tests/vm/netbsd | 1 + tests/vm/openbsd | 1 + tests/vm/ubuntu.aarch64 | 2 +- tests/vm/ubuntu.i386 | 2 +- 18 files changed, 32 insertions(+), 9 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index 0f46cb5eaf..396888fbd3 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -9,7 +9,7 @@ freebsd_12_task: install_script: - ASSUME_ALWAYS_YES=3Dyes pkg bootstrap -f ; - pkg install -y bash curl cyrus-sasl git glib gmake gnutls gsed - nettle perl5 pixman pkgconf png usbredir + nettle perl5 pixman pkgconf png usbredir ninja script: - mkdir build - cd build @@ -21,7 +21,7 @@ macos_task: osx_instance: image: catalina-base install_script: - - brew install pkg-config python gnu-sed glib pixman make sdl2 bash + - brew install pkg-config python gnu-sed glib pixman make sdl2 bash ni= nja script: - mkdir build - cd build @@ -36,7 +36,7 @@ macos_xcode_task: # this is an alias for the latest Xcode image: catalina-xcode install_script: - - brew install pkg-config gnu-sed glib pixman make sdl2 bash + - brew install pkg-config gnu-sed glib pixman make sdl2 bash ninja script: - mkdir build - cd build diff --git a/.travis.yml b/.travis.yml index 1054ec5d29..d7bfbb8bfe 100644 --- a/.travis.yml +++ b/.travis.yml @@ -49,6 +49,7 @@ addons: - libvdeplug-dev - libvte-2.91-dev - libzstd-dev + - ninja-build - sparse - uuid-dev - gcovr @@ -177,6 +178,7 @@ jobs: addons: apt: packages: + - ninja-build - python3-sphinx - perl =20 @@ -211,6 +213,10 @@ jobs: # gprof/gcov are GCC features - name: "GCC gprof/gcov" dist: bionic + addons: + apt: + packages: + - ninja-build env: - CONFIG=3D"--enable-gprof --enable-gcov --disable-libssh --target-list=3D${MAIN_SOFTMMU_TARGETS}" @@ -281,6 +287,7 @@ jobs: - liburcu-dev - libusb-1.0-0-dev - libvte-2.91-dev + - ninja-build - sparse - uuid-dev language: generic @@ -346,6 +353,7 @@ jobs: - libusb-1.0-0-dev - libvdeplug-dev - libvte-2.91-dev + - ninja-build # Tests dependencies - genisoimage env: @@ -379,6 +387,7 @@ jobs: - libusb-1.0-0-dev - libvdeplug-dev - libvte-2.91-dev + - ninja-build # Tests dependencies - genisoimage env: @@ -411,6 +420,7 @@ jobs: - libusb-1.0-0-dev - libvdeplug-dev - libvte-2.91-dev + - ninja-build # Tests dependencies - genisoimage env: @@ -450,6 +460,7 @@ jobs: - libzstd-dev - nettle-dev - xfslibs-dev + - ninja-build # Tests dependencies - genisoimage env: @@ -463,6 +474,7 @@ jobs: apt_packages: - libgcrypt20-dev - libgnutls28-dev + - ninja-build env: - CONFIG=3D"--disable-containers --disable-system" =20 @@ -493,6 +505,7 @@ jobs: - libusb-1.0-0-dev - libvdeplug-dev - libvte-2.91-dev + - ninja-build env: - TEST_CMD=3D"make check-unit" - CONFIG=3D"--disable-containers --disable-tcg --enable-kvm diff --git a/tests/docker/dockerfiles/centos7.docker b/tests/docker/dockerf= iles/centos7.docker index 46277773bf..8b273725ee 100644 --- a/tests/docker/dockerfiles/centos7.docker +++ b/tests/docker/dockerfiles/centos7.docker @@ -27,6 +27,7 @@ ENV PACKAGES \ mesa-libEGL-devel \ mesa-libgbm-devel \ nettle-devel \ + ninja-build \ perl-Test-Harness \ pixman-devel \ python3 \ diff --git a/tests/docker/dockerfiles/centos8.docker b/tests/docker/dockerf= iles/centos8.docker index e29e9657fb..585dfad9be 100644 --- a/tests/docker/dockerfiles/centos8.docker +++ b/tests/docker/dockerfiles/centos8.docker @@ -19,6 +19,7 @@ ENV PACKAGES \ make \ mesa-libEGL-devel \ nettle-devel \ + ninja-build \ perl-Test-Harness \ pixman-devel \ python36 \ diff --git a/tests/docker/dockerfiles/debian10.docker b/tests/docker/docker= files/debian10.docker index 1e4188ba22..21cc671d71 100644 --- a/tests/docker/dockerfiles/debian10.docker +++ b/tests/docker/dockerfiles/debian10.docker @@ -26,6 +26,7 @@ RUN apt update && \ gettext \ git \ libncurses5-dev \ + ninja-build \ pkg-config \ psmisc \ python3 \ diff --git a/tests/docker/dockerfiles/fedora.docker b/tests/docker/dockerfi= les/fedora.docker index 85c975543d..ac79d95418 100644 --- a/tests/docker/dockerfiles/fedora.docker +++ b/tests/docker/dockerfiles/fedora.docker @@ -75,6 +75,7 @@ ENV PACKAGES \ mingw64-SDL2 \ ncurses-devel \ nettle-devel \ + ninja-build \ nss-devel \ numactl-devel \ perl \ diff --git a/tests/docker/dockerfiles/travis.docker b/tests/docker/dockerfi= les/travis.docker index 591282561b..cd1435a7e9 100644 --- a/tests/docker/dockerfiles/travis.docker +++ b/tests/docker/dockerfiles/travis.docker @@ -9,7 +9,7 @@ ENV LC_ALL en_US.UTF-8 RUN sed -i "s/# deb-src/deb-src/" /etc/apt/sources.list RUN apt-get update RUN apt-get -y build-dep qemu -RUN apt-get -y install device-tree-compiler python3 python3-yaml dh-autore= conf gdb strace lsof net-tools gcovr +RUN apt-get -y install device-tree-compiler python3 python3-yaml dh-autore= conf gdb strace lsof net-tools gcovr ninja-build # Travis tools require PhantomJS / Neo4j / Maven accessible # in their PATH (QEMU build won't access them). ENV PATH /usr/local/phantomjs/bin:/usr/local/phantomjs:/usr/local/neo4j-3.= 2.7/bin:/usr/local/maven-3.5.2/bin:/usr/local/cmake-3.9.2/bin:/usr/local/cl= ang-5.0.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin diff --git a/tests/docker/dockerfiles/ubuntu.docker b/tests/docker/dockerfi= les/ubuntu.docker index b556ed17d2..b5ef7a8198 100644 --- a/tests/docker/dockerfiles/ubuntu.docker +++ b/tests/docker/dockerfiles/ubuntu.docker @@ -60,6 +60,7 @@ ENV PACKAGES \ libxen-dev \ libzstd-dev \ make \ + ninja-build \ python3-yaml \ python3-sphinx \ sparse \ diff --git a/tests/docker/dockerfiles/ubuntu1804.docker b/tests/docker/dock= erfiles/ubuntu1804.docker index a6a7617da6..9b0a19ba5e 100644 --- a/tests/docker/dockerfiles/ubuntu1804.docker +++ b/tests/docker/dockerfiles/ubuntu1804.docker @@ -48,6 +48,7 @@ ENV PACKAGES \ make \ python3-yaml \ python3-sphinx \ + ninja-build \ sparse \ xfslibs-dev RUN apt-get update && \ diff --git a/tests/docker/dockerfiles/ubuntu2004.docker b/tests/docker/dock= erfiles/ubuntu2004.docker index f4b9556b9e..17b37cda38 100644 --- a/tests/docker/dockerfiles/ubuntu2004.docker +++ b/tests/docker/dockerfiles/ubuntu2004.docker @@ -47,6 +47,7 @@ ENV PACKAGES flex bison \ libxen-dev \ libzstd-dev \ make \ + ninja-build \ python3-numpy \ python3-opencv \ python3-pil \ diff --git a/tests/vm/centos b/tests/vm/centos index 0ad4ecf419..efe3dbbb36 100755 --- a/tests/vm/centos +++ b/tests/vm/centos @@ -42,7 +42,7 @@ class CentosVM(basevm.BaseVM): self.wait_ssh() self.ssh_root_check("touch /etc/cloud/cloud-init.disabled") self.ssh_root_check("yum update -y") - self.ssh_root_check("yum install -y docker make git python3") + self.ssh_root_check("yum install -y docker make ninja-build git py= thon3") self.ssh_root_check("systemctl enable docker") self.ssh_root("poweroff") self.wait() diff --git a/tests/vm/centos.aarch64 b/tests/vm/centos.aarch64 index d5232ecdb8..e687b93e52 100755 --- a/tests/vm/centos.aarch64 +++ b/tests/vm/centos.aarch64 @@ -23,7 +23,7 @@ import aarch64vm DEFAULT_CONFIG =3D { 'cpu' : "max", 'machine' : "virt,gic-version=3Dmax", - 'install_cmds' : "yum install -y make git python3 gcc gcc-c++ flex bis= on, "\ + 'install_cmds' : "yum install -y make ninja-build git python3 gcc gcc-= c++ flex bison, "\ "yum install -y glib2-devel pixman-devel zlib-devel, "\ "yum install -y perl-Test-Harness, "\ "alternatives --set python /usr/bin/python3, "\ diff --git a/tests/vm/fedora b/tests/vm/fedora index b2b478fdbc..b977efe4a2 100755 --- a/tests/vm/fedora +++ b/tests/vm/fedora @@ -32,7 +32,7 @@ class FedoraVM(basevm.BaseVM): pkgs =3D [ # tools 'git-core', - 'gcc', 'binutils', 'make', + 'gcc', 'binutils', 'make', 'ninja-build', =20 # perl 'perl-Test-Harness', diff --git a/tests/vm/freebsd b/tests/vm/freebsd index 5f866e09c4..04ee793381 100755 --- a/tests/vm/freebsd +++ b/tests/vm/freebsd @@ -34,6 +34,7 @@ class FreeBSDVM(basevm.BaseVM): "bzip2", "python37", "py37-setuptools", + "ninja", =20 # gnu tools "bash", diff --git a/tests/vm/netbsd b/tests/vm/netbsd index ffb65a89be..a9da255c5a 100755 --- a/tests/vm/netbsd +++ b/tests/vm/netbsd @@ -32,6 +32,7 @@ class NetBSDVM(basevm.BaseVM): "xz", "python37", "py37-setuptools", + "ninja", =20 # gnu tools "bash", diff --git a/tests/vm/openbsd b/tests/vm/openbsd index 8356646f21..ad882a76a2 100755 --- a/tests/vm/openbsd +++ b/tests/vm/openbsd @@ -31,6 +31,7 @@ class OpenBSDVM(basevm.BaseVM): "pkgconf", "bzip2", "xz", "py3-setuptools", + "ninja", =20 # gnu tools "bash", diff --git a/tests/vm/ubuntu.aarch64 b/tests/vm/ubuntu.aarch64 index 21d454c27f..b291945a7e 100755 --- a/tests/vm/ubuntu.aarch64 +++ b/tests/vm/ubuntu.aarch64 @@ -22,7 +22,7 @@ DEFAULT_CONFIG =3D { 'machine' : "virt,gic-version=3D3", 'install_cmds' : "apt-get update,"\ "apt-get build-dep -y --arch-only qemu,"\ - "apt-get install -y libfdt-dev pkg-config language-pa= ck-en", + "apt-get install -y libfdt-dev pkg-config language-pa= ck-en ninja-build", # We increase beyond the default time since during boot # it can take some time (many seconds) to log into the VM # especially using softmmu. diff --git a/tests/vm/ubuntu.i386 b/tests/vm/ubuntu.i386 index 5ce72610a6..47681b6f87 100755 --- a/tests/vm/ubuntu.i386 +++ b/tests/vm/ubuntu.i386 @@ -18,7 +18,7 @@ import ubuntuvm DEFAULT_CONFIG =3D { 'install_cmds' : "apt-get update,"\ "apt-get build-dep -y qemu,"\ - "apt-get install -y libfdt-dev language-pack-en", + "apt-get install -y libfdt-dev language-pack-en ninja= -build", } =20 class UbuntuX86VM(ubuntuvm.UbuntuVM): --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849435; cv=none; d=zohomail.com; s=zohoarc; b=VDPHIrsHTkIlWthGYk6PpT5Tc1W7tv1MnTguOzZVwjq3aY3lZ3mXH9fJmm6O7ccRRRNFJ8yIQyfywCGV3BrHc8H0/rlyGZj3VFZHzu9o/DkVjn61RYIlELAHJ64zJ+RZJDOLVA3Bj9WfCdneo63bj80ppOplF/mx/XAM6904nsY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849435; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=wiPjYc6Em8HOqlNdKvEdGTuMiqk8PUd2qPFD0ObUZ7o=; b=UBi1tV0N2bVLN5k+2ssovLUuGUf6KRbwjwDwR402qXDQCc/IIOSAMH2SAjuGXsyQ4cFO+XOeSgh87Hbo5V0olvx4ggcEGN1YFmQ0KQcn7ZaAWbGezJxLwwHe9UqiLfn3+W79rI+OYGUSqMJrYDhpE7ItvbyG0jKgIg+GENZ95wc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849435272925.9125774054678; Fri, 16 Oct 2020 04:57:15 -0700 (PDT) Received: from localhost ([::1]:38502 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOME-0003cw-3J for importer@patchew.org; Fri, 16 Oct 2020 07:57:14 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34422) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODh-0000Sx-SU for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:25 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:32869) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODe-0002oY-1L for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:25 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-488-FisGifmEPs2hwj0sseAaPQ-1; Fri, 16 Oct 2020 07:48:19 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 22BF91019626 for ; Fri, 16 Oct 2020 11:48:18 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id E655B76640 for ; Fri, 16 Oct 2020 11:48:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848901; 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=wiPjYc6Em8HOqlNdKvEdGTuMiqk8PUd2qPFD0ObUZ7o=; b=DQ8RVIzmBca3eIe7Cgc6pXLrh9Qp3ahzigo/kChvbRESQgYu/2qzV4glXcb92lAKYH7jsM CVuIL/4wbIKLM77XyXoStaxgShhbsuMNK+2zEwRuPnAkA5/GacAdCEH+GeXxIVgHgE7apn 6y5RMfGTj8mXqhfbAGBcfVg6PUCCtzA= X-MC-Unique: FisGifmEPs2hwj0sseAaPQ-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 09/22] build: cleanups to Makefile Date: Fri, 16 Oct 2020 07:48:01 -0400 Message-Id: <20201016114814.1564523-10-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/16 03:57:19 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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_H5=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Group similar rules, add comments to "else" and "endif" lines, detect too-old config-host.mak before messing things up. Signed-off-by: Paolo Bonzini --- Makefile | 45 ++++++++++++++++++++++++++++----------------- 1 file changed, 28 insertions(+), 17 deletions(-) diff --git a/Makefile b/Makefile index 91c62a26c8..53d624a0be 100644 --- a/Makefile +++ b/Makefile @@ -30,13 +30,21 @@ UNCHECKED_GOALS :=3D %clean TAGS cscope ctags dist \ help check-help print-% \ docker docker-% vm-help vm-test vm-build-% =20 +all: +.PHONY: all clean distclean recurse-all dist msi FORCE + +# Don't try to regenerate Makefile or configure +# We don't generate any of them +Makefile: ; +configure: ; + # All following code might depend on configuration variables ifneq ($(wildcard config-host.mak),) -# Put the all: rule here so that config-host.mak can contain dependencies. -all: include config-host.mak =20 git-submodule-update: +.git-submodule-status: git-submodule-update config-host.mak +Makefile: .git-submodule-status =20 .PHONY: git-submodule-update =20 @@ -84,9 +92,7 @@ Makefile.mtest: build.ninja scripts/mtest2make.py -include Makefile.mtest endif =20 -Makefile: .git-submodule-status -.git-submodule-status: git-submodule-update config-host.mak - +# Ensure the build tree is okay. # Check that we're not trying to do an out-of-tree build from # a tree that's been used for an in-tree build. ifneq ($(realpath $(SRC_PATH)),$(realpath .)) @@ -97,6 +103,20 @@ seems to have been used for an in-tree build. You can f= ix this by running \ endif endif =20 +# force a rerun of configure if config-host.mak is too old or corrupted +ifeq ($(MESON),) +.PHONY: config-host.mak +x :=3D $(shell rm -rf meson-private meson-info meson-logs) +endif +ifeq ($(NINJA),) +.PHONY: config-host.mak +x :=3D $(shell rm -rf meson-private meson-info meson-logs) +endif +ifeq ($(wildcard build.ninja),) +.PHONY: config-host.mak +x :=3D $(shell rm -rf meson-private meson-info meson-logs) +endif + config-host.mak: $(SRC_PATH)/configure $(SRC_PATH)/pc-bios $(SRC_PATH)/VER= SION @echo $@ is out-of-date, running configure @if test -f meson-private/coredata.dat; then \ @@ -114,15 +134,15 @@ plugins: $(call quiet-command,\ $(MAKE) $(SUBDIR_MAKEFLAGS) -C contrib/plugins V=3D"$(V)", \ "BUILD", "example plugins") -endif +endif # $(CONFIG_PLUGIN) =20 -else +else # config-host.mak does not exist config-host.mak: ifneq ($(filter-out $(UNCHECKED_GOALS),$(MAKECMDGOALS)),$(if $(MAKECMDGOAL= S),,fail)) @echo "Please call configure before running make!" @exit 1 endif -endif +endif # config-host.mak does not exist =20 # Only needed in case Makefile.ninja does not exist. .PHONY: ninja-clean ninja-distclean clean-ctlist @@ -131,20 +151,11 @@ ninja-clean:: ninja-distclean:: build.ninja: config-host.mak =20 -# Don't try to regenerate Makefile or configure -# We don't generate any of them -Makefile: ; -configure: ; - -.PHONY: all clean distclean install \ - recurse-all dist msi FORCE - SUBDIR_MAKEFLAGS=3D$(if $(V),,--no-print-directory --quiet) =20 include $(SRC_PATH)/tests/Makefile.include =20 all: recurse-all -Makefile: =20 ROM_DIRS =3D $(addprefix pc-bios/, $(ROMS)) ROM_DIRS_RULES=3D$(foreach t, all clean, $(addsuffix /$(t), $(ROM_DIRS))) --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849456; cv=none; d=zohomail.com; s=zohoarc; b=P4/2lXHijK71niRFvjGOqXfSs7uI1qEQPi+Fr0+b4fcO1JbZhT6CRqulnUV5doq1msFd0/AG7S5oE/wbeAd+Wd1AO3txRKg8TrfRA2NTk55WaCFMgaHIlBvfUt8ET4I3drZFvgbmrLh7i5CSfNmt39I7K13thKbXAd+Zy71kvS8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849456; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=O2pXOU1nUtkc/safD6rCX7gWQ76CG3QHuJCbmc9RG54=; b=jvtT20TydlQ2Urx01rxn096Hops3ORaZeesHDuOk+RFZD85VsMchEZwU47rP8p7PoOa+NwINEBa4i/aUFTH3pW/R/okaxsRUOn/+dLYIPHfJ/r/qN3kk30TGOuOqFb2Mgk8fPaxhAi6nwudIlS72/NNP6hWBmusHZ2jwMwiQu/8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849456545299.0300219838641; Fri, 16 Oct 2020 04:57:36 -0700 (PDT) Received: from localhost ([::1]:39824 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOMZ-0004Bj-5f for importer@patchew.org; Fri, 16 Oct 2020 07:57:35 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34500) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODk-0000bf-Sp for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:28 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:40866) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODg-0002pK-RB for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:28 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-267-z1I-yyHzO26k585E4xReSw-1; Fri, 16 Oct 2020 07:48:19 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id CF8E0800683 for ; Fri, 16 Oct 2020 11:48:18 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id 7C9775C1BD for ; Fri, 16 Oct 2020 11:48:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848904; 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=O2pXOU1nUtkc/safD6rCX7gWQ76CG3QHuJCbmc9RG54=; b=i9C0OWi1V/17n+PpnNrz6jMf/mYkUX9Yp0xl841RB3EdmAi1+dTKTr1/ThQToXNUx724zU OitkwIFVPKdO63dTjM7doDWH5hVZ8plIBO8C/L6/UW4gjjr9FN7OqOlsTFY4ug1itQRm91 zOlx0t3TNefPlPTikM6bnMU2uh5kEFA= X-MC-Unique: z1I-yyHzO26k585E4xReSw-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 10/22] build: replace ninjatool with ninja Date: Fri, 16 Oct 2020 07:48:02 -0400 Message-Id: <20201016114814.1564523-11-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 20:29:24 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: 0 X-Spam_score: -0.1 X-Spam_bar: / X-Spam_report: (-0.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, PDS_OTHER_BAD_TLD=1.999, 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=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Now that the build is done entirely by Meson, there is no need to keep the Makefile conversion. Instead, we can ask Ninja about the targets it exposes and forward them. The main advantages are, from smallest to largest: - reducing the possible namespace pollution within the Makefile - removal of a relatively large Python program - faster build because parsing Makefile.ninja is slower than parsing build.ninja; and faster build after Meson runs because we do not have to generate Makefile.ninja. - tracking of command lines, which provides more accurate rebuilds In addition the change removes the requirement for GNU make 3.82, which was annoying on Mac, and avoids bugs on Windows due to ninjatool not knowing how to convert Windows escapes to POSIX escapes. Signed-off-by: Paolo Bonzini --- Makefile | 79 +-- configure | 9 +- docs/devel/build-system.rst | 6 +- meson.build | 4 - scripts/mtest2make.py | 3 +- scripts/ninjatool.py | 1008 ----------------------------------- tests/Makefile.include | 2 +- 7 files changed, 58 insertions(+), 1053 deletions(-) delete mode 100755 scripts/ninjatool.py diff --git a/Makefile b/Makefile index 53d624a0be..9196b31733 100644 --- a/Makefile +++ b/Makefile @@ -72,27 +72,8 @@ git-submodule-update: endif endif =20 -export NINJA=3D./ninjatool +# 0. ensure the build tree is okay =20 -# Running meson regenerates both build.ninja and ninjatool, and that is -# enough to prime the rest of the build. -ninjatool: build.ninja - -Makefile.ninja: build.ninja ninjatool - ./ninjatool -t ninja2make --omit clean dist uninstall cscope TAGS ctags <= $< > $@ --include Makefile.ninja - -${ninja-targets-c_COMPILER} ${ninja-targets-cpp_COMPILER}: .var.command += =3D -MP - -# If MESON is empty, the rule will be re-evaluated after Makefiles are -# reread (and MESON won't be empty anymore). -ifneq ($(MESON),) -Makefile.mtest: build.ninja scripts/mtest2make.py - $(MESON) introspect --targets --tests --benchmarks | $(PYTHON) scripts/mt= est2make.py > $@ --include Makefile.mtest -endif - -# Ensure the build tree is okay. # Check that we're not trying to do an out-of-tree build from # a tree that's been used for an in-tree build. ifneq ($(realpath $(SRC_PATH)),$(realpath .)) @@ -117,6 +98,7 @@ ifeq ($(wildcard build.ninja),) x :=3D $(shell rm -rf meson-private meson-info meson-logs) endif =20 +# 1. ensure config-host.mak is up-to-date config-host.mak: $(SRC_PATH)/configure $(SRC_PATH)/pc-bios $(SRC_PATH)/VER= SION @echo $@ is out-of-date, running configure @if test -f meson-private/coredata.dat; then \ @@ -125,6 +107,45 @@ config-host.mak: $(SRC_PATH)/configure $(SRC_PATH)/pc-= bios $(SRC_PATH)/VERSION ./config.status; \ fi =20 +# 2. ensure generated build files are up-to-date + +ifneq ($(NINJA),) +# A separate rule is needed for Makefile dependencies to avoid -n +export NINJA +Makefile.ninja: build.ninja + $(quiet-@){ echo 'ninja-targets =3D \'; $(NINJA) -t targets all | sed 's/= :.*//; $$!s/$$/ \\/'; } > $@ +-include Makefile.ninja +endif + +ifneq ($(MESON),) +Makefile.mtest: build.ninja scripts/mtest2make.py + $(MESON) introspect --targets --tests --benchmarks | $(PYTHON) scripts/mt= est2make.py > $@ +-include Makefile.mtest +endif + +# 3. Rules to bridge to other makefiles + +ifneq ($(NINJA),) +NINJAFLAGS =3D $(if $V,-v,) \ + $(filter-out -j, $(lastword -j1 $(filter -l% -j%, $(MAKEFLAGS)))) \ + $(subst -k, -k0, $(filter -n -k,$(MAKEFLAGS))) + +ninja-cmd-goals =3D $(or $(MAKECMDGOALS), all) +ninja-cmd-goals +=3D $(foreach t, $(.tests), $(.test.deps.$t)) + +makefile-targets :=3D build.ninja ctags TAGS cscope dist clean uninstall +ninja-targets :=3D $(filter-out $(makefile-targets), $(ninja-targets)) +.PHONY: $(ninja-targets) run-ninja +$(ninja-targets): run-ninja + +# Use "| cat" to give Ninja a more "make-y" output. Use "+" to bypass the +# --output-sync line. +run-ninja: config-host.mak +ifneq ($(filter $(ninja-targets), $(ninja-cmd-goals)),) + +@$(NINJA) $(NINJAFLAGS) $(sort $(filter $(ninja-targets), $(ninja-cmd-go= als))) | cat +endif +endif + # Force configure to re-run if the API symbols are updated ifeq ($(CONFIG_PLUGIN),y) config-host.mak: $(SRC_PATH)/plugins/qemu-plugins.symbols @@ -144,13 +165,6 @@ ifneq ($(filter-out $(UNCHECKED_GOALS),$(MAKECMDGOALS)= ),$(if $(MAKECMDGOALS),,fa endif endif # config-host.mak does not exist =20 -# Only needed in case Makefile.ninja does not exist. -.PHONY: ninja-clean ninja-distclean clean-ctlist -clean-ctlist: -ninja-clean:: -ninja-distclean:: -build.ninja: config-host.mak - SUBDIR_MAKEFLAGS=3D$(if $(V),,--no-print-directory --quiet) =20 include $(SRC_PATH)/tests/Makefile.include @@ -170,8 +184,9 @@ recurse-clean: $(addsuffix /clean, $(ROM_DIRS)) =20 ###################################################################### =20 -clean: recurse-clean ninja-clean clean-ctlist - if test -f ninjatool; then ./ninjatool $(if $(V),-v,) -t clean; fi +clean: recurse-clean + -@test -f build.ninja && $(quiet-@)$(NINJA) $(NINJAFLAGS) -t clean || : + -@test -f build.ninja && $(NINJA) $(NINJAFLAGS) clean-ctlist || : # avoid old build problems by removing potentially incorrect old files rm -f config.mak op-i386.h opc-i386.h gen-op-i386.h op-arm.h opc-arm.h ge= n-op-arm.h find . \( -name '*.so' -o -name '*.dll' -o -name '*.[oda]' \) -type f \ @@ -188,8 +203,8 @@ dist: qemu-$(VERSION).tar.bz2 qemu-%.tar.bz2: $(SRC_PATH)/scripts/make-release "$(SRC_PATH)" "$(patsubst qemu-%.tar.bz2= ,%,$@)" =20 -distclean: clean ninja-distclean - -test -f ninjatool && ./ninjatool $(if $(V),-v,) -t clean -g +distclean: clean + -@test -f build.ninja && $(quiet-@)$(NINJA) $(NINJAFLAGS) -t clean -g || : rm -f config-host.mak config-host.h* rm -f tests/tcg/config-*.mak rm -f config-all-disas.mak config.status @@ -198,7 +213,7 @@ distclean: clean ninja-distclean rm -f qemu-plugins-ld.symbols qemu-plugins-ld64.symbols rm -f *-config-target.h *-config-devices.mak *-config-devices.h rm -rf meson-private meson-logs meson-info compile_commands.json - rm -f Makefile.ninja ninjatool ninjatool.stamp Makefile.mtest + rm -f Makefile.ninja Makefile.mtest rm -f config.log rm -f linux-headers/asm rm -Rf .sdk diff --git a/configure b/configure index 8aa03876d4..9317349044 100755 --- a/configure +++ b/configure @@ -1905,7 +1905,7 @@ case "$meson" in *) meson=3D$(command -v "$meson") ;; esac =20 -# Probe for ninja (used for compdb) +# Probe for ninja =20 if test -z "$ninja"; then for c in ninja ninja-build samu; do @@ -1914,6 +1914,9 @@ if test -z "$ninja"; then break fi done + if test -z "$ninja"; then + error_exit "Cannot find Ninja" + fi fi =20 # Check that the C compiler works. Doing this here before testing @@ -6779,6 +6782,7 @@ echo "PYTHON=3D$python" >> $config_host_mak echo "SPHINX_BUILD=3D$sphinx_build" >> $config_host_mak echo "GENISOIMAGE=3D$genisoimage" >> $config_host_mak echo "MESON=3D$meson" >> $config_host_mak +echo "NINJA=3D$ninja" >> $config_host_mak echo "CC=3D$cc" >> $config_host_mak if $iasl -h > /dev/null 2>&1; then echo "CONFIG_IASL=3D$iasl" >> $config_host_mak @@ -7030,7 +7034,7 @@ fi mv $cross config-meson.cross =20 rm -rf meson-private meson-info meson-logs -NINJA=3D${ninja:-$PWD/ninjatool} $meson setup \ +NINJA=3D$ninja $meson setup \ --prefix "$prefix" \ --libdir "$libdir" \ --libexecdir "$libexecdir" \ @@ -7063,7 +7067,6 @@ NINJA=3D${ninja:-$PWD/ninjatool} $meson setup \ if test "$?" -ne 0 ; then error_exit "meson setup failed" fi -touch ninjatool.stamp fi =20 if test -n "${deprecated_features}"; then diff --git a/docs/devel/build-system.rst b/docs/devel/build-system.rst index 2ee368fad6..6fcf8854b7 100644 --- a/docs/devel/build-system.rst +++ b/docs/devel/build-system.rst @@ -404,10 +404,8 @@ Built by Meson: Built by Makefile: =20 `Makefile.ninja` - A Makefile conversion of the build rules in build.ninja. The conversion - is straightforward and, were it necessary to debug the rules produced - by Meson, it should be enough to look at build.ninja. The conversion - is performed by scripts/ninjatool.py. + A Makefile include that bridges to ninja for the actual build. The + Makefile is mostly a list of targets that Meson included in build.ninja. =20 `Makefile.mtest` The Makefile definitions that let "make check" run tests defined in diff --git a/meson.build b/meson.build index 88f757eac9..2c93e22382 100644 --- a/meson.build +++ b/meson.build @@ -47,10 +47,6 @@ supported_cpus =3D ['ppc', 'ppc64', 's390x', 'riscv32', = 'riscv64', 'x86', 'x86_64' cpu =3D host_machine.cpu_family() targetos =3D host_machine.system() =20 -configure_file(input: files('scripts/ninjatool.py'), - output: 'ninjatool', - configuration: config_host) - if cpu in ['x86', 'x86_64'] kvm_targets =3D ['i386-softmmu', 'x86_64-softmmu'] elif cpu =3D=3D 'aarch64' diff --git a/scripts/mtest2make.py b/scripts/mtest2make.py index c3489a4605..25ee6887cf 100644 --- a/scripts/mtest2make.py +++ b/scripts/mtest2make.py @@ -70,8 +70,9 @@ def process_tests(test, targets, suites): print('.test.driver.%d :=3D %s' % (i, driver)) print('.test.env.%d :=3D $(.test.env) %s' % (i, env)) print('.test.cmd.%d :=3D %s' % (i, cmd)) + print('.test.deps.%d :=3D %s' % (i, ' '.join(deps))) print('.PHONY: run-test-%d' % (i,)) - print('run-test-%d: %s' % (i, ' '.join(deps))) + print('run-test-%d: $(.test.deps.%d)' % (i,i)) print('\t@$(call .test.run,%d,$(.test.output-format))' % (i,)) =20 test_suites =3D test['suite'] or ['default'] diff --git a/scripts/ninjatool.py b/scripts/ninjatool.py deleted file mode 100755 index 6f0e35c727..0000000000 --- a/scripts/ninjatool.py +++ /dev/null @@ -1,1008 +0,0 @@ -#! /bin/sh - -# Python module for parsing and processing .ninja files. -# -# Author: Paolo Bonzini -# -# Copyright (C) 2019 Red Hat, Inc. - - -# We don't want to put "#! @PYTHON@" as the shebang and -# make the file executable, so instead we make this a -# Python/shell polyglot. The first line below starts a -# multiline string literal for Python, while it is just -# ":" for bash. The closing of the multiline string literal -# is never parsed by bash since it exits before. - -'''': -case "$0" in - /*) me=3D$0 ;; - *) me=3D$(command -v "$0") ;; -esac -python=3D"@PYTHON@" -case $python in - @*) python=3Dpython3 ;; -esac -exec $python "$me" "$@" -exit 1 -''' - - -from collections import namedtuple, defaultdict -import sys -import os -import re -import json -import argparse -import hashlib -import shutil - - -class InvalidArgumentError(Exception): - pass - -# faster version of os.path.normpath: do nothing unless there is a double -# slash or a "." or ".." component. The filter does not have to be super -# precise, but it has to be fast. os.path.normpath is the hottest function -# for ninja2make without this optimization! -if os.path.sep =3D=3D '/': - def normpath(path, _slow_re=3Dre.compile('/[./]')): - return os.path.normpath(path) if _slow_re.search(path) or path[0] = =3D=3D '.' else path -else: - normpath =3D os.path.normpath - - -def sha1_text(text): - return hashlib.sha1(text.encode()).hexdigest() - -# ---- lexer and parser ---- - -PATH_RE =3D r"[^$\s:|]+|\$[$ :]|\$[a-zA-Z0-9_-]+|\$\{[a-zA-Z0-9_.-]+\}" - -SIMPLE_PATH_RE =3D re.compile(r"^[^$\s:|]+$") -IDENT_RE =3D re.compile(r"[a-zA-Z0-9_.-]+$") -STRING_RE =3D re.compile(r"(" + PATH_RE + r"|[\s:|])(?:\r?\n)?|.") -TOPLEVEL_RE =3D re.compile(r"([=3D:#]|\|\|?|^ +|(?:" + PATH_RE + r")+)\s*|= .") -VAR_RE=3Dre.compile(r'\$\$|\$\{([^}]*)\}') - -BUILD =3D 1 -POOL =3D 2 -RULE =3D 3 -DEFAULT =3D 4 -EQUALS =3D 5 -COLON =3D 6 -PIPE =3D 7 -PIPE2 =3D 8 -IDENT =3D 9 -INCLUDE =3D 10 -INDENT =3D 11 -EOL =3D 12 - - -class LexerError(Exception): - pass - - -class ParseError(Exception): - pass - - -class NinjaParserEvents(object): - def __init__(self, parser): - self.parser =3D parser - - def dollar_token(self, word, in_path=3DFalse): - return '$$' if word =3D=3D '$' else word - - def variable_expansion_token(self, varname): - return '${%s}' % varname - - def variable(self, name, arg): - pass - - def begin_file(self): - pass - - def end_file(self): - pass - - def end_scope(self): - pass - - def begin_pool(self, name): - pass - - def begin_rule(self, name): - pass - - def begin_build(self, out, iout, rule, in_, iin, orderdep): - pass - - def default(self, targets): - pass - - -class NinjaParser(object): - - InputFile =3D namedtuple('InputFile', 'filename iter lineno') - - def __init__(self, filename, input): - self.stack =3D [] - self.top =3D None - self.iter =3D None - self.lineno =3D None - self.match_keyword =3D False - self.push(filename, input) - - def file_changed(self): - self.iter =3D self.top.iter - self.lineno =3D self.top.lineno - if self.top.filename is not None: - os.chdir(os.path.dirname(self.top.filename) or '.') - - def push(self, filename, input): - if self.top: - self.top.lineno =3D self.lineno - self.top.iter =3D self.iter - self.stack.append(self.top) - self.top =3D self.InputFile(filename=3Dfilename or 'stdin', - iter=3Dself._tokens(input), lineno=3D0) - self.file_changed() - - def pop(self): - if len(self.stack): - self.top =3D self.stack[-1] - self.stack.pop() - self.file_changed() - else: - self.top =3D self.iter =3D None - - def next_line(self, input): - line =3D next(input).rstrip() - self.lineno +=3D 1 - while len(line) and line[-1] =3D=3D '$': - line =3D line[0:-1] + next(input).strip() - self.lineno +=3D 1 - return line - - def print_token(self, tok): - if tok =3D=3D EOL: - return "end of line" - if tok =3D=3D BUILD: - return '"build"' - if tok =3D=3D POOL: - return '"pool"' - if tok =3D=3D RULE: - return '"rule"' - if tok =3D=3D DEFAULT: - return '"default"' - if tok =3D=3D EQUALS: - return '"=3D"' - if tok =3D=3D COLON: - return '":"' - if tok =3D=3D PIPE: - return '"|"' - if tok =3D=3D PIPE2: - return '"||"' - if tok =3D=3D INCLUDE: - return '"include"' - if tok =3D=3D IDENT: - return 'identifier' - return '"%s"' % tok - - def error(self, msg): - raise LexerError("%s:%d: %s" % (self.stack[-1].filename, self.line= no, msg)) - - def parse_error(self, msg): - raise ParseError("%s:%d: %s" % (self.stack[-1].filename, self.line= no, msg)) - - def expected(self, expected, tok): - msg =3D "found %s, expected " % (self.print_token(tok), ) - for i, exp_tok in enumerate(expected): - if i > 0: - msg =3D msg + (' or ' if i =3D=3D len(expected) - 1 else '= , ') - msg =3D msg + self.print_token(exp_tok) - self.parse_error(msg) - - def _variable_tokens(self, value): - for m in STRING_RE.finditer(value): - match =3D m.group(1) - if not match: - self.error("unexpected '%s'" % (m.group(0), )) - yield match - - def _tokens(self, input): - while True: - try: - line =3D self.next_line(input) - except StopIteration: - return - for m in TOPLEVEL_RE.finditer(line): - match =3D m.group(1) - if not match: - self.error("unexpected '%s'" % (m.group(0), )) - if match =3D=3D ':': - yield COLON - continue - if match =3D=3D '|': - yield PIPE - continue - if match =3D=3D '||': - yield PIPE2 - continue - if match[0] =3D=3D ' ': - yield INDENT - continue - if match[0] =3D=3D '=3D': - yield EQUALS - value =3D line[m.start() + 1:].lstrip() - yield from self._variable_tokens(value) - break - if match[0] =3D=3D '#': - break - - # identifier - if self.match_keyword: - if match =3D=3D 'build': - yield BUILD - continue - if match =3D=3D 'pool': - yield POOL - continue - if match =3D=3D 'rule': - yield RULE - continue - if match =3D=3D 'default': - yield DEFAULT - continue - if match =3D=3D 'include': - filename =3D line[m.start() + 8:].strip() - self.push(filename, open(filename, 'r')) - break - if match =3D=3D 'subninja': - self.error('subninja is not supported') - yield match - yield EOL - - def parse(self, events): - global_var =3D True - - def look_for(*expected): - # The last token in the token stream is always EOL. This - # is exploited to avoid catching StopIteration everywhere. - tok =3D next(self.iter) - if tok not in expected: - self.expected(expected, tok) - return tok - - def look_for_ident(*expected): - tok =3D next(self.iter) - if isinstance(tok, str): - if not IDENT_RE.match(tok): - self.parse_error('variable expansion not allowed') - elif tok not in expected: - self.expected(expected + (IDENT,), tok) - return tok - - def parse_assignment_rhs(gen, expected, in_path): - tokens =3D [] - for tok in gen: - if not isinstance(tok, str): - if tok in expected: - break - self.expected(expected + (IDENT,), tok) - if tok[0] !=3D '$': - tokens.append(tok) - elif tok =3D=3D '$ ' or tok =3D=3D '$$' or tok =3D=3D '$:': - tokens.append(events.dollar_token(tok[1], in_path)) - else: - var =3D tok[2:-1] if tok[1] =3D=3D '{' else tok[1:] - tokens.append(events.variable_expansion_token(var)) - else: - # gen must have raised StopIteration - tok =3D None - - if tokens: - # Fast path avoiding str.join() - value =3D tokens[0] if len(tokens) =3D=3D 1 else ''.join(t= okens) - else: - value =3D None - return value, tok - - def look_for_path(*expected): - # paths in build rules are parsed one space-separated token - # at a time and expanded - token =3D next(self.iter) - if not isinstance(token, str): - return None, token - # Fast path if there are no dollar and variable expansion - if SIMPLE_PATH_RE.match(token): - return token, None - gen =3D self._variable_tokens(token) - return parse_assignment_rhs(gen, expected, True) - - def parse_assignment(tok): - name =3D tok - assert isinstance(name, str) - look_for(EQUALS) - value, tok =3D parse_assignment_rhs(self.iter, (EOL,), False) - assert tok =3D=3D EOL - events.variable(name, value) - - def parse_build(): - # parse outputs - out =3D [] - iout =3D [] - while True: - value, tok =3D look_for_path(COLON, PIPE) - if value is None: - break - out.append(value) - if tok =3D=3D PIPE: - while True: - value, tok =3D look_for_path(COLON) - if value is None: - break - iout.append(value) - - # parse rule - assert tok =3D=3D COLON - rule =3D look_for_ident() - - # parse inputs and dependencies - in_ =3D [] - iin =3D [] - orderdep =3D [] - while True: - value, tok =3D look_for_path(PIPE, PIPE2, EOL) - if value is None: - break - in_.append(value) - if tok =3D=3D PIPE: - while True: - value, tok =3D look_for_path(PIPE2, EOL) - if value is None: - break - iin.append(value) - if tok =3D=3D PIPE2: - while True: - value, tok =3D look_for_path(EOL) - if value is None: - break - orderdep.append(value) - assert tok =3D=3D EOL - events.begin_build(out, iout, rule, in_, iin, orderdep) - nonlocal global_var - global_var =3D False - - def parse_pool(): - # pool declarations are ignored. Just gobble all the variables - ident =3D look_for_ident() - look_for(EOL) - events.begin_pool(ident) - nonlocal global_var - global_var =3D False - - def parse_rule(): - ident =3D look_for_ident() - look_for(EOL) - events.begin_rule(ident) - nonlocal global_var - global_var =3D False - - def parse_default(): - idents =3D [] - while True: - ident =3D look_for_ident(EOL) - if ident =3D=3D EOL: - break - idents.append(ident) - events.default(idents) - - def parse_declaration(tok): - if tok =3D=3D EOL: - return - - nonlocal global_var - if tok =3D=3D INDENT: - if global_var: - self.parse_error('indented line outside rule or edge') - tok =3D look_for_ident(EOL) - if tok =3D=3D EOL: - return - parse_assignment(tok) - return - - if not global_var: - events.end_scope() - global_var =3D True - if tok =3D=3D POOL: - parse_pool() - elif tok =3D=3D BUILD: - parse_build() - elif tok =3D=3D RULE: - parse_rule() - elif tok =3D=3D DEFAULT: - parse_default() - elif isinstance(tok, str): - parse_assignment(tok) - else: - self.expected((POOL, BUILD, RULE, INCLUDE, DEFAULT, IDENT)= , tok) - - events.begin_file() - while self.iter: - try: - self.match_keyword =3D True - token =3D next(self.iter) - self.match_keyword =3D False - parse_declaration(token) - except StopIteration: - self.pop() - events.end_file() - - -# ---- variable handling ---- - -def expand(x, rule_vars=3DNone, build_vars=3DNone, global_vars=3DNone): - if x is None: - return None - changed =3D True - have_dollar_replacement =3D False - while changed: - changed =3D False - matches =3D list(VAR_RE.finditer(x)) - if not matches: - break - - # Reverse the match so that expanding later matches does not - # invalidate m.start()/m.end() for earlier ones. Do not reduce $$= to $ - # until all variables are dealt with. - for m in reversed(matches): - name =3D m.group(1) - if not name: - have_dollar_replacement =3D True - continue - changed =3D True - if build_vars and name in build_vars: - value =3D build_vars[name] - elif rule_vars and name in rule_vars: - value =3D rule_vars[name] - elif name in global_vars: - value =3D global_vars[name] - else: - value =3D '' - x =3D x[:m.start()] + value + x[m.end():] - return x.replace('$$', '$') if have_dollar_replacement else x - - -class Scope(object): - def __init__(self, events): - self.events =3D events - - def on_left_scope(self): - pass - - def on_variable(self, key, value): - pass - - -class BuildScope(Scope): - def __init__(self, events, out, iout, rule, in_, iin, orderdep, rule_v= ars): - super().__init__(events) - self.rule =3D rule - self.out =3D [events.expand_and_normalize(x) for x in out] - self.in_ =3D [events.expand_and_normalize(x) for x in in_] - self.iin =3D [events.expand_and_normalize(x) for x in iin] - self.orderdep =3D [events.expand_and_normalize(x) for x in orderde= p] - self.iout =3D [events.expand_and_normalize(x) for x in iout] - self.rule_vars =3D rule_vars - self.build_vars =3D dict() - self._define_variable('out', ' '.join(self.out)) - self._define_variable('in', ' '.join(self.in_)) - - def expand(self, x): - return self.events.expand(x, self.rule_vars, self.build_vars) - - def on_left_scope(self): - self.events.variable('out', self.build_vars['out']) - self.events.variable('in', self.build_vars['in']) - self.events.end_build(self, self.out, self.iout, self.rule, self.i= n_, - self.iin, self.orderdep) - - def _define_variable(self, key, value): - # The value has been expanded already, quote it for further - # expansion from rule variables - value =3D value.replace('$', '$$') - self.build_vars[key] =3D value - - def on_variable(self, key, value): - # in and out are at the top of the lookup order and cannot - # be overridden. Also, unlike what the manual says, build - # variables only lookup global variables. They never lookup - # rule variables, earlier build variables, or in/out. - if key not in ('in', 'in_newline', 'out'): - self._define_variable(key, self.events.expand(value)) - - -class RuleScope(Scope): - def __init__(self, events, name, vars_dict): - super().__init__(events) - self.name =3D name - self.vars_dict =3D vars_dict - self.generator =3D False - - def on_left_scope(self): - self.events.end_rule(self, self.name) - - def on_variable(self, key, value): - self.vars_dict[key] =3D value - if key =3D=3D 'generator': - self.generator =3D True - - -class NinjaParserEventsWithVars(NinjaParserEvents): - def __init__(self, parser): - super().__init__(parser) - self.rule_vars =3D defaultdict(lambda: dict()) - self.global_vars =3D dict() - self.scope =3D None - - def variable(self, name, value): - if self.scope: - self.scope.on_variable(name, value) - else: - self.global_vars[name] =3D self.expand(value) - - def begin_build(self, out, iout, rule, in_, iin, orderdep): - if rule !=3D 'phony' and rule not in self.rule_vars: - self.parser.parse_error("undefined rule '%s'" % rule) - - self.scope =3D BuildScope(self, out, iout, rule, in_, iin, orderde= p, self.rule_vars[rule]) - - def begin_pool(self, name): - # pool declarations are ignored. Just gobble all the variables - self.scope =3D Scope(self) - - def begin_rule(self, name): - if name in self.rule_vars: - self.parser.parse_error("duplicate rule '%s'" % name) - self.scope =3D RuleScope(self, name, self.rule_vars[name]) - - def end_scope(self): - self.scope.on_left_scope() - self.scope =3D None - - # utility functions: - - def expand(self, x, rule_vars=3DNone, build_vars=3DNone): - return expand(x, rule_vars, build_vars, self.global_vars) - - def expand_and_normalize(self, x): - return normpath(self.expand(x)) - - # extra events not present in the superclass: - - def end_build(self, scope, out, iout, rule, in_, iin, orderdep): - pass - - def end_rule(self, scope, name): - pass - - -# ---- test client that just prints back whatever it parsed ---- - -class Writer(NinjaParserEvents): - ARGS =3D argparse.ArgumentParser(description=3D'Rewrite input build.ni= nja to stdout.') - - def __init__(self, output, parser, args): - super().__init__(parser) - self.output =3D output - self.indent =3D '' - self.had_vars =3D False - - def dollar_token(self, word, in_path=3DFalse): - return '$' + word - - def print(self, *args, **kwargs): - if len(args): - self.output.write(self.indent) - print(*args, **kwargs, file=3Dself.output) - - def variable(self, name, value): - self.print('%s =3D %s' % (name, value)) - self.had_vars =3D True - - def begin_scope(self): - self.indent =3D ' ' - self.had_vars =3D False - - def end_scope(self): - if self.had_vars: - self.print() - self.indent =3D '' - self.had_vars =3D False - - def begin_pool(self, name): - self.print('pool %s' % name) - self.begin_scope() - - def begin_rule(self, name): - self.print('rule %s' % name) - self.begin_scope() - - def begin_build(self, outputs, implicit_outputs, rule, inputs, implici= t, order_only): - all_outputs =3D list(outputs) - all_inputs =3D list(inputs) - - if implicit: - all_inputs.append('|') - all_inputs.extend(implicit) - if order_only: - all_inputs.append('||') - all_inputs.extend(order_only) - if implicit_outputs: - all_outputs.append('|') - all_outputs.extend(implicit_outputs) - - self.print('build %s: %s' % (' '.join(all_outputs), - ' '.join([rule] + all_inputs))) - self.begin_scope() - - def default(self, targets): - self.print('default %s' % ' '.join(targets)) - - -# ---- emit compile_commands.json ---- - -class Compdb(NinjaParserEventsWithVars): - ARGS =3D argparse.ArgumentParser(description=3D'Emit compile_commands.= json.') - ARGS.add_argument('rules', nargs=3D'*', - help=3D'The ninja rules to emit compilation commands= for.') - - def __init__(self, output, parser, args): - super().__init__(parser) - self.output =3D output - self.rules =3D args.rules - self.sep =3D '' - - def begin_file(self): - self.output.write('[') - self.directory =3D os.getcwd() - - def print_entry(self, **entry): - entry['directory'] =3D self.directory - self.output.write(self.sep + json.dumps(entry)) - self.sep =3D ',\n' - - def begin_build(self, out, iout, rule, in_, iin, orderdep): - if in_ and rule in self.rules: - super().begin_build(out, iout, rule, in_, iin, orderdep) - else: - self.scope =3D Scope(self) - - def end_build(self, scope, out, iout, rule, in_, iin, orderdep): - self.print_entry(command=3Dscope.expand('${command}'), file=3Din_[= 0]) - - def end_file(self): - self.output.write(']\n') - - -# ---- clean output files ---- - -class Clean(NinjaParserEventsWithVars): - ARGS =3D argparse.ArgumentParser(description=3D'Remove output build fi= les.') - ARGS.add_argument('-g', dest=3D'generator', action=3D'store_true', - help=3D'clean generated files too') - - def __init__(self, output, parser, args): - super().__init__(parser) - self.dry_run =3D args.dry_run - self.verbose =3D args.verbose or args.dry_run - self.generator =3D args.generator - - def begin_file(self): - print('Cleaning... ', end=3D(None if self.verbose else ''), flush= =3DTrue) - self.cnt =3D 0 - - def end_file(self): - print('%d files' % self.cnt) - - def do_clean(self, *files): - for f in files: - if self.dry_run: - if os.path.exists(f): - self.cnt +=3D 1 - print('Would remove ' + f) - continue - else: - try: - if os.path.isdir(f): - shutil.rmtree(f) - else: - os.unlink(f) - self.cnt +=3D 1 - if self.verbose: - print('Removed ' + f) - except FileNotFoundError: - pass - - def end_build(self, scope, out, iout, rule, in_, iin, orderdep): - if rule =3D=3D 'phony': - return - if self.generator: - rspfile =3D scope.expand('${rspfile}') - if rspfile: - self.do_clean(rspfile) - if self.generator or not scope.expand('${generator}'): - self.do_clean(*out, *iout) - depfile =3D scope.expand('${depfile}') - if depfile: - self.do_clean(depfile) - - -# ---- convert build.ninja to makefile ---- - -class Ninja2Make(NinjaParserEventsWithVars): - ARGS =3D argparse.ArgumentParser(description=3D'Convert build.ninja to= a Makefile.') - ARGS.add_argument('--clean', dest=3D'emit_clean', action=3D'store_true= ', - help=3D'Emit clean/distclean rules.') - ARGS.add_argument('--doublecolon', action=3D'store_true', - help=3D'Emit double-colon rules for phony targets.') - ARGS.add_argument('--omit', metavar=3D'TARGET', nargs=3D'+', - help=3D'Targets to omit.') - - def __init__(self, output, parser, args): - super().__init__(parser) - self.output =3D output - - self.emit_clean =3D args.emit_clean - self.doublecolon =3D args.doublecolon - self.omit =3D set(args.omit) - - if self.emit_clean: - self.omit.update(['clean', 'distclean']) - - # Lists of targets are kept in memory and emitted only at the - # end because appending is really inefficient in GNU make. - # We only do it when it's O(#rules) or O(#variables), but - # never when it could be O(#targets). - self.depfiles =3D list() - self.rspfiles =3D list() - self.build_vars =3D defaultdict(lambda: dict()) - self.rule_targets =3D defaultdict(lambda: list()) - self.stamp_targets =3D defaultdict(lambda: list()) - self.all_outs =3D set() - self.all_ins =3D set() - self.all_phony =3D set() - self.seen_default =3D False - - def print(self, *args, **kwargs): - print(*args, **kwargs, file=3Dself.output) - - def dollar_token(self, word, in_path=3DFalse): - if in_path and word =3D=3D ' ': - self.parser.parse_error('Make does not support spaces in filen= ames') - return '$$' if word =3D=3D '$' else word - - def print_phony(self, outs, ins): - targets =3D ' '.join(outs).replace('$', '$$') - deps =3D ' '.join(ins).replace('$', '$$') - deps =3D deps.strip() - if self.doublecolon: - self.print(targets + '::' + (' ' if deps else '') + deps + ';@= :') - else: - self.print(targets + ':' + (' ' if deps else '') + deps) - self.all_phony.update(outs) - - def begin_file(self): - self.print(r'# This is an automatically generated file, and it sho= ws.') - self.print(r'ninja-default:') - self.print(r'.PHONY: ninja-default ninja-clean ninja-distclean') - if self.emit_clean: - self.print(r'ninja-clean:: ninja-clean-start; $(if $V,,@)rm -f= ${ninja-depfiles}') - self.print(r'ninja-clean-start:; $(if $V,,@echo Cleaning...)') - self.print(r'ninja-distclean:: clean; $(if $V,,@)rm -f ${ninja= -rspfiles}') - self.print(r'.PHONY: ninja-clean-start') - self.print_phony(['clean'], ['ninja-clean']) - self.print_phony(['distclean'], ['ninja-distclean']) - self.print(r'vpath') - self.print(r'NULL :=3D') - self.print(r'SPACE :=3D ${NULL} #') - self.print(r'MAKEFLAGS +=3D -rR') - self.print(r'define NEWLINE') - self.print(r'') - self.print(r'endef') - self.print(r'.var.in_newline =3D $(subst $(SPACE),$(NEWLINE),${.va= r.in})') - self.print(r"ninja-command =3D $(if $V,,$(if ${.var.description},@= printf '%s\n' '$(subst ','\'',${.var.description})' && ))${.var.command}") - self.print(r"ninja-command-restat =3D $(if $V,,$(if ${.var.descrip= tion},@printf '%s\n' '$(subst ','\'',${.var.description})' && ))${.var.comm= and} && if test -e $(firstword ${.var.out}); then printf '%s\n' ${.var.out}= > $@; fi") - - def end_file(self): - def natural_sort_key(s, _nsre=3Dre.compile('([0-9]+)')): - return [int(text) if text.isdigit() else text.lower() - for text in _nsre.split(s)] - - self.print() - self.print('ninja-outputdirs :=3D') - for rule in self.rule_vars: - if rule =3D=3D 'phony': - continue - self.print('ninja-targets-%s :=3D %s' % (rule, ' '.join(self.r= ule_targets[rule]))) - self.print('ninja-stamp-%s :=3D %s' % (rule, ' '.join(self.sta= mp_targets[rule]))) - self.print('ninja-outputdirs +=3D $(sort $(dir ${ninja-targets= -%s}))' % rule) - self.print() - self.print('dummy :=3D $(shell mkdir -p . $(sort $(ninja-outputdir= s)))') - self.print('ninja-depfiles :=3D' + ' '.join(self.depfiles)) - self.print('ninja-rspfiles :=3D' + ' '.join(self.rspfiles)) - self.print('-include ${ninja-depfiles}') - self.print() - for targets in self.build_vars: - for name, value in self.build_vars[targets].items(): - self.print('%s: private .var.%s :=3D %s' % - (targets, name, value.replace('$', '$$'))) - self.print() - if not self.seen_default: - default_targets =3D sorted(self.all_outs - self.all_ins, key= =3Dnatural_sort_key) - self.print('ninja-default: ' + ' '.join(default_targets)) - - # This is a hack... Meson declares input meson.build files as - # phony, because Ninja does not have an equivalent of Make's - # "path/to/file:" declaration that ignores "path/to/file" even - # if it is absent. However, Makefile.ninja wants to depend on - # build.ninja, which in turn depends on these phony targets which - # would cause Makefile.ninja to be rebuilt in a loop. - phony_targets =3D sorted(self.all_phony - self.all_ins, key=3Dnatu= ral_sort_key) - self.print('.PHONY: ' + ' '.join(phony_targets)) - - def variable(self, name, value): - super().variable(name, value) - if self.scope is None: - self.global_vars[name] =3D self.expand(value) - self.print('.var.%s :=3D %s' % (name, self.global_vars[name])) - - def begin_build(self, out, iout, rule, in_, iin, orderdep): - if any(x in self.omit for x in out): - self.scope =3D Scope(self) - return - - super().begin_build(out, iout, rule, in_, iin, orderdep) - self.current_targets =3D ' '.join(self.scope.out + self.scope.iout= ).replace('$', '$$') - - def end_build(self, scope, out, iout, rule, in_, iin, orderdep): - self.rule_targets[rule] +=3D self.scope.out - self.rule_targets[rule] +=3D self.scope.iout - - self.all_outs.update(self.scope.iout) - self.all_outs.update(self.scope.out) - self.all_ins.update(self.scope.in_) - self.all_ins.update(self.scope.iin) - - targets =3D self.current_targets - self.current_targets =3D None - if rule =3D=3D 'phony': - # Phony rules treat order-only dependencies as normal deps - self.print_phony(out + iout, in_ + iin + orderdep) - return - - inputs =3D ' '.join(in_ + iin).replace('$', '$$') - orderonly =3D ' '.join(orderdep).replace('$', '$$') - - rspfile =3D scope.expand('${rspfile}') - if rspfile: - rspfile_content =3D scope.expand('${rspfile_content}') - with open(rspfile, 'w') as f: - f.write(rspfile_content) - inputs +=3D ' ' + rspfile - self.rspfiles.append(rspfile) - - restat =3D 'restat' in self.scope.build_vars or 'restat' in self.r= ule_vars[rule] - depfile =3D scope.expand('${depfile}') - build_vars =3D { - 'command': scope.expand('${command}'), - 'description': scope.expand('${description}'), - 'out': scope.expand('${out}') - } - - if restat and not depfile: - if len(out) =3D=3D 1: - stamp =3D out[0] + '.stamp' - else: - stamp =3D '%s@%s.stamp' % (rule, sha1_text(targets)[0:11]) - self.print('%s: %s; @:' % (targets, stamp)) - self.print('ifneq (%s, $(wildcard %s))' % (targets, targets)) - self.print('.PHONY: %s' % (stamp, )) - self.print('endif') - self.print('%s: %s | %s; ${ninja-command-restat}' % (stamp, in= puts, orderonly)) - self.rule_targets[rule].append(stamp) - self.stamp_targets[rule].append(stamp) - self.build_vars[stamp] =3D build_vars - else: - self.print('%s: %s | %s; ${ninja-command}' % (targets, inputs,= orderonly)) - self.build_vars[targets] =3D build_vars - if depfile: - self.depfiles.append(depfile) - - def end_rule(self, scope, name): - # Note that the generator pseudo-variable could also be attached - # to a build block rather than a rule. This is not handled here - # in order to reduce the number of "rm" invocations. However, - # "ninjatool.py -t clean" does that correctly. - target =3D 'distclean' if scope.generator else 'clean' - self.print('ninja-%s:: ; $(if $V,,@)rm -f ${ninja-stamp-%s}' % (ta= rget, name)) - if self.emit_clean: - self.print('ninja-%s:: ; $(if $V,,@)rm -rf ${ninja-targets-%s}= ' % (target, name)) - - def default(self, targets): - self.print("ninja-default: " + ' '.join(targets)) - self.seen_default =3D True - - -# ---- command line parsing ---- - -# we cannot use subparsers because tools are chosen through the "-t" -# option. - -class ToolAction(argparse.Action): - def __init__(self, option_strings, dest, choices, metavar=3D'TOOL', na= rgs=3DNone, **kwargs): - if nargs is not None: - raise ValueError("nargs not allowed") - super().__init__(option_strings, dest, required=3DTrue, choices=3D= choices, - metavar=3Dmetavar, **kwargs) - - def __call__(self, parser, namespace, value, option_string): - tool =3D self.choices[value] - setattr(namespace, self.dest, tool) - tool.ARGS.prog =3D '%s %s %s' % (parser.prog, option_string, value) - - -class ToolHelpAction(argparse.Action): - def __init__(self, option_strings, dest, nargs=3DNone, **kwargs): - if nargs is not None: - raise ValueError("nargs not allowed") - super().__init__(option_strings, dest, nargs=3D0, **kwargs) - - def __call__(self, parser, namespace, values, option_string=3DNone): - if namespace.tool: - namespace.tool.ARGS.print_help() - else: - parser.print_help() - parser.exit() - - -tools =3D { - 'test': Writer, - 'ninja2make': Ninja2Make, - 'compdb': Compdb, - 'clean': Clean, -} - -parser =3D argparse.ArgumentParser(description=3D'Process and transform bu= ild.ninja files.', - add_help=3DFalse) -parser.add_argument('-C', metavar=3D'DIR', dest=3D'dir', default=3D'.', - help=3D'change to DIR before doing anything else') -parser.add_argument('-f', metavar=3D'FILE', dest=3D'file', default=3D'buil= d.ninja', - help=3D'specify input build file [default=3Dbuild.ninj= a]') -parser.add_argument('-n', dest=3D'dry_run', action=3D'store_true', - help=3D'do not actually do anything') -parser.add_argument('-v', dest=3D'verbose', action=3D'store_true', - help=3D'be more verbose') - -parser.add_argument('-t', dest=3D'tool', choices=3Dtools, action=3DToolAct= ion, - help=3D'choose the tool to run') -parser.add_argument('-h', '--help', action=3DToolHelpAction, - help=3D'show this help message and exit') - -if len(sys.argv) >=3D 2 and sys.argv[1] =3D=3D '--version': - print('1.8') - sys.exit(0) - -args, tool_args =3D parser.parse_known_args() -args.tool.ARGS.parse_args(tool_args, args) - -os.chdir(args.dir) -with open(args.file, 'r') as f: - parser =3D NinjaParser(args.file, f) - try: - events =3D args.tool(sys.stdout, parser, args) - except InvalidArgumentError as e: - parser.error(str(e)) - parser.parse(events) diff --git a/tests/Makefile.include b/tests/Makefile.include index 4037490b69..3a0524ce74 100644 --- a/tests/Makefile.include +++ b/tests/Makefile.include @@ -140,7 +140,7 @@ QEMU_IOTESTS_HELPERS-$(CONFIG_LINUX) =3D tests/qemu-iot= ests/socket_scm_helper$(EXE check: check-block check-block: $(SRC_PATH)/tests/check-block.sh qemu-img$(EXESUF) \ qemu-io$(EXESUF) qemu-nbd$(EXESUF) $(QEMU_IOTESTS_HELPERS-y) \ - $(filter qemu-system-%, $(ninja-targets-c_LINKER) $(ninja-targets-cpp_LI= NKER)) + $(filter qemu-system-%, $(ninja-targets)) @$< endif =20 --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849146; cv=none; d=zohomail.com; s=zohoarc; b=es3hpH9cF09U0etxKezxTPTBDk43JkXTen5ZfaoydUCf+L/nHVMT+zqGgzACR/QkyUX5f2rt8sPzR29BU07Wc5RLROM65JarK8/90/Dv9Og6HniO39E6WT/FstjZJdmK6BClEdqCZT3TUddRZdxwxNPpdGMf0urJZnHtxy1BTk4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849146; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=7HRmR8DrzmfanXflfW4M/oc151NJvYgLvn5iOnqRT2Y=; b=Z/OutAZ2clJ/ULOg4Q7qQGBwepa6xiQmhdMLQx+cRwe5m+d8xnc6Au5MaTEpwF/K6XMlhtKLi5IFeraStE83cTAFevKDrtw9LSwnzdoXD/TGuvT6VEtJEb2i1q9UnojPWPDgyLd6mduEQw8kQ5b7YtqIPo1faApdzR5oTuSwRhk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849146094208.53986357086728; Fri, 16 Oct 2020 04:52:26 -0700 (PDT) Received: from localhost ([::1]:51094 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOHY-0005Wp-SN for importer@patchew.org; Fri, 16 Oct 2020 07:52:24 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34404) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODh-0000RU-8s for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:25 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:60767) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODe-0002om-Qa for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:24 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-439-YrK84pQdOcK-yrLNTOXmUw-1; Fri, 16 Oct 2020 07:48:20 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 3D98A64155; Fri, 16 Oct 2020 11:48:19 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id EB5A75C1D0; Fri, 16 Oct 2020 11:48:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848902; 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=7HRmR8DrzmfanXflfW4M/oc151NJvYgLvn5iOnqRT2Y=; b=gwFKZrXW93G959cbJCIE6+ewcBZ0xukY4y0Qr2HJ8AIg3RJXKF5J9HrLLCurQm5O7zMQ40 LpCxTlexCmMkVw11g3MTDK+yCDGDrtatvGdD+ys2o+HPiGzVNNMwmaPe7rl6SBXY/fS6kE wowSw7f2P36F08c1t4ZySrzcJ4TtfBk= X-MC-Unique: YrK84pQdOcK-yrLNTOXmUw-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 11/22] build: add --enable/--disable-libudev Date: Fri, 16 Oct 2020 07:48:03 -0400 Message-Id: <20201016114814.1564523-12-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 20:29:24 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Initially, libudev detection was bundled with --enable-mpath because qemu-pr-helper was the only user of libudev. Recently however the USB U2F emulation has also started using libudev, so add a separate option. This also allows 1) disabling libudev if desired for static builds and 2) for non-static builds, requiring libudev even if multipath support is undesirable. The multipath test is adjusted, because it is now possible to enter it with configurations that should fail, such as --static --enable-mpath --disable-libudev. Reported-by: Peter Maydell Signed-off-by: Paolo Bonzini --- configure | 8 +++++++- meson.build | 50 ++++++++++++++++++++++++++--------------------- meson_options.txt | 2 ++ 3 files changed, 37 insertions(+), 23 deletions(-) diff --git a/configure b/configure index 9317349044..c83a2eeb9d 100755 --- a/configure +++ b/configure @@ -303,6 +303,7 @@ netmap=3D"no" sdl=3D"auto" sdl_image=3D"auto" virtfs=3D"" +libudev=3D"auto" mpath=3D"auto" vnc=3D"enabled" sparse=3D"auto" @@ -1002,6 +1003,10 @@ for opt do ;; --enable-virtfs) virtfs=3D"yes" ;; + --disable-libudev) libudev=3D"disabled" + ;; + --enable-libudev) libudev=3D"enabled" + ;; --disable-mpath) mpath=3D"disabled" ;; --enable-mpath) mpath=3D"enabled" @@ -1759,6 +1764,7 @@ disabled with --disable-FEATURE, default is enabled i= f available: vnc-png PNG compression for VNC server cocoa Cocoa UI (Mac OS X only) virtfs VirtFS + libudev Use libudev to enumerate host devices mpath Multipath persistent reservation passthrough xen xen backend driver support xen-pci-passthrough PCI passthrough support for Xen @@ -7060,7 +7066,7 @@ NINJA=3D$ninja $meson setup \ -Dvnc=3D$vnc -Dvnc_sasl=3D$vnc_sasl -Dvnc_jpeg=3D$vnc_jpeg -Dvnc_p= ng=3D$vnc_png \ -Dgettext=3D$gettext -Dxkbcommon=3D$xkbcommon -Du2f=3D$u2f \ -Dcapstone=3D$capstone -Dslirp=3D$slirp -Dfdt=3D$fdt \ - -Diconv=3D$iconv -Dcurses=3D$curses \ + -Diconv=3D$iconv -Dcurses=3D$curses -Dlibudev=3D$libudev\ $cross_arg \ "$PWD" "$source_path" =20 diff --git a/meson.build b/meson.build index 2c93e22382..0c0f4f9fd8 100644 --- a/meson.build +++ b/meson.build @@ -380,10 +380,11 @@ endif libudev =3D not_found if targetos =3D=3D 'linux' and (have_system or have_tools) libudev =3D dependency('libudev', - required: get_option('mpath').enabled(), + required: get_option('libudev'), static: enable_static) endif =20 +mpathlibs =3D [libudev] mpathpersist =3D not_found mpathpersist_new_api =3D false if targetos =3D=3D 'linux' and have_tools and not get_option('mpath').disa= bled() @@ -414,35 +415,40 @@ if targetos =3D=3D 'linux' and have_tools and not get= _option('mpath').disabled() mpath_lib_init(udev); return 0; }''' - mpathlibs =3D [libudev] - if enable_static - mpathlibs +=3D cc.find_library('devmapper', - required: get_option('mpath'), - static: enable_static) - endif - mpathlibs +=3D cc.find_library('multipath', - required: get_option('mpath'), - static: enable_static) - mpathlibs +=3D cc.find_library('mpathpersist', - required: get_option('mpath'), - static: enable_static) - foreach lib: mpathlibs - if not lib.found() - mpathlibs =3D [] - break + libmpathpersist =3D cc.find_library('mpathpersist', + required: get_option('mpath'), + static: enable_static) + if libmpathpersist.found() + mpathlibs +=3D libmpathpersist + if enable_static + mpathlibs +=3D cc.find_library('devmapper', + required: get_option('mpath'), + static: enable_static) endif - endforeach - if mpathlibs.length() > 0 - if cc.links(mpath_test_source_new, dependencies: mpathlibs) + mpathlibs +=3D cc.find_library('multipath', + required: get_option('mpath'), + static: enable_static) + foreach lib: mpathlibs + if not lib.found() + mpathlibs =3D [] + break + endif + endforeach + if mpathlibs.length() =3D=3D 0 + msg =3D 'Dependencies missing for libmpathpersist' + elif cc.links(mpath_test_source_new, dependencies: mpathlibs) mpathpersist =3D declare_dependency(dependencies: mpathlibs) mpathpersist_new_api =3D true elif cc.links(mpath_test_source_old, dependencies: mpathlibs) mpathpersist =3D declare_dependency(dependencies: mpathlibs) else + msg =3D 'Cannot detect libmpathpersist API' + endif + if not mpathpersist.found() if get_option('mpath').enabled() - error('Cannot detect libmpathpersist API') + error(msg) else - warning('Cannot detect libmpathpersist API, disabling') + warning(msg + ', disabling') endif endif endif diff --git a/meson_options.txt b/meson_options.txt index e6cb1e589b..77b3fabd00 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -36,6 +36,8 @@ option('iconv', type : 'feature', value : 'auto', description: 'Font glyph conversion support') option('curses', type : 'feature', value : 'auto', description: 'curses UI') +option('libudev', type : 'feature', value : 'auto', + description: 'Use libudev to enumerate host devices') option('sdl', type : 'feature', value : 'auto', description: 'SDL user interface') option('sdl_image', type : 'feature', value : 'auto', --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602850038; cv=none; d=zohomail.com; s=zohoarc; b=YB/CQkNQoN0rpuAAN02+pK/QcH0SEoFwTUn2zpSFZZoTq8yYv7afIYDdO9HQPthTCZQGNeNucu2prfN4pysaVWPeCURT+rvTwd9cX27fHypgNhLSK5yR+mZHH555eb3BaZHOjOR1wPhl7EJ1HsUzxw1zW25PkQULxg8mnTgV5M0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602850038; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=A8StGSzSvq32/9gAol6iL6H2HpzjgTv5zAb0M+ocs8Y=; b=JVO/KazAdfwmov95/Tfey6g54wb8CJWJBUS0+EYSkaQ2sD7krGh0o5IJlEZptrmNMARytQX1mJJGcT7sB3tQlwenwu27QXId5NDdmYqHKwO7fmZ/7Iu+9MrjV1IEIMzyzxVUcV431WS/D2yXhsIT9Fb/JLzwjHHceba45cLl4Bw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602850038543127.62152125680348; Fri, 16 Oct 2020 05:07:18 -0700 (PDT) Received: from localhost ([::1]:36948 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOVx-0007BX-Ns for importer@patchew.org; Fri, 16 Oct 2020 08:07:17 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34430) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODi-0000TQ-3b for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:26 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:59283) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODg-0002p2-8e for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:25 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-262-bOMZV9m_M_KIEztx7Etdaw-1; Fri, 16 Oct 2020 07:48:20 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id B9F1E8015B1; Fri, 16 Oct 2020 11:48:19 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id 5971B5C1D0; Fri, 16 Oct 2020 11:48:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848903; 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=A8StGSzSvq32/9gAol6iL6H2HpzjgTv5zAb0M+ocs8Y=; b=R92H6XmkoCpAlG2zezLpPdW9azBTE1w9twpGsHCTfrx1pRNRH13M0SKceD+6418Z/LsaP1 beXGaODXePuo9JAg10r+syiBt2aMUvoBqY6aJq8d9kP02zMkaV+shlGsMEpcNVhrXEXZyg ZdfnFAm8Hmwzi/lYxBR1BhR3YOSuhRo= X-MC-Unique: bOMZV9m_M_KIEztx7Etdaw-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 12/22] meson.build: don't condition iconv detection on library detection Date: Fri, 16 Oct 2020 07:48:04 -0400 Message-Id: <20201016114814.1564523-13-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/16 03:57:19 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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_H5=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Yonggang Luo , Bruce Rogers Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" From: Bruce Rogers It isn't necessarily the case that use of iconv requires an additional library. For that reason we shouldn't conditionalize iconv detection on libiconv.found. Fixes: 5285e593c33 (configure: Fixes ncursesw detection under msys2/mingw b= y convert them to meson) Signed-off-by: Bruce Rogers Reviewed-by: Yonggang Luouoyonggang@gmail.com> Reviewed-by:Yonggang Luo Message-Id: <20201014221939.196958-1-brogers@suse.com> Signed-off-by: Paolo Bonzini --- meson.build | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/meson.build b/meson.build index 0c0f4f9fd8..c1c45e9845 100644 --- a/meson.build +++ b/meson.build @@ -459,15 +459,13 @@ if not get_option('iconv').disabled() libiconv =3D cc.find_library('iconv', required: false, static: enable_static) - if libiconv.found() - if cc.links(''' - #include - int main(void) { - iconv_t conv =3D iconv_open("WCHAR_T", "UCS-2"); - return conv !=3D (iconv_t) -1; - }''', dependencies: [libiconv]) - iconv =3D declare_dependency(dependencies: [libiconv]) - endif + if cc.links(''' + #include + int main(void) { + iconv_t conv =3D iconv_open("WCHAR_T", "UCS-2"); + return conv !=3D (iconv_t) -1; + }''', dependencies: [libiconv]) + iconv =3D declare_dependency(dependencies: [libiconv]) endif endif if get_option('iconv').enabled() and not iconv.found() --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849876; cv=none; d=zohomail.com; s=zohoarc; b=R1omozHzEmV6VkM68WIOgIXYFp4hc+uqM21e10oA5FZ6Vhlg1mNoOkn8UzOzTVDuZesDcdjYmfPqKBkIwoSG50bEqEuiOGV+hYT+j80tPez7eob9E2UulHjsiahxDn3NSDrVWgtoOLiraK7pB9y72nAzfdWZPY0DDUETk4YTANI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849876; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=JMj42FWSGHuJJJLkm1CZE9pM8UgSJdaDfP2mKTx9JUY=; b=huhd60/IHB5G3Akzqnrk0BSE13ReDS11wX1hFRcjsgtX8cZAR091PKKUvxac7KdSROTf/c2Kb2mNEG9hIGNtkuM/W5HJS0MZV/bh64JyUIsdzb9/cfREnAk+MpEzBBAQ6E8p6yLZZb6stsHsdBGKWj0DZHi1gb02abMrUb0ijTo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849876238330.106269278128; Fri, 16 Oct 2020 05:04:36 -0700 (PDT) Received: from localhost ([::1]:60158 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOTL-0004zB-HB for importer@patchew.org; Fri, 16 Oct 2020 08:04:35 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34420) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODh-0000Sp-Qc for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:25 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:34181) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODf-0002ow-GY for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:25 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-7-bozp9oWoOT2uzQsPa8Ityg-1; Fri, 16 Oct 2020 07:48:20 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 155DD1084C86 for ; Fri, 16 Oct 2020 11:48:20 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id D52015C1BD for ; Fri, 16 Oct 2020 11:48:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848902; 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=JMj42FWSGHuJJJLkm1CZE9pM8UgSJdaDfP2mKTx9JUY=; b=fBx8/62XSs6Gj8mH1Y08/8nmuDVlxWvMh8BQmIOaDrD1L3omjVjjMTKyNaAbM+PoD1n8xh G4WOuUnCIbZd+DevlDF7c2T6f+9xXwGP6rM/WOVwW7CjmPXlDZjwEy1eu1CW8mfYrv/tmQ sRxoJlPtcD4LVk9SN1JyJGlcml0ycuk= X-MC-Unique: bozp9oWoOT2uzQsPa8Ityg-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 13/22] meson: cleanup curses/iconv test Date: Fri, 16 Oct 2020 07:48:05 -0400 Message-Id: <20201016114814.1564523-14-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 20:29:24 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Skip the test if it is system emulation is not requested, and differentiate errors for lack of iconv and lack of curses. Signed-off-by: Paolo Bonzini --- meson.build | 85 ++++++++++++++++++++++++++++------------------------- 1 file changed, 45 insertions(+), 40 deletions(-) diff --git a/meson.build b/meson.build index c1c45e9845..15732f4701 100644 --- a/meson.build +++ b/meson.build @@ -455,40 +455,40 @@ if targetos =3D=3D 'linux' and have_tools and not get= _option('mpath').disabled() endif =20 iconv =3D not_found -if not get_option('iconv').disabled() - libiconv =3D cc.find_library('iconv', - required: false, - static: enable_static) - if cc.links(''' - #include - int main(void) { - iconv_t conv =3D iconv_open("WCHAR_T", "UCS-2"); - return conv !=3D (iconv_t) -1; - }''', dependencies: [libiconv]) - iconv =3D declare_dependency(dependencies: [libiconv]) - endif -endif -if get_option('iconv').enabled() and not iconv.found() - error('Cannot detect iconv API') -endif - curses =3D not_found -if iconv.found() and not get_option('curses').disabled() - curses_libname_list =3D ['ncursesw', 'ncurses', 'cursesw', 'pdcurses'] - curses_test =3D ''' - #include - #include - #include - int main(void) { - wchar_t wch =3D L'w'; - setlocale(LC_ALL, ""); - resize_term(0, 0); - addwstr(L"wide chars\n"); - addnwstr(&wch, 1); - add_wch(WACS_DEGREE); - return 0; - }''' - foreach curses_libname : curses_libname_list +if have_system and not get_option('curses').disabled() + if not get_option('iconv').disabled() + libiconv =3D cc.find_library('iconv', + required: false, + static: enable_static) + if cc.links(''' + #include + int main(void) { + iconv_t conv =3D iconv_open("WCHAR_T", "UCS-2"); + return conv !=3D (iconv_t) -1; + }''', dependencies: [libiconv]) + iconv =3D declare_dependency(dependencies: [libiconv]) + endif + endif + if get_option('iconv').enabled() and not iconv.found() + error('Cannot detect iconv API') + endif + if iconv.found() + curses_libname_list =3D ['ncursesw', 'ncurses', 'cursesw', 'pdcurses'] + curses_test =3D ''' + #include + #include + #include + int main(void) { + wchar_t wch =3D L'w'; + setlocale(LC_ALL, ""); + resize_term(0, 0); + addwstr(L"wide chars\n"); + addnwstr(&wch, 1); + add_wch(WACS_DEGREE); + return 0; + }''' + foreach curses_libname : curses_libname_list libcurses =3D dependency(curses_libname, required: false, method: 'pkg-config', @@ -510,13 +510,18 @@ if iconv.found() and not get_option('curses').disable= d() break endif endif - endforeach -endif -if get_option('curses').enabled() and not curses.found() - if not iconv.found() - error('Cannot detect iconv API') - else - error('Cannot detect curses API') + endforeach + endif + if not curses.found() + if iconv.found() + if get_option('curses').enabled() + error('Cannot find curses') + endif + elif get_option('curses').enabled() + error('iconv required for curses UI but not available') + else + warning('iconv required for curses UI but not available, disabling') + endif endif endif =20 --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849304; cv=none; d=zohomail.com; s=zohoarc; b=JCBnU5iC32CVABLJdKYPUhk6H0IGEAoSx0CCht+YVFng0WlRCFlcN1MqNl3r5/ye/dk5iZYHI2bwDyZELIJDw5DUqwK6x8wGKDYBCwsX+K1bgegMxUteLhZL9gqaWKOLK+3QdGrPftqqS9XhwTiWxIlZeo+EIGcQoozqkCrpACk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849304; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=6HMBx0riAr72tQL6I1l2DZUK7U9MGomxMKKF7ETEabA=; b=C/iBAkWSGQ8h60njqNe2hE7rkb6Um0e5tT5IPc/KaT/IqZNlZAYs0SKrJmaBgJ5CRfoZEhnWHHh0d+tfH13fH+vN/PqXpwwdj8cbvMdQ39hRXN5UKsynkdEsT9aJ5W5LRWMNtDbg4C0ej92Zu6xc/x+3dEAktUhefWZKmynXtnA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849304251849.1983051284824; Fri, 16 Oct 2020 04:55:04 -0700 (PDT) Received: from localhost ([::1]:59374 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOK6-0000WQ-Qc for importer@patchew.org; Fri, 16 Oct 2020 07:55:03 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34442) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODi-0000Ud-Ir for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:26 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:36995) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODg-0002pE-Ja for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:26 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-64-ElSPrWNzN9WRsZE3x62_dw-1; Fri, 16 Oct 2020 07:48:21 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 85DD28030A8; Fri, 16 Oct 2020 11:48:20 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id 310C15C1BD; Fri, 16 Oct 2020 11:48:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848903; 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=6HMBx0riAr72tQL6I1l2DZUK7U9MGomxMKKF7ETEabA=; b=G6tTYRLp/LFtKiIwoc6G6l8HX1nYMH1Mq1LcE3W6rPOuIpSx9fAKZAzyNhDfUqPL9gLwj1 FPPudfItVdRdPQwPe10V4QAz7LMHu76iwb3JoArO7I7FKxSGgxB+5xXE8u9ijW4v0ISQ0V hsm83xvz0vQ6EnR6aoO4msG3bQtlk/0= X-MC-Unique: ElSPrWNzN9WRsZE3x62_dw-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 14/22] configure: fix handling of --docdir parameter Date: Fri, 16 Oct 2020 07:48:06 -0400 Message-Id: <20201016114814.1564523-15-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/16 03:57:19 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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_H5=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Bruce Rogers Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) From: Bruce Rogers Commit ca8c0909f01 changed qemu_docdir to be docdir, then later uses the qemu_docdir name in the final assignment. Unfortunately, one instance of qemu_docdir was missed: the one which comes from the --docdir parameter. This patch restores the proper handling of the --docdir parameter. Fixes: ca8c0909f01 ("configure: build docdir like other suffixed directories") Signed-off-by: Bruce Rogers Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20201015190742.270629-1-brogers@suse.com> Signed-off-by: Paolo Bonzini --- configure | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/configure b/configure index c83a2eeb9d..3edbdd2a24 100755 --- a/configure +++ b/configure @@ -969,7 +969,7 @@ for opt do ;; --with-suffix=3D*) qemu_suffix=3D"$optarg" ;; - --docdir=3D*) qemu_docdir=3D"$optarg" + --docdir=3D*) docdir=3D"$optarg" ;; --sysconfdir=3D*) sysconfdir=3D"$optarg" ;; @@ -5776,7 +5776,6 @@ fi qemu_confdir=3D"$sysconfdir/$qemu_suffix" qemu_moddir=3D"$libdir/$qemu_suffix" qemu_datadir=3D"$datadir/$qemu_suffix" -qemu_docdir=3D"$docdir/$qemu_suffix" qemu_localedir=3D"$datadir/locale" qemu_icondir=3D"$datadir/icons" qemu_desktopdir=3D"$datadir/applications" --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849576; cv=none; d=zohomail.com; s=zohoarc; b=CajOqOyLzmhMqRWyFoBrAC/oY7sjEJFXdaQWNYL60gc1t6MJejjgN2aXA3q14tk42EWzxCtKNdVsYprJUAedALMbYVgLRHRU6GoZ6l3zpZTRD+m9YuNRvJDzsFj8IFGZ2ZpGsDadwxqgeWjtyt0G99JL6KZ3DjnLIOAyqw3jPyc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849576; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=nKtAfaOHrGDk1MezMLHy5zv8d5oc6FuHBM8jUluCp+4=; b=DM1AwidXHPwK+Xs1+39fiIzTuU21dKv2DNkYwps9lTXw0fyH/5dQwe0MLcoD85wwnZp4YuN3kuKNIfVhFvKTJDp8+EdeV3jo9yEG8tDxXdkfbPHYefjMqt0U5vSlpbEapUJ+PUjwL1n96728W57O6HZEY8k/nnJpE0bL4fOLBDA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849576315513.9419177799758; Fri, 16 Oct 2020 04:59:36 -0700 (PDT) Received: from localhost ([::1]:46586 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOOU-0007FV-Uk for importer@patchew.org; Fri, 16 Oct 2020 07:59:35 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34452) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODj-0000Vw-18 for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:27 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:35082) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODh-0002pQ-2X for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:26 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-375-9a6f4j_GNO6zLtha9CtxpQ-1; Fri, 16 Oct 2020 07:48:21 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id E3D978015FA; Fri, 16 Oct 2020 11:48:20 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id A0E985C1BD; Fri, 16 Oct 2020 11:48:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848904; 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=nKtAfaOHrGDk1MezMLHy5zv8d5oc6FuHBM8jUluCp+4=; b=er+tHCyEd+Dj7JI9Lo2Shb05EhkAiEorRaSDSR/FM2PxXeo/+xjSBMZbNMLqB0gH2Gpdvc 7bG4EEYw4zxqgworNBBihMhZl5JmTt0wY6ktOBck6EwH79/D7NrzRNsocalwqvzXV/EGuv 0LL+3zgp/HiiP8bxUBcldeceobse2fk= X-MC-Unique: 9a6f4j_GNO6zLtha9CtxpQ-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 15/22] meson: Only install icons and qemu.desktop if have_system Date: Fri, 16 Oct 2020 07:48:07 -0400 Message-Id: <20201016114814.1564523-16-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 20:29:24 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Bruce Rogers Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" From: Bruce Rogers These files are not needed for a linux-user only install. Signed-off-by: Bruce Rogers Message-Id: <20201015201840.282956-1-brogers@suse.com> Signed-off-by: Paolo Bonzini --- ui/meson.build | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/ui/meson.build b/ui/meson.build index 78ad792ffb..fb36d305ca 100644 --- a/ui/meson.build +++ b/ui/meson.build @@ -113,8 +113,11 @@ if have_system or xkbcommon.found() endif =20 subdir('shader') -subdir('icons') =20 -install_data('qemu.desktop', install_dir: config_host['qemu_desktopdir']) +if have_system + subdir('icons') + + install_data('qemu.desktop', install_dir: config_host['qemu_desktopdir']) +endif =20 modules +=3D {'ui': ui_modules} --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849454; cv=none; d=zohomail.com; s=zohoarc; b=JiZLqxmTVvrCpNJMbWDcMoXHRLM7jfQzaHOzQ9xKq4Le0YELzou3DFOOb128SS8k81v4VXd2pQZXsq4hDRHGWq0fjqCrJwjt1uEW75wWW6fDIhVapDP7oqRTvM8MR2WXtRul0Jj76gbyFvhQuzV9YMjwce3v6RRVJDuAf/sT/vU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849454; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=R9d7nggnhOKCBySbAsGTRQSXEaDv0OpKWuYrSEj57p0=; b=gsu59sNzU3I+GowbDE7ULzMkNslACfyOOUCDtdZ7YORWDywl6FTeZ37TW/OSZt6PUoQ3Sy0Dg8Ci/EJPLTHZT4i1cr1w8Qg+H6UDA7al2F30oQC1Shg/LgcdZzwXGNbN3OCm+QiR/pnr7+7QY0pC/sWineygjKA8ygHRPn7gWD4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849454545475.6899856054978; Fri, 16 Oct 2020 04:57:34 -0700 (PDT) Received: from localhost ([::1]:39886 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOMX-0004D9-4s for importer@patchew.org; Fri, 16 Oct 2020 07:57:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34458) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODj-0000XH-Dn for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:27 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:54719) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODh-0002pT-Gu for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:27 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-42-_2qRoqinPQex0imQin3F8A-1; Fri, 16 Oct 2020 07:48:22 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 4E70418A8235; Fri, 16 Oct 2020 11:48:21 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id 0B57C5C1BD; Fri, 16 Oct 2020 11:48:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848904; 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=R9d7nggnhOKCBySbAsGTRQSXEaDv0OpKWuYrSEj57p0=; b=fHDAKKb/Sa7p6vANB3z5QohC46634lUVe07CY6sEjSgtMhdYUA69FSD37QWVZtji7M0sWh Ix3Lf2rE3ipmUsHQVdswCJeJwKblommqDhCY7/SVFBSL83jKHl4AHzYHmr10s8NrYn4JkJ SZMODoqV8mn9eqVB1u4SymXMGWVjRMA= X-MC-Unique: _2qRoqinPQex0imQin3F8A-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 16/22] docs: Fix Sphinx configuration for msys2/mingw Date: Fri, 16 Oct 2020 07:48:08 -0400 Message-Id: <20201016114814.1564523-17-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/16 03:57:19 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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_H5=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Yonggang Luo Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" From: Yonggang Luo Python doesn't support running ../scripts/kernel-doc directly. Signed-off-by: Yonggang Luo Message-Id: <20201015220626.418-2-luoyonggang@gmail.com> Signed-off-by: Paolo Bonzini --- docs/conf.py | 2 +- docs/sphinx/kerneldoc.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 00e1b750e2..e584f68393 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -241,7 +241,7 @@ texinfo_documents =3D [ # We use paths starting from qemu_docdir here so that you can run # sphinx-build from anywhere and the kerneldoc extension can still # find everything. -kerneldoc_bin =3D os.path.join(qemu_docdir, '../scripts/kernel-doc') +kerneldoc_bin =3D ['perl', os.path.join(qemu_docdir, '../scripts/kernel-do= c')] kerneldoc_srctree =3D os.path.join(qemu_docdir, '..') hxtool_srctree =3D os.path.join(qemu_docdir, '..') qapidoc_srctree =3D os.path.join(qemu_docdir, '..') diff --git a/docs/sphinx/kerneldoc.py b/docs/sphinx/kerneldoc.py index 3e87940206..3ac277d162 100644 --- a/docs/sphinx/kerneldoc.py +++ b/docs/sphinx/kerneldoc.py @@ -67,7 +67,7 @@ class KernelDocDirective(Directive): =20 def run(self): env =3D self.state.document.settings.env - cmd =3D [env.config.kerneldoc_bin, '-rst', '-enable-lineno'] + cmd =3D env.config.kerneldoc_bin + ['-rst', '-enable-lineno'] =20 filename =3D env.config.kerneldoc_srctree + '/' + self.arguments[0] export_file_patterns =3D [] --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849652; cv=none; d=zohomail.com; s=zohoarc; b=iFN1KINC38Qmqg8QsMD08nbuHXERKMVXvSB5At/4qtRTQVjNUOua2A/tI9jN4eQio0Wu1AVarrZk4mf57xDnr86nNva53J48voTuA9YpL7jv9RNLu3ku4F6pbvkMwLQcV8vmnPITXO3dV35wxh3sHbQvbyXFHEBCjHFSCU37qHg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849652; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=HeipnRw+CCcUnhB5ZvcAQPoGq1FWVAmpwzkSPi3R8aY=; b=coEj3EpqFeUB0rGlzf/879nDVG+9TA+/GwmZVxUPHizC8byH9U2H7vgN3/2xuuS//2XbqhhiDzLNBHSNpiJ8CG1YvJawzJ7fbCnaXhnsm6oPQXDTLNv8R+HiCIy2+YPC+j8rpuXYnpwFf5MJS4bA2l2bWjo79UvMBaUwouIPU1c= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849652117915.9533041453965; Fri, 16 Oct 2020 05:00:52 -0700 (PDT) Received: from localhost ([::1]:48258 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOPE-00081a-Rq for importer@patchew.org; Fri, 16 Oct 2020 08:00:20 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34516) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODl-0000d6-GM for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:29 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:52998) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODj-0002pv-5Y for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:29 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-374-QfTQRPY1NrOzYkPKVSyh1w-1; Fri, 16 Oct 2020 07:48:22 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 9E5076414E for ; Fri, 16 Oct 2020 11:48:21 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id 6A8075C1BD for ; Fri, 16 Oct 2020 11:48:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848906; 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=HeipnRw+CCcUnhB5ZvcAQPoGq1FWVAmpwzkSPi3R8aY=; b=Yw+gV2tVySQPydmVggt7pWxrjWJN75rDdTqsLkGYZcaftLU4OVnXP55hg33N+PSpnrQyTg Andm98hN6gfbspvAumSwob0VMlDvnndgAqOnN6ShFazPscFDQ+adK7owqmVl9/DFeMuv2Q sp81ZpqN6MWBPfVsy9mqZru1CuHlmGo= X-MC-Unique: QfTQRPY1NrOzYkPKVSyh1w-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 17/22] meson: move SPHINX_ARGS references within "if build_docs" Date: Fri, 16 Oct 2020 07:48:09 -0400 Message-Id: <20201016114814.1564523-18-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/16 03:57:19 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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_H5=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Paolo Bonzini --- tests/qapi-schema/meson.build | 88 +++++++++++++++++------------------ 1 file changed, 44 insertions(+), 44 deletions(-) diff --git a/tests/qapi-schema/meson.build b/tests/qapi-schema/meson.build index 1f222a7a13..304ef939bd 100644 --- a/tests/qapi-schema/meson.build +++ b/tests/qapi-schema/meson.build @@ -219,53 +219,53 @@ qapi_doc =3D custom_target('QAPI doc', '-p', 'doc-good-', '@INPUT0@' ], depend_files: qapi_gen_depends) =20 -# Test the document-comment document generation code by running a test sch= ema -# file through Sphinx's plain-text builder and comparing the result against -# a golden reference. This is in theory susceptible to failures if Sphinx -# changes its output, but the text output has historically been very stable -# (no changes between Sphinx 1.6 and 3.0), so it is a better bet than -# texinfo or HTML generation, both of which have had changes. We might -# need to add more sophisticated logic here in future for some sort of -# fuzzy comparison if future Sphinx versions produce different text, -# but for now the simple comparison suffices. -qapi_doc_out =3D custom_target('QAPI rST doc', - output: ['doc-good.txt'], - input: files('doc-good.json', 'doc-good.rst'), - build_by_default: build_docs, - depend_files: sphinx_extn_depends, - # We use -E to suppress Sphinx's caching, bec= ause - # we want it to always really run the QAPI doc - # generation code. It also means we don't - # clutter up the build dir with the cache. - command: [SPHINX_ARGS, - '-b', 'text', '-E', - '-c', meson.source_root() / 'docs', - '-D', 'master_doc=3Ddoc-good', - meson.current_source_dir(), - meson.current_build_dir()]) +if build_docs + # Test the document-comment document generation code by running a test s= chema + # file through Sphinx's plain-text builder and comparing the result agai= nst + # a golden reference. This is in theory susceptible to failures if Sphinx + # changes its output, but the text output has historically been very sta= ble + # (no changes between Sphinx 1.6 and 3.0), so it is a better bet than + # texinfo or HTML generation, both of which have had changes. We might + # need to add more sophisticated logic here in future for some sort of + # fuzzy comparison if future Sphinx versions produce different text, + # but for now the simple comparison suffices. + qapi_doc_out =3D custom_target('QAPI rST doc', + output: ['doc-good.txt'], + input: files('doc-good.json', 'doc-good.rst= '), + build_by_default: true, + depend_files: sphinx_extn_depends, + # We use -E to suppress Sphinx's caching, b= ecause + # we want it to always really run the QAPI = doc + # generation code. It also means we don't + # clutter up the build dir with the cache. + command: [SPHINX_ARGS, + '-b', 'text', '-E', + '-c', meson.source_root() / 'docs= ', + '-D', 'master_doc=3Ddoc-good', + meson.current_source_dir(), + meson.current_build_dir()]) =20 -# Fix possible inconsistency in line endings in generated output and -# in the golden reference (which could otherwise cause test failures -# on Windows hosts). Unfortunately diff --strip-trailing-cr -# is GNU-diff only. The odd-looking perl is because we must avoid -# using an explicit '\' character in the command arguments to -# a custom_target(), as Meson will unhelpfully replace it with a '/' -# (https://github.com/mesonbuild/meson/issues/1564) -qapi_doc_out_nocr =3D custom_target('QAPI rST doc newline-sanitized', - output: ['doc-good.txt.nocr'], - input: qapi_doc_out[0], - build_by_default: build_docs, - command: ['perl', '-pe', '$x =3D chr 13;= s/$x$//', '@INPUT@'], - capture: true) + # Fix possible inconsistency in line endings in generated output and + # in the golden reference (which could otherwise cause test failures + # on Windows hosts). Unfortunately diff --strip-trailing-cr + # is GNU-diff only. The odd-looking perl is because we must avoid + # using an explicit '\' character in the command arguments to + # a custom_target(), as Meson will unhelpfully replace it with a '/' + # (https://github.com/mesonbuild/meson/issues/1564) + qapi_doc_out_nocr =3D custom_target('QAPI rST doc newline-sanitized', + output: ['doc-good.txt.nocr'], + input: qapi_doc_out[0], + build_by_default: true, + command: ['perl', '-pe', '$x =3D chr 1= 3; s/$x$//', '@INPUT@'], + capture: true) =20 -qapi_doc_ref_nocr =3D custom_target('QAPI rST doc reference newline-saniti= zed', - output: ['doc-good.ref.nocr'], - input: files('doc-good.txt'), - build_by_default: build_docs, - command: ['perl', '-pe', '$x =3D chr 13;= s/$x$//', '@INPUT@'], - capture: true) + qapi_doc_ref_nocr =3D custom_target('QAPI rST doc reference newline-sani= tized', + output: ['doc-good.ref.nocr'], + input: files('doc-good.txt'), + build_by_default: true, + command: ['perl', '-pe', '$x =3D chr 1= 3; s/$x$//', '@INPUT@'], + capture: true) =20 -if build_docs # "full_path()" needed here to work around # https://github.com/mesonbuild/meson/issues/7585 test('QAPI rST doc', diff, args: ['-u', qapi_doc_ref_nocr[0].full_path(), --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849599; cv=none; d=zohomail.com; s=zohoarc; b=gQx4z+oX/TSzfpIuqPlSOP1b+39Wa29HwLdnJIFbmmNRK6wvzpc5JOWkBwIcfw9rCJ6AxV6Gwlf4yYkacxE3+hsIUKuf8UxIUTIYGsUJWQRk8hZF/RP0STzmkKPnXRj/AMtr5LCAl+ObpEzbnj2tPwxDsa63Ze1wilNe04V5bpk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849599; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=YDLcRqmmja9I1U1CWg/0Flvk9BBKHARcZJCn1gbmXsQ=; b=jVcHb6Dr66fU65X3tbMBlIiZPkrtUCqEX1598FJ8GslzidX/yoag9v8XWlLHy9GB50lqwd0QBAbBIZWKqHI4IFBbZgBmDKOu6EYuCSR2d8CeBSyolJUEKvQOINUoEEjVfC6labYwJ7akUz0CCuEzL3LZcxG034TAoqyORqjMRiw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849599242643.6024915704198; Fri, 16 Oct 2020 04:59:59 -0700 (PDT) Received: from localhost ([::1]:48076 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOOr-0007ul-V1 for importer@patchew.org; Fri, 16 Oct 2020 07:59:57 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34532) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODm-0000fn-Ec for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:30 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:24746) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODj-0002q7-M8 for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:30 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-220-5syAc80zMiaclTSoRXfl8g-1; Fri, 16 Oct 2020 07:48:23 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 09FAC8018A4; Fri, 16 Oct 2020 11:48:22 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id BA1475C1BD; Fri, 16 Oct 2020 11:48:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848906; 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=YDLcRqmmja9I1U1CWg/0Flvk9BBKHARcZJCn1gbmXsQ=; b=BZbJr66xmGL2p+g1DY//hhyUPRi7eAOwtU60EazzJV+VwlHELrvpuR9IrAWdNqvRdhv0nA 41xFxZULSqpVlDDK1l5BIdLAUTfaH7LWYr/4auhx35pP4LRLuTarE33wW1aQDBI3+818Pz UJYF275+4TzKKMkW9HlbWb0ZOFsjXgo= X-MC-Unique: 5syAc80zMiaclTSoRXfl8g-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 18/22] meson: Move the detection logic for sphinx to meson Date: Fri, 16 Oct 2020 07:48:10 -0400 Message-Id: <20201016114814.1564523-19-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/16 03:57:19 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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_H5=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Yonggang Luo Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" From: Yonggang Luo Signed-off-by: Yonggang Luo Message-Id: <20201015220626.418-4-luoyonggang@gmail.com> Signed-off-by: Paolo Bonzini --- configure | 59 ++++------------------------------------------- docs/meson.build | 46 ++++++++++++++++++++++++++++++++++++ meson.build | 30 ++++++++---------------- meson_options.txt | 4 ++++ 4 files changed, 64 insertions(+), 75 deletions(-) diff --git a/configure b/configure index 3edbdd2a24..68f097861d 100755 --- a/configure +++ b/configure @@ -297,7 +297,7 @@ brlapi=3D"" curl=3D"" iconv=3D"auto" curses=3D"auto" -docs=3D"" +docs=3D"auto" fdt=3D"auto" netmap=3D"no" sdl=3D"auto" @@ -820,15 +820,6 @@ do fi done =20 -sphinx_build=3D -for binary in sphinx-build-3 sphinx-build -do - if has "$binary" - then - sphinx_build=3D$(command -v "$binary") - break - fi -done =20 # Check for ancillary tools used in testing genisoimage=3D @@ -1228,9 +1219,9 @@ for opt do ;; --disable-crypto-afalg) crypto_afalg=3D"no" ;; - --disable-docs) docs=3D"no" + --disable-docs) docs=3D"disabled" ;; - --enable-docs) docs=3D"yes" + --enable-docs) docs=3D"enabled" ;; --disable-vhost-net) vhost_net=3D"no" ;; @@ -4419,45 +4410,6 @@ if check_include linux/btrfs.h ; then btrfs=3Dyes fi =20 -# If we're making warnings fatal, apply this to Sphinx runs as well -sphinx_werror=3D"" -if test "$werror" =3D "yes"; then - sphinx_werror=3D"-W" -fi - -# Check we have a new enough version of sphinx-build -has_sphinx_build() { - # This is a bit awkward but works: create a trivial document and - # try to run it with our configuration file (which enforces a - # version requirement). This will fail if either - # sphinx-build doesn't exist at all or if it is too old. - mkdir -p "$TMPDIR1/sphinx" - touch "$TMPDIR1/sphinx/index.rst" - "$sphinx_build" $sphinx_werror -c "$source_path/docs" \ - -b html "$TMPDIR1/sphinx" \ - "$TMPDIR1/sphinx/out" >> config.log 2>&1 -} - -# Check if tools are available to build documentation. -if test "$docs" !=3D "no" ; then - if has_sphinx_build; then - sphinx_ok=3Dyes - else - sphinx_ok=3Dno - fi - if test "$sphinx_ok" =3D "yes"; then - docs=3Dyes - else - if test "$docs" =3D "yes" ; then - if has $sphinx_build && test "$sphinx_ok" !=3D "yes"; then - echo "Warning: $sphinx_build exists but it is either too old or us= es too old a Python version" >&2 - fi - feature_not_found "docs" "Install a Python 3 version of python-sphin= x" - fi - docs=3Dno - fi -fi - # Search for bswap_32 function byteswap_h=3Dno cat > $TMPC << EOF @@ -6093,9 +6045,6 @@ qemu_version=3D$(head $source_path/VERSION) echo "PKGVERSION=3D$pkgversion" >>$config_host_mak echo "SRC_PATH=3D$source_path" >> $config_host_mak echo "TARGET_DIRS=3D$target_list" >> $config_host_mak -if [ "$docs" =3D "yes" ] ; then - echo "BUILD_DOCS=3Dyes" >> $config_host_mak -fi if test "$modules" =3D "yes"; then # $shacmd can generate a hash started with digit, which the compiler doe= sn't # like as an symbol. So prefix it with an underscore @@ -6784,7 +6733,6 @@ fi echo "ROMS=3D$roms" >> $config_host_mak echo "MAKE=3D$make" >> $config_host_mak echo "PYTHON=3D$python" >> $config_host_mak -echo "SPHINX_BUILD=3D$sphinx_build" >> $config_host_mak echo "GENISOIMAGE=3D$genisoimage" >> $config_host_mak echo "MESON=3D$meson" >> $config_host_mak echo "NINJA=3D$ninja" >> $config_host_mak @@ -7066,6 +7014,7 @@ NINJA=3D$ninja $meson setup \ -Dgettext=3D$gettext -Dxkbcommon=3D$xkbcommon -Du2f=3D$u2f \ -Dcapstone=3D$capstone -Dslirp=3D$slirp -Dfdt=3D$fdt \ -Diconv=3D$iconv -Dcurses=3D$curses -Dlibudev=3D$libudev\ + -Ddocs=3D$docs -Dsphinx_build=3D$sphinx_build \ $cross_arg \ "$PWD" "$source_path" =20 diff --git a/docs/meson.build b/docs/meson.build index 0340d489ac..789dca8cc0 100644 --- a/docs/meson.build +++ b/docs/meson.build @@ -1,4 +1,50 @@ +if get_option('sphinx_build') =3D=3D '' + sphinx_build =3D find_program(['sphinx-build-3', 'sphinx-build'], + required: get_option('docs')) +else + sphinx_build =3D find_program(get_option('sphinx_build'), + required: get_option('docs')) +endif + +# Check if tools are available to build documentation. +build_docs =3D false +if sphinx_build.found() + SPHINX_ARGS =3D [sphinx_build] + # If we're making warnings fatal, apply this to Sphinx runs as well + if get_option('werror') + SPHINX_ARGS +=3D [ '-W' ] + endif + + # This is a bit awkward but works: create a trivial document and + # try to run it with our configuration file (which enforces a + # version requirement). This will fail if sphinx-build is too old. + run_command('mkdir', ['-p', tmpdir / 'sphinx']) + run_command('touch', [tmpdir / 'sphinx/index.rst']) + sphinx_build_test_out =3D run_command(SPHINX_ARGS + [ + '-c', meson.current_source_dir(), + '-b', 'html', tmpdir / 'sphinx', + tmpdir / 'sphinx/out']) + build_docs =3D (sphinx_build_test_out.returncode() =3D=3D 0) + + if not build_docs + warning('@0@ exists but it is either too old or uses too old a Python = version'.format(sphinx_build_option)) + if get_option('docs').enabled() + error('Install a Python 3 version of python-sphinx') + endif + endif +endif + if build_docs + SPHINX_ARGS +=3D ['-Dversion=3D' + meson.project_version(), '-Drelease= =3D' + config_host['PKGVERSION']] + + sphinx_extn_depends =3D [ meson.source_root() / 'docs/sphinx/depfile.py', + meson.source_root() / 'docs/sphinx/hxtool.py', + meson.source_root() / 'docs/sphinx/kerneldoc.py', + meson.source_root() / 'docs/sphinx/kernellog.py', + meson.source_root() / 'docs/sphinx/qapidoc.py', + meson.source_root() / 'docs/sphinx/qmp_lexer.py', + qapi_gen_depends ] + configure_file(output: 'index.html', input: files('index.html.in'), configuration: {'VERSION': meson.project_version()}, diff --git a/meson.build b/meson.build index 15732f4701..05fb59a00b 100644 --- a/meson.build +++ b/meson.build @@ -17,7 +17,13 @@ cc =3D meson.get_compiler('c') config_host =3D keyval.load(meson.current_build_dir() / 'config-host.mak') enable_modules =3D 'CONFIG_MODULES' in config_host enable_static =3D 'CONFIG_STATIC' in config_host -build_docs =3D 'BUILD_DOCS' in config_host + +# Temporary directory used for files created while +# configure runs. Since it is in the build directory +# we can safely blow away any previous version of it +# (and we need not jump through hoops to try to delete +# it when configure exits.) +tmpdir =3D meson.current_build_dir() / 'meson-private/temp' =20 if get_option('qemu_suffix').startswith('/') error('qemu_suffix cannot start with a /') @@ -1266,22 +1272,6 @@ foreach d : hx_headers endforeach genh +=3D hxdep =20 -SPHINX_ARGS =3D [config_host['SPHINX_BUILD'], - '-Dversion=3D' + meson.project_version(), - '-Drelease=3D' + config_host['PKGVERSION']] - -if get_option('werror') - SPHINX_ARGS +=3D [ '-W' ] -endif - -sphinx_extn_depends =3D [ meson.source_root() / 'docs/sphinx/depfile.py', - meson.source_root() / 'docs/sphinx/hxtool.py', - meson.source_root() / 'docs/sphinx/kerneldoc.py', - meson.source_root() / 'docs/sphinx/kernellog.py', - meson.source_root() / 'docs/sphinx/qapidoc.py', - meson.source_root() / 'docs/sphinx/qmp_lexer.py', - qapi_gen_depends ] - ################### # Collect sources # ################### @@ -1866,8 +1856,8 @@ endif subdir('scripts') subdir('tools') subdir('pc-bios') -subdir('tests') subdir('docs') +subdir('tests') if 'CONFIG_GTK' in config_host subdir('po') endif @@ -1949,7 +1939,7 @@ summary_info +=3D {'QEMU_CFLAGS': config_host['= QEMU_CFLAGS']} summary_info +=3D {'QEMU_LDFLAGS': config_host['QEMU_LDFLAGS']} summary_info +=3D {'make': config_host['MAKE']} summary_info +=3D {'python': '@0@ (version: @1@)'.format(python= .full_path(), python.language_version())} -summary_info +=3D {'sphinx-build': config_host['SPHINX_BUILD']} +summary_info +=3D {'sphinx-build': sphinx_build.found()} summary_info +=3D {'genisoimage': config_host['GENISOIMAGE']} # TODO: add back version summary_info +=3D {'slirp support': slirp_opt =3D=3D 'disabled' ? fals= e : slirp_opt} @@ -2017,7 +2007,7 @@ if config_host.has_key('CONFIG_XEN_BACKEND') summary_info +=3D {'xen ctrl version': config_host['CONFIG_XEN_CTRL_INT= ERFACE_VERSION']} endif summary_info +=3D {'brlapi support': config_host.has_key('CONFIG_BRLAPI= ')} -summary_info +=3D {'Documentation': config_host.has_key('BUILD_DOCS')} +summary_info +=3D {'Documentation': build_docs} summary_info +=3D {'PIE': get_option('b_pie')} summary_info +=3D {'vde support': config_host.has_key('CONFIG_VDE')} summary_info +=3D {'netmap support': config_host.has_key('CONFIG_NETMAP= ')} diff --git a/meson_options.txt b/meson_options.txt index 77b3fabd00..967229b66e 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -2,7 +2,11 @@ option('qemu_suffix', type : 'string', value: 'qemu', description: 'Suffix for QEMU data/modules/config directories (can = be empty)') option('docdir', type : 'string', value : 'doc', description: 'Base directory for documentation installation (can be= empty)') +option('sphinx_build', type : 'string', value : '', + description: 'Use specified sphinx-build [$sphinx_build] for buildi= ng document (default to be empty)') =20 +option('docs', type : 'feature', value : 'auto', + description: 'Documentations build support') option('gettext', type : 'boolean', value : true, description: 'Localization of the GTK+ user interface') option('sparse', type : 'feature', value : 'auto', --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849795; cv=none; d=zohomail.com; s=zohoarc; b=KS7Td8PajhsF+DtNAqOkC3/p2sQW37StmjDfXYigo/9Q4lh5y3VX96EykQb6tZow32NSBXLfYSgiux+BUMubfDCswOa8VgcaIInNGVeCFx1urgI9QQIiB9GRe1S/TLGdMMy9i4RFB461y95fbGgz5HfTEPngK0mEhTdWLeoLowU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849795; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=BWsA8yD3GFX0ZlGypxueWbXfCg5ZhlkQRt4O9jNGkS4=; b=fRmsk5TVKpVjO6lWhi4hjZM4yvQW0pZ4uPdDNhN6hqvXTxHdu/0ienqd0asnZwk4rOYHJ1eoDdSjswHXHrBmil06BQGaaofq/GDzpx5rv1GuYkckOqvc/ehKJ2S3VMy8GXzJMMtCnSCINhS6n67LynsxygyupslbLxJqXAifbU8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849795331904.1576693825649; Fri, 16 Oct 2020 05:03:15 -0700 (PDT) Received: from localhost ([::1]:56638 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOS2-0003Xk-En for importer@patchew.org; Fri, 16 Oct 2020 08:03:14 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34554) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODn-0000ii-Cq for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:31 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:45447) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODl-0002qZ-D8 for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:31 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-443-liZtC25sPdun2U6EEW5v2w-1; Fri, 16 Oct 2020 07:48:24 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 67E0018A8246; Fri, 16 Oct 2020 11:48:22 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id 254595C1BD; Fri, 16 Oct 2020 11:48:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848908; 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=BWsA8yD3GFX0ZlGypxueWbXfCg5ZhlkQRt4O9jNGkS4=; b=YzzIrrUPHVF9XduFe5/A2Lqs6gkNZ/4ghQABdZiovK+6NAiffZZF+7NjzGPt76dKXtj9xv Ggy/suDHA7OnTvVFMPyDhCJ21BKh3FZBKtcx8YtTPgHDg3Zzc7FZb3AhPl2Z4eeII+KE1K WUTvib3hDJodK1Vy9EOznqAD3KHqtt0= X-MC-Unique: liZtC25sPdun2U6EEW5v2w-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 19/22] cirrus: Enable doc build on msys2/mingw Date: Fri, 16 Oct 2020 07:48:11 -0400 Message-Id: <20201016114814.1564523-20-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 20:29:24 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Yonggang Luo Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" From: Yonggang Luo Currently rST depends on old version sphinx-2.x. Install it by downloading it. Remove the need of university mirror, the main repo are recovered. Signed-off-by: Yonggang Luo Message-Id: <20201015220626.418-5-luoyonggang@gmail.com> Signed-off-by: Paolo Bonzini --- .cirrus.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.cirrus.yml b/.cirrus.yml index 396888fbd3..e099da0fec 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -76,7 +76,6 @@ windows_msys2_task: ((Get-Content -path C:\tools\msys64\etc\\post-install\\07-pacman-k= ey.post -Raw) -replace '--refresh-keys', '--version') | Set-Content -Path C= :\tools\msys64\etc\\post-install\\07-pacman-key.post C:\tools\msys64\usr\bin\bash.exe -lc "sed -i 's/^CheckSpace/#Check= Space/g' /etc/pacman.conf" C:\tools\msys64\usr\bin\bash.exe -lc "export" - C:\tools\msys64\usr\bin\bash.exe -lc "grep -rl 'repo.msys2.org/' /= etc/pacman.d/mirrorlist.* | xargs sed -i 's/repo.msys2.org\//mirrors.tuna.t= singhua.edu.cn\/msys2\//g'" C:\tools\msys64\usr\bin\pacman.exe --noconfirm -Sy echo Y | C:\tools\msys64\usr\bin\pacman.exe --noconfirm -Suu --ove= rwrite=3D* taskkill /F /FI "MODULES eq msys-2.0.dll" @@ -111,6 +110,11 @@ windows_msys2_task: mingw-w64-x86_64-curl \ mingw-w64-x86_64-gnutls \ " + bitsadmin /transfer msys_download /dynamic /download /priority FOR= EGROUND ` + https://repo.msys2.org/mingw/x86_64/mingw-w64-x86_64-python-sphi= nx-2.3.1-1-any.pkg.tar.xz ` + C:\tools\mingw-w64-x86_64-python-sphinx-2.3.1-1-any.pkg.tar.xz + C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -U /c/too= ls/mingw-w64-x86_64-python-sphinx-2.3.1-1-any.pkg.tar.xz" + del C:\tools\mingw-w64-x86_64-python-sphinx-2.3.1-1-any.pkg.tar.xz C:\tools\msys64\usr\bin\bash.exe -lc "rm -rf /var/cache/pacman/pkg= /*" cd C:\tools\msys64 echo "Start archive" --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849769; cv=none; d=zohomail.com; s=zohoarc; b=bYEb25p3KpyC/0gb+/EjpIoQu+R49JIee3UCi9QopAAtK3elZbFFg48NjYMleA8KtLpAKkha4iHcEcz2Pt04jkvOSmQ76lpPv2rqBYJFQMngbSlnYG4RyXNuclcLYHSzg0cFzoK1jMfBDJ/lJGQxTjFajoOUsY/1hojjG/YMK7U= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849769; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=kxdVjF2Er60OGDzynNPANMzCS861qRa0y8atYbWDuco=; b=GaY5puhnSIJ7W7HOghA4ck8XeFVD0RjKb6Mzc63Va5z8nMkc4YTWSRrsOzegD4aOyMig3NglBKir4cxOlX1CGg1nR7ENrcd722FiWDOBuuEKn20wOXuTCoz94RfGKLgByJiQukX6C86hwigQCaM9WUnGUnQYI+nhqQEDAFu296I= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849769464712.2264371566849; Fri, 16 Oct 2020 05:02:49 -0700 (PDT) Received: from localhost ([::1]:54896 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTORc-0002om-IB for importer@patchew.org; Fri, 16 Oct 2020 08:02:48 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34542) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODm-0000hW-Vy for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:31 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:39219) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODj-0002q0-8L for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:30 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-499-JIjJhn7KOGu6JbOBtbyiVA-1; Fri, 16 Oct 2020 07:48:24 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 3ADFB805EFB; Fri, 16 Oct 2020 11:48:23 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id C3DAB76642; Fri, 16 Oct 2020 11:48:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848906; 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=kxdVjF2Er60OGDzynNPANMzCS861qRa0y8atYbWDuco=; b=MaJnGceGgsGOiotUQZhfvvlJmz5jimm3VPkiFkloAOJL+ezanexyCcc9otgAHpBLzAWRdh 8+O7kKrdvhcYBkJzvx+8JeTaZz6IT/2FSgyQP+O7/vC5oQz59WXV7Td6VcccnhLjXEuqa/ lBBqUGx8dhWxcvH/HEQkIGl9Nx1RSnE= X-MC-Unique: JIjJhn7KOGu6JbOBtbyiVA-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 20/22] fuzz: Disable QEMU's SIG{INT,HUP,TERM} handlers Date: Fri, 16 Oct 2020 07:48:12 -0400 Message-Id: <20201016114814.1564523-21-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 20:29:24 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Alexander Bulekov , Darren Kenny Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" From: Alexander Bulekov Prior to this patch, the only way I found to terminate the fuzzer was either to: 1. Explicitly specify the number of fuzzer runs with the -runs=3D flag 2. SIGKILL the process with "pkill -9 qemu-fuzz-*" or similar In addition to being annoying to deal with, SIGKILLing the process skips over any exit handlers(e.g. registered with atexit()). This is bad, since some fuzzers might create temporary files that should ideally be removed on exit using an exit handler. The only way to achieve a clean exit now is to specify -runs=3DN , but the desired "N" is tricky to identify prior to fuzzing. Why doesn't the process exit with standard SIGINT,SIGHUP,SIGTERM signals? QEMU installs its own handlers for these signals in os-posix.c:os_setup_signal_handling, which notify the main loop that an exit was requested. The fuzzer, however, does not run qemu_main_loop, which performs the main_loop_should_exit() check. This means that the fuzzer effectively ignores these signals. As we don't really care about cleanly stopping the disposable fuzzer "VM", this patch uninstalls QEMU's signal handlers. Thus, we can stop the fuzzer with SIG{INT,HUP,TERM} and the fuzzing code can optionally use atexit() to clean up temporary files/resources. Reviewed-by: Darren Kenny Signed-off-by: Alexander Bulekov Message-Id: <20201014142157.46028-1-alxndr@bu.edu> Signed-off-by: Paolo Bonzini --- tests/qtest/fuzz/fuzz.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tests/qtest/fuzz/fuzz.c b/tests/qtest/fuzz/fuzz.c index d926c490c5..eb0070437f 100644 --- a/tests/qtest/fuzz/fuzz.c +++ b/tests/qtest/fuzz/fuzz.c @@ -217,5 +217,13 @@ int LLVMFuzzerInitialize(int *argc, char ***argv, char= ***envp) /* re-enable the rcu atfork, which was previously disabled in qemu_ini= t */ rcu_enable_atfork(); =20 + /* + * Disable QEMU's signal handlers, since we manually control the main_= loop, + * and don't check for main_loop_should_exit + */ + signal(SIGINT, SIG_DFL); + signal(SIGHUP, SIG_DFL); + signal(SIGTERM, SIG_DFL); + return 0; } --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849794; cv=none; d=zohomail.com; s=zohoarc; b=Xts37sc6JxvirNOC0CWvZC1zPjj5a4/+DNn8eJu7Mg01dmmtXT9AqyMEnMbH5Tcw+vDWUEPyMa2XxjeYw9JyoWJmLeWGqTseBYI2cCfrvGZuB/5yePXmPh5kVwkLJR8H7NzCLp4J31n/Llvljji2fvo3O4SYJEAV1kD+jmYg2gA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849794; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=VsRhJjgSkAvbu9NDz8W2js4QNUt1XCZZp+fIC9MjexQ=; b=fGefbsTCz/mtiQ5MD1+lSD+hqgn0wQK/kMa6ZGf/sozJ/w/txDpqDX70909fILgoGQKdQtmS+MSgymKB7oqTz5NXbYUT+0p1ICI89aDkiBZr3tq+FeMXxEU8POpDS8KMW+IKgLMFU0sHYpuDMFHIUgi9lqlI6Y06yKRWCVqgHaQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849794477632.8740161922016; Fri, 16 Oct 2020 05:03:14 -0700 (PDT) Received: from localhost ([::1]:56580 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOS1-0003WA-Np for importer@patchew.org; Fri, 16 Oct 2020 08:03:13 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34558) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODo-0000kk-3i for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:32 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:24694) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODm-0002qq-Ap for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:31 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-239-g7YEEj9JMX2gRz536pKMxw-1; Fri, 16 Oct 2020 07:48:25 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id CCEDA800683; Fri, 16 Oct 2020 11:48:23 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id 5469B7667A; Fri, 16 Oct 2020 11:48:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848909; 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=VsRhJjgSkAvbu9NDz8W2js4QNUt1XCZZp+fIC9MjexQ=; b=i3Y44RqVhcFdKqAWyEcApi6Zok7ZaOkWvLA9oYs0OFL1A2kzclMmTPoZ9/TSO9gMqbtBy2 OqcK4USf07E0XBz3OXOKa0DktSK2U8yznHlbxzxFDMCfUy4GOp75gYdiAkcTAAaEw2CVX+ q8M74iZ9ga7zR+U4kB/KLkfYOPsRdQQ= X-MC-Unique: g7YEEj9JMX2gRz536pKMxw-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 21/22] hax: unbreak accelerator cpu code after cpus.c split Date: Fri, 16 Oct 2020 07:48:13 -0400 Message-Id: <20201016114814.1564523-22-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/15 20:29:24 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Volker=20R=C3=BCmelin?= , Claudio Fontana Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) From: Claudio Fontana during my split of cpus.c, code line "current_cpu =3D cpu" was removed by mistake, causing hax to break. This commit fixes the situation restoring it. Reported-by: Volker R=C3=BCmelin Fixes: e92558e4bf8059ce4f0b310afe218802b72766bc Signed-off-by: Claudio Fontana Message-Id: <20201016080032.13914-1-cfontana@suse.de> Signed-off-by: Paolo Bonzini --- target/i386/hax-cpus.c | 1 + 1 file changed, 1 insertion(+) diff --git a/target/i386/hax-cpus.c b/target/i386/hax-cpus.c index 99770e590c..f72c85bd49 100644 --- a/target/i386/hax-cpus.c +++ b/target/i386/hax-cpus.c @@ -38,6 +38,7 @@ static void *hax_cpu_thread_fn(void *arg) qemu_thread_get_self(cpu->thread); =20 cpu->thread_id =3D qemu_get_thread_id(); + current_cpu =3D cpu; hax_init_vcpu(cpu); cpu_thread_signal_created(cpu); qemu_guest_random_seed_thread_part2(cpu->random_seed); --=20 2.26.2 From nobody Sat Apr 20 05:06:16 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602849978; cv=none; d=zohomail.com; s=zohoarc; b=hIuDF5Vj026bW1usJMrp2/lZB7+QNLCkHpAgUXE1eXUyI9vcAmMv+TFeeF+ZyImEwjakVc0HG8qbKIlJ5rcR9EEsypZYA+CwncxuPW8ILSYs61Dhg//OrrpSm0T6QJt5/sEgBXsSa/r16MuARN72DCPCAASo6dL90JOLGjmd82c= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602849978; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=bygHJxPhLDUciaWD6smH3Pbj70hI4UPf0KTqnbMPlwE=; b=i/j5CTvRJ9RaW/BwErA+cGlvlfFMvTHMzFxlKajZ9d0TcTcOJMRKkIaUy2Jpd+sy7OA5wur2QX82fSvCZh58Sndjuzj/IueXLouEbPGHb51m/VhKV/vM+DUm6irMeJ3OJEqUleExYfLJE+qnzO1KOmVwcW3SuZgHZJGIYXFIFGQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602849978618748.2061287379031; Fri, 16 Oct 2020 05:06:18 -0700 (PDT) Received: from localhost ([::1]:35190 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kTOUz-0006MX-3E for importer@patchew.org; Fri, 16 Oct 2020 08:06:17 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34560) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kTODo-0000n4-Vq for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:33 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:57300) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kTODj-0002qD-Uf for qemu-devel@nongnu.org; Fri, 16 Oct 2020 07:48:32 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-384-t6FpiutiNTuP05vYVrHfYA-1; Fri, 16 Oct 2020 07:48:25 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 3BACB18A822B; Fri, 16 Oct 2020 11:48:24 +0000 (UTC) Received: from virtlab701.virt.lab.eng.bos.redhat.com (virtlab701.virt.lab.eng.bos.redhat.com [10.19.152.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id E791E76642; Fri, 16 Oct 2020 11:48:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602848907; 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=bygHJxPhLDUciaWD6smH3Pbj70hI4UPf0KTqnbMPlwE=; b=aJfNnpHqKu4OmzR4je15OlWh5zKxVcw21El1rYPAfchNPHyFajAG/Miml7tVxTdf+kmqaN 0N4/NHOTBFCTys9GAkqP9VqCEKy895sF9r7uyrxrbRxhVulwltt96u+pcfbwGHfNC33IaM A014sJWBAwHCUWYsObrNCrm/tM4GbiE= X-MC-Unique: t6FpiutiNTuP05vYVrHfYA-1 From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 22/22] ci: include configure and meson logs in all jobs if configure fails Date: Fri, 16 Oct 2020 07:48:14 -0400 Message-Id: <20201016114814.1564523-23-pbonzini@redhat.com> In-Reply-To: <20201016114814.1564523-1-pbonzini@redhat.com> References: <20201016114814.1564523-1-pbonzini@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/16 03:57:19 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] 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_H5=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Reviewed-by: Philippe Mathieu-Daud=C3=A9 Signed-off-by: Paolo Bonzini --- .cirrus.yml | 6 +++--- .gitlab-ci.yml | 6 +++--- .travis.yml | 8 ++++---- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index e099da0fec..81a2960b1a 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -13,7 +13,7 @@ freebsd_12_task: script: - mkdir build - cd build - - ../configure --enable-werror || { cat config.log; exit 1; } + - ../configure --enable-werror || { cat config.log meson-logs/meson-lo= g.txt; exit 1; } - gmake -j$(sysctl -n hw.ncpu) - gmake -j$(sysctl -n hw.ncpu) check V=3D1 =20 @@ -27,7 +27,7 @@ macos_task: - cd build - ../configure --python=3D/usr/local/bin/python3 --enable-werror --extra-cflags=3D'-Wno-error=3Ddeprecated-declarations' - || { cat config.log; exit 1; } + || { cat config.log meson-logs/meson-log.txt; exit 1; } - gmake -j$(sysctl -n hw.ncpu) - gmake check V=3D1 =20 @@ -41,7 +41,7 @@ macos_xcode_task: - mkdir build - cd build - ../configure --extra-cflags=3D'-Wno-error=3Ddeprecated-declarations' - --enable-werror --cc=3Dclang || { cat config.log; exit = 1; } + --enable-werror --cc=3Dclang || { cat config.log meson-= logs/meson-log.txt; exit 1; } - gmake -j$(sysctl -n hw.ncpu) - gmake check V=3D1 =20 diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8ffd415ca5..66ad7aa5c2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -32,7 +32,7 @@ include: ../configure --enable-werror $CONFIGURE_ARGS --target-list=3D"$TAR= GETS" ; else ../configure --enable-werror $CONFIGURE_ARGS ; - fi + fi || { cat config.log meson-logs/meson-log.txt && exit 1; } - make -j"$JOBS" - if test -n "$MAKE_CHECK_ARGS"; then @@ -229,7 +229,7 @@ build-tcg-disabled: script: - mkdir build - cd build - - ../configure --disable-tcg --audio-drv-list=3D"" + - ../configure --disable-tcg --audio-drv-list=3D"" || { cat config.log= meson-logs/meson-log.txt && exit 1; } - make -j"$JOBS" - make check-unit - make check-qapi-schema @@ -322,7 +322,7 @@ build-tci: - mkdir build - cd build - ../configure --enable-tcg-interpreter - --target-list=3D"$(for tg in $TARGETS; do echo -n ${tg}'-softmmu '= ; done)" + --target-list=3D"$(for tg in $TARGETS; do echo -n ${tg}'-softmmu '= ; done)" || { cat config.log meson-logs/meson-log.txt && exit 1; } - make -j"$JOBS" - make run-tcg-tests-x86_64-softmmu - make tests/qtest/boot-serial-test tests/qtest/cdrom-test tests/qtest= /pxe-test diff --git a/.travis.yml b/.travis.yml index d7bfbb8bfe..a3d78171ca 100644 --- a/.travis.yml +++ b/.travis.yml @@ -95,7 +95,7 @@ before_install: # Configure step - may be overridden before_script: - mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR} - - ${SRC_DIR}/configure ${BASE_CONFIG} ${CONFIG} || { cat config.log && e= xit 1; } + - ${SRC_DIR}/configure ${BASE_CONFIG} ${CONFIG} || { cat config.log meso= n-logs/meson-log.txt && exit 1; } =20 # Main build & test - rarely overridden - controlled by TEST_CMD script: @@ -199,7 +199,7 @@ jobs: compiler: clang before_script: - mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR} - - ${SRC_DIR}/configure ${CONFIG} --extra-cflags=3D"-fsanitize=3Dun= defined -Werror" || { cat config.log && exit 1; } + - ${SRC_DIR}/configure ${CONFIG} --extra-cflags=3D"-fsanitize=3Dun= defined -Werror" || { cat config.log meson-logs/meson-log.txt && exit 1; } =20 =20 - name: "Clang (other-softmmu)" @@ -298,7 +298,7 @@ jobs: - TEST_CMD=3D"" before_script: - mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR} - - ${SRC_DIR}/configure ${CONFIG} --extra-cflags=3D"-g3 -O0 -fsanit= ize=3Dthread" || { cat config.log && exit 1; } + - ${SRC_DIR}/configure ${CONFIG} --extra-cflags=3D"-g3 -O0 -fsanit= ize=3Dthread" || { cat config.log meson-logs/meson-log.txt && exit 1; } =20 =20 # Run check-tcg against linux-user @@ -530,7 +530,7 @@ jobs: - ls -l ${SRC_DIR}/qemu-${QEMU_VERSION}.tar.bz2 - tar -xf ${SRC_DIR}/qemu-${QEMU_VERSION}.tar.bz2 && cd qemu-${QEM= U_VERSION} - mkdir -p release-build && cd release-build - - ../configure ${BASE_CONFIG} ${CONFIG} || { cat config.log && exi= t 1; } + - ../configure ${BASE_CONFIG} ${CONFIG} || { cat config.log meson-= logs/meson-log.txt && exit 1; } - make install allow_failures: - env: UNRELIABLE=3Dtrue --=20 2.26.2