From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,MSGID_FROM_MTA_HEADER,SPF_HELO_NONE,SPF_PASS, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0004DC433F5 for ; Wed, 8 Sep 2021 11:38:32 +0000 (UTC) Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 4E7AB610C8 for ; Wed, 8 Sep 2021 11:38:32 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 4E7AB610C8 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=sancloud.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lists.denx.de Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 18557832F0; Wed, 8 Sep 2021 13:38:23 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=sancloud.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; unprotected) header.d=sancloud.onmicrosoft.com header.i=@sancloud.onmicrosoft.com header.b="Lym/UCf/"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 2EBD482C47; Wed, 8 Sep 2021 13:38:19 +0200 (CEST) Received: from GBR01-CWL-obe.outbound.protection.outlook.com (mail-cwlgbr01on072c.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe14::72c]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id A0B3E82C47 for ; Wed, 8 Sep 2021 13:38:10 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=sancloud.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=paul.barker@sancloud.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jfiR7c8ALmQucQy327PaO1BFErVCZrmwxxQfp5oxsKST2Iw4UagyUuUw5ndt3iukfhyW7+ctUsKZyFYcwwarB3qqlGbxms8Gd5Xif2j9qGrIOMB3Tad3IXnRUcE7dSlEeI6Or+E+ucfeoKg0mdK48unwiBab1P71npXqUUX3z3ERS7uzd3n9lKdAPrlFnJhRjVBMHb3NYETwHPZKb9VnoBfYjujjdlFQ7xMDvpSuAKHRUJ7VxOSwMK0iG6anetfIZusQa0ST+UHfhxyog0k3D6UALcr9T92ZRmaGQEdN+gSxk3EqyX+fOxIYm1lonZFllOrh7ddM/+bONoFF+Rl4Vg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=xBVh0Bek02QANt528xgVtKOSHAieCALKzProabYuxaY=; b=c1iVgFb4UJPrjd6os2fIj5JVmDxP0C4E37chYRf2HybWiaSmurBXvT3iI1yS+Va1aCbaaYbi5VjjD7NLI9C81qv5fpFQHXC6Ae9efmgZAokLX689cq/JhqP+KtLyTzdr5mILhHTvsZGA22/WoWYR1S9KS4aaq5yDzV1oU+l2Qj1m/ZCJTDJDGNK4DyZ37AikuUyGj7FpKCqx1vHGv2VbskmbnyovtfnelUsVESsoyfXIazchrzrIR73nwMTPo37X35VwvUGR+D1c9l01B/kqnRtlY6qULBgRvxTrLoSeXzMe+MrjEZyKEFrxJxurO0oVCMACc53DVyp2d3gO6X7LsQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=sancloud.com; dmarc=pass action=none header.from=sancloud.com; dkim=pass header.d=sancloud.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sancloud.onmicrosoft.com; s=selector2-sancloud-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xBVh0Bek02QANt528xgVtKOSHAieCALKzProabYuxaY=; b=Lym/UCf/NarTii1YHwJ+WQUb+tXSJnsq1rGiupm7HoUq1o7rC1mG9xUPH/bkHEJEiE9AmLGW35WFxnPx6YKOnn0ab5iqyosRL0kIAYT/8oVlhjqNhpH+x4NWMcSRuWpbFujWwBoNg2Pq5qGx8dHL7QfjFGix/XYbJx0QRj00R7U= Authentication-Results: chromium.org; dkim=none (message not signed) header.d=none;chromium.org; dmarc=none action=none header.from=sancloud.com; Received: from CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM (2603:10a6:401:61::19) by CWXP123MB3045.GBRP123.PROD.OUTLOOK.COM (2603:10a6:400:42::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4478.22; Wed, 8 Sep 2021 11:38:09 +0000 Received: from CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM ([fe80::d45d:1046:b6e9:de6e]) by CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM ([fe80::d45d:1046:b6e9:de6e%7]) with mapi id 15.20.4500.015; Wed, 8 Sep 2021 11:38:09 +0000 From: Paul Barker To: Simon Glass , Tom Rini , u-boot@lists.denx.de Cc: Paul Barker Subject: [PATCH v4 1/2] tools: Refactor full help printing Date: Wed, 8 Sep 2021 12:38:01 +0100 Message-Id: <20210908113802.5252-2-paul.barker@sancloud.com> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20210908113802.5252-1-paul.barker@sancloud.com> References: <20210908113802.5252-1-paul.barker@sancloud.com> Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: LO2P265CA0495.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:13a::20) To CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM (2603:10a6:401:61::19) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from badger.mshome.net (80.7.160.81) by LO2P265CA0495.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:13a::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4478.20 via Frontend Transport; Wed, 8 Sep 2021 11:38:09 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: df40a0f3-66fa-47da-21b9-08d972bd221a X-MS-TrafficTypeDiagnostic: CWXP123MB3045: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8273; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: YtMZ28Zg9UGMexozbJh26R+fiKrUq5F0l8lDRkR1N7qNM+jpyEqZ9lVdmfWXy+32E8qTp3YYcUlhGE3FrbH4ZtMRx2+irJmfwNHQ3TInxUbAPeVG8FPAyaSZHDjC+61GaG1j5qgCGc93NcF04eKxyVRIUNzz+Bj3Zf4T9JYjfpTJvegh4lHZP1vvPYvAzGF2xrcXoLiK8K/nghMw6w3vqpxmi6ozSC5BOqXwR7M3a8zD2JpCPYKWw0vyMd+15vYz/A8DL1vc6t5K2xBaDTNx7Jp7AOgHquALA4NRNEleJVxdS+3K4Ap69gvPm5ajrPekMuojLiiusOcob3oPmFNtt2R57C/D0/gf4A+5OlSbbKUQPEjCy3L9U5WJBCmJvX7+052R4xWTcX09eE4sedn1W/R9KU65Ue0z6Uo6K24n8m/lrdceJh7KpLRDLwKSHvZ5Fo043ASGNBUItoDjUYcVv0Tctue3Y/R/MdWgS/j2fbex4BEnNQG+KseO6VNDYgLgWl5VeUlL2bHKrA2h37i9by/qnA1gewczdhcsrI+4H71iOfQLzNhmaRRv4istKR4YGQEW1yHOzziNHM4mWG3p4A+K+HfwxbvXDDdaoUWSIPtSw//S97ZpQntCm1iJhl/2k1kZfPUqbRFIFkSpGGhZQN04McYC0UjlKbgGXTd/AqF+qtKdd4/9nmfXwVEGl18zADZ6+61qchv5QeyWvwMXpg== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(366004)(39830400003)(346002)(136003)(376002)(396003)(1076003)(2616005)(956004)(186003)(2906002)(83380400001)(508600001)(4326008)(6506007)(6486002)(110136005)(52116002)(6666004)(8676002)(6512007)(8936002)(316002)(38350700002)(38100700002)(26005)(36756003)(66946007)(66556008)(66476007)(107886003)(5660300002)(44832011)(86362001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?3tOGoc8QlOj5qRPUDaYNshXRhXBWiwNRVfNeQVa1fywp7tdr9QPiYF3V++J5?= =?us-ascii?Q?HgHDhB3f9epQi2i70dC2N66+bwrn1VOonLjkVDK2A4ZL3yu/JPesWkFav0iI?= =?us-ascii?Q?+8zOQsa5QKqnfiCQ2I9kzIQt4Gamk4VqwDvedqpcdUngLxKBlcCtTtW2OK42?= =?us-ascii?Q?A7175y9Hx2UrNv2nkSdGsotmDpP6q4PO3zShSyadxVG2ELaCUyhVRTgAcC+k?= =?us-ascii?Q?dJ2M4IraS6Joi42ZNzVNgYOwQNCXgAUm9GtCSyFXqP84XigWMZjb39iRA84M?= =?us-ascii?Q?IwIPbodz+jxvAZSxvNJuFj6Tg80ynA7JLkFey3Yhq40SrbrCYtPwJzkzUPAy?= =?us-ascii?Q?YT+hw6r7HbeBgJaPSQtJYKcSTCt8/D7QgAfpC5AHxNjNcnhEb4jnFJ6Y6kcO?= =?us-ascii?Q?4eTXnC2EoOABUYO3xuuj0z6ZQPDjTaxnZeJpfv2UcmjkkewhIxgC26FNYrDM?= =?us-ascii?Q?ApmH1KjEzD2B5wEjywHy5mEICpulDWZiaMN/IqTV3t7RtqZn2S2jAc/3UFCb?= =?us-ascii?Q?vQvoZ0zTXpeGvwbKAUJqhPB3z5P6F+6N4GkKW9W9hehANGcpX4ZV2/ay0gPy?= =?us-ascii?Q?Fpqz9ni8o6dlnps7fH9cInWdaZB2OxsQT5nEIaruUi8bBpr+7npbLSF5S2zs?= =?us-ascii?Q?EfYUFHnuZKVNqr+12hj7m/p9pKjSaUaDBSoARuVIGIs6H8EXzYXDwjH5SsDI?= =?us-ascii?Q?JsVDrdWo1UKkwdBrgcys8UL0iIn5vovBjNDjIAQ8CBOnfjksjs0sm9KfqFf7?= =?us-ascii?Q?BTVV6+H3X5DLwDu94fFR7NuCFYQXGLbnru2YDyuJ9AK5lSLXWAavbQ2bq99K?= =?us-ascii?Q?ZbKlPB8mNx0vVvDQ9UDd883d+Fzx45iVc1/l6CEUjkrpObkroEdahKtyTmQi?= =?us-ascii?Q?+pHSDJDqs3deMsZqa3Sp+xLehw7gjgpLF7Y/QK1LTJNa8oZ1zTPShCxwymZb?= =?us-ascii?Q?cTAs+4h2cLv9dgX2NN7Xw4wf5HJA+9pzu4Y/AblcXkEr7zX8ZoUySewjreY/?= =?us-ascii?Q?ebORuIZmpg8/6Da15l6ksrRIzozwOCCru+OTEAR6g3fZr8NABwxSsAyOF63T?= =?us-ascii?Q?1Phw90gAdVKL2xZL52pFzfeDxxM3IzxS9vgXFxrglLu1ROIdSe/3Pzw4ozxI?= =?us-ascii?Q?83SkEsFdzs/yCFrcHJp1KOvHhNpPXV/8+es/xyyIG+EYnCx/m6Wnf1yXf6hB?= =?us-ascii?Q?OPNSisO9rt60zwAg6AoCp8qDD0AVVNyc9tDTSZB6poosS68L9DaVF2dKCHO9?= =?us-ascii?Q?yEQv9BNGWkHvBULocNfOHWNSiHBpwKN51qly6SjTHTL/oeyOFruWMyyNET0m?= =?us-ascii?Q?Y50GKMOdXHa6rhPG5k4ynmnB?= X-OriginatorOrg: sancloud.com X-MS-Exchange-CrossTenant-Network-Message-Id: df40a0f3-66fa-47da-21b9-08d972bd221a X-MS-Exchange-CrossTenant-AuthSource: CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Sep 2021 11:38:09.7438 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 840be37c-244a-450e-9bcc-2064862de1f4 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: F9XxUR6iGHjEhL3eAzUJeGU1xijfb2qpxRMMoSV/tQX6WClhVkHcC+2PAop9hfWMVQ8Vrz9wB6p9gDUewaETup1AsMInOWHo1J1wp/Isr4s= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CWXP123MB3045 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.2 at phobos.denx.de X-Virus-Status: Clean Collect the code for printing the full help message of patman, buildman and binman into a single function in patman.tools. Signed-off-by: Paul Barker --- tools/binman/control.py | 9 +++------ tools/buildman/control.py | 10 ++++------ tools/patman/main.py | 12 ++++-------- tools/patman/tools.py | 13 +++++++++++++ 4 files changed, 24 insertions(+), 20 deletions(-) diff --git a/tools/binman/control.py b/tools/binman/control.py index dcba02ff7f8a..0dbcbc28e991 100644 --- a/tools/binman/control.py +++ b/tools/binman/control.py @@ -565,12 +565,9 @@ def Binman(args): global state if args.full_help: - pager = os.getenv('PAGER') - if not pager: - pager = 'more' - fname = os.path.join(os.path.dirname(os.path.realpath(sys.argv[0])), - 'README.rst') - command.Run(pager, fname) + tools.PrintFullHelp( + os.path.join(os.path.dirname(os.path.realpath(sys.argv[0])), 'README.rst') + ) return 0 # Put these here so that we can import this module without libfdt diff --git a/tools/buildman/control.py b/tools/buildman/control.py index a98d1b4c06f3..fd9664c85d88 100644 --- a/tools/buildman/control.py +++ b/tools/buildman/control.py @@ -16,6 +16,7 @@ from patman import command from patman import gitutil from patman import patchstream from patman import terminal +from patman import tools from patman.terminal import Print def GetPlural(count): @@ -133,12 +134,9 @@ def DoBuildman(options, args, toolchains=None, make_func=None, boards=None, global builder if options.full_help: - pager = os.getenv('PAGER') - if not pager: - pager = 'more' - fname = os.path.join(os.path.dirname(os.path.realpath(sys.argv[0])), - 'README') - command.Run(pager, fname) + tools.PrintFullHelp( + os.path.join(os.path.dirname(os.path.realpath(sys.argv[0])), 'README') + ) return 0 gitutil.Setup() diff --git a/tools/patman/main.py b/tools/patman/main.py index 04e37a593139..e5be28e3316c 100755 --- a/tools/patman/main.py +++ b/tools/patman/main.py @@ -28,6 +28,7 @@ from patman import settings from patman import terminal from patman import test_util from patman import test_checkpatch +from patman import tools epilog = '''Create patches from commits in a branch, check them and email them as specified by tags you place in the commits. Use -n to do a dry run first.''' @@ -170,14 +171,9 @@ elif args.cmd == 'send': fd.close() elif args.full_help: - pager = os.getenv('PAGER') - if not pager: - pager = shutil.which('less') - if not pager: - pager = 'more' - fname = os.path.join(os.path.dirname(os.path.realpath(sys.argv[0])), - 'README') - command.Run(pager, fname) + tools.PrintFullHelp( + os.path.join(os.path.dirname(os.path.realpath(sys.argv[0])), 'README') + ) else: # If we are not processing tags, no need to warning about bad ones diff --git a/tools/patman/tools.py b/tools/patman/tools.py index 877e37cd8da1..96882264a2f9 100644 --- a/tools/patman/tools.py +++ b/tools/patman/tools.py @@ -581,3 +581,16 @@ def ToHexSize(val): hex value of size, or 'None' if the value is None """ return 'None' if val is None else '%#x' % len(val) + +def PrintFullHelp(fname): + """Print the full help message for a tool using an appropriate pager. + + Args: + fname: Path to a file containing the full help message + """ + pager = os.getenv('PAGER') + if not pager: + pager = shutil.which('less') + if not pager: + pager = 'more' + command.Run(pager, fname) -- 2.33.0