From nobody Sun May 5 03:07:47 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=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1685575541; cv=none; d=zohomail.com; s=zohoarc; b=i+SZSzO5isq+h+aLdlfsPQFSkt2/FHSrMQ1j+MxlHWTQ8XsTbr2kZxHPz50emt+2Oad5JZZ6PU1NR3zmoI0jGJixTFhg5D5/x6QXlO9WZRTQQXGzCoSoZ18bBEN8zVcGS+A8ozusJEv+CDQHCeXHxigDHVrnkS7lS25tajcwZlE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1685575541; h=Content-Transfer-Encoding:Cc:Date:From:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:To; bh=HK9K9jzzWlfIFdB7uwHlISI/daPJAK4dkCrRI+Fx+Fo=; b=cT1+wHNWlIRQd7qvwREf+D77vErx7t2Qd/IMQ/B9hQe6nrz+duLSOwTZh+pxMP/w5xCEOadDZ1lqA8jilAUK4KmeBCDe/fOUdQ2gkwN1RlA2IOsB86QYgCgpXIqLkOexHkpyaelpGNexpLy8+BdkNZ1stYU6WgDVUdLicF6GSjY= 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) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1685575541576862.20675373295; Wed, 31 May 2023 16:25:41 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q4VBt-0005or-L1; Wed, 31 May 2023 19:25:17 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1q4VBr-0005ob-8y for qemu-devel@nongnu.org; Wed, 31 May 2023 19:25:15 -0400 Received: from mail-qv1-xf32.google.com ([2607:f8b0:4864:20::f32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q4VBp-0008QN-4h for qemu-devel@nongnu.org; Wed, 31 May 2023 19:25:15 -0400 Received: by mail-qv1-xf32.google.com with SMTP id 6a1803df08f44-626149fbc8eso3535356d6.3 for ; Wed, 31 May 2023 16:25:12 -0700 (PDT) Received: from stoup.. ([2602:ae:1598:4c01:3019:d9fa:8bb1:50d7]) by smtp.gmail.com with ESMTPSA id x19-20020aa784d3000000b0063b6451cd01sm3788360pfn.121.2023.05.31.16.25.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 31 May 2023 16:25:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1685575512; x=1688167512; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=HK9K9jzzWlfIFdB7uwHlISI/daPJAK4dkCrRI+Fx+Fo=; b=RH1b012fi3japYXU+BEbGrFtloSDD+Ou5sib3p/v1MKgNuH2Hr5E8AFU3s1irRwRcY RwfC7ARbAiWHkXfzoOQLi2x3V6sNGYDES8BIwi8zKNp68Hpi5bNjS9WotnZnafulyNgm KQaOzZhHGpvp98YoVDkPlLP0EXeLBAI6rKUh3Y7b1Urn2F9zH1ELGdVZ5iKXvb028Mbo 0VM9Yrx0BwBAxrBBpzwnvuvdCSE4yAlXTLO00R6LhBXKjrvhAvFXavfYYYYhPoSvb4rR kfu18xWVepmkHWE7WHQ4lxAvygMxqBSwK0sAFEXhgy4qwB9D2g4gkMwzgAd0QkRUl0h5 ZomA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685575512; x=1688167512; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=HK9K9jzzWlfIFdB7uwHlISI/daPJAK4dkCrRI+Fx+Fo=; b=Yeg6Z5s4I1yuz7cGdpShSEDT5HrffZattFKJqQeqt4mCUaibS3X52pY4MZiya7DZJT Hx8uWDgD0FB2MiKvw3DGdQmNQ4NwFwNF4+S+JRk+KTEIxOQXsWXyldtdElM1wCMN3ZOm dxeMytHXaWM6nyVHiSO8TsJTKegx6Y9Ovy7kQRToRzritlJnYKTcZRbbtGDHAFUF7i6C ecmSiL1Ftj45nTgoBUU+jYPoTEVB4Xe9Mh2metMPfT22DI2Fp8Kf/lIdToq3mUlnI5x2 Dxv9iRoW6a9a98tcnK7rJ66nZ62l3flxgmAxCZX973zVo1UuVdQB8yZcfqBK2+GpBZcI CbOQ== X-Gm-Message-State: AC+VfDwin3oxOzSdkGSAbXSxPpZJp3TCOFrJ31xz6AUzrZPy9KKELrcl BK13yuODg0N3Vuta/w6OGNoHfDJZsqgyjoj9Nuk= X-Google-Smtp-Source: ACHHUZ6/QEKlRY5DVJGS59pjMFEMbfn6N3hqrDIxNP3mpFS8h3RGUUW8u2ZCHzR4qgZ4K6JQLo29Ow== X-Received: by 2002:a05:6214:21a6:b0:625:aa49:9ab5 with SMTP id t6-20020a05621421a600b00625aa499ab5mr8135862qvc.57.1685575511760; Wed, 31 May 2023 16:25:11 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: Thomas Huth Subject: [PATCH] decodetree: Add --output-null for meson testing Date: Wed, 31 May 2023 16:25:10 -0700 Message-Id: <20230531232510.66985-1-richard.henderson@linaro.org> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 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=2607:f8b0:4864:20::f32; envelope-from=richard.henderson@linaro.org; helo=mail-qv1-xf32.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1685575542978100003 Content-Type: text/plain; charset="utf-8" Using "-o /dev/null" fails on Windows. Rather that working around this in meson, add a separate command-line option so that we can use python's os.devnull. Reported-by: Thomas Huth Fixes: 656666dc7d1b ("tests/decode: Convert tests to meson") Signed-off-by: Richard Henderson Reviewed-by: Thomas Huth --- scripts/decodetree.py | 18 ++++++++++-------- tests/decode/meson.build | 4 ++-- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/scripts/decodetree.py b/scripts/decodetree.py index 13db585d04..a8a6cb69cd 100644 --- a/scripts/decodetree.py +++ b/scripts/decodetree.py @@ -42,6 +42,7 @@ input_file =3D '' output_file =3D None output_fd =3D None +output_null =3D False insntype =3D 'uint32_t' decode_function =3D 'decode' =20 @@ -145,12 +146,7 @@ def error_with_file(file, lineno, *args): =20 if output_file and output_fd: output_fd.close() - # Do not try to remove e.g. -o /dev/null - if not output_file.startswith("/dev"): - try: - os.remove(output_file) - except PermissionError: - pass + os.remove(output_file) exit(0 if testforerror else 1) # end error_with_file =20 @@ -1501,6 +1497,7 @@ def main(): global translate_prefix global output_fd global output_file + global output_null global input_file global insnwidth global insntype @@ -1514,7 +1511,8 @@ def main(): decode_scope =3D 'static ' =20 long_opts =3D ['decode=3D', 'translate=3D', 'output=3D', 'insnwidth=3D= ', - 'static-decode=3D', 'varinsnwidth=3D', 'test-for-error'] + 'static-decode=3D', 'varinsnwidth=3D', 'test-for-error', + 'output-null'] try: (opts, args) =3D getopt.gnu_getopt(sys.argv[1:], 'o:vw:', long_opt= s) except getopt.GetoptError as err: @@ -1545,6 +1543,8 @@ def main(): error(0, 'cannot handle insns of width', insnwidth) elif o =3D=3D '--test-for-error': testforerror =3D True + elif o =3D=3D '--output-null': + output_null =3D True else: assert False, 'unhandled option' =20 @@ -1574,7 +1574,9 @@ def main(): stree =3D build_size_tree(toppat.pats, 8, 0, 0) prop_size(stree) =20 - if output_file: + if output_null: + output_fd =3D open(os.devnull, 'wt', encoding=3D'utf-8', errors=3D= "ignore") + elif output_file: output_fd =3D open(output_file, 'wt', encoding=3D'utf-8') else: output_fd =3D io.TextIOWrapper(sys.stdout.buffer, diff --git a/tests/decode/meson.build b/tests/decode/meson.build index 38a0629d67..b13fada980 100644 --- a/tests/decode/meson.build +++ b/tests/decode/meson.build @@ -53,12 +53,12 @@ decodetree =3D find_program(meson.project_source_root()= / 'scripts/decodetree.py') =20 foreach t: err_tests test(fs.replace_suffix(t, ''), - decodetree, args: ['-o', '/dev/null', '--test-for-error', files(t= )], + decodetree, args: ['--output-null', '--test-for-error', files(t)], suite: suite) endforeach =20 foreach t: succ_tests test(fs.replace_suffix(t, ''), - decodetree, args: ['-o', '/dev/null', files(t)], + decodetree, args: ['--output-null', files(t)], suite: suite) endforeach --=20 2.34.1