From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) by sourceware.org (Postfix) with ESMTP id 630283858427 for ; Sat, 1 Jan 2022 18:15:01 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 630283858427 Received: by smtp.gentoo.org (Postfix, from userid 559) id A5A7D343050; Sat, 1 Jan 2022 18:15:00 +0000 (UTC) From: Mike Frysinger To: gdb-patches@sourceware.org Subject: [PATCH] gdb: make copyright.py interface a bit nicer Date: Sat, 1 Jan 2022 13:14:56 -0500 Message-Id: <20220101181456.25684-1-vapier@gentoo.org> X-Mailer: git-send-email 2.33.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-11.6 required=5.0 tests=BAYES_00, GIT_PATCH_0, KAM_DMARC_STATUS, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Jan 2022 18:15:02 -0000 This way people can run `./copyright.py --help` and get some info as to what this does without it going and modifying the tree. --- gdb/copyright.py | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) mode change 100644 => 100755 gdb/copyright.py diff --git a/gdb/copyright.py b/gdb/copyright.py old mode 100644 new mode 100755 index 0de15b8a3053..a78f7f2aa9b0 --- a/gdb/copyright.py +++ b/gdb/copyright.py @@ -22,7 +22,7 @@ This script updates the list of years in the copyright notices in most files maintained by the GDB project. -Usage: cd src/gdb && python copyright.py +Usage: cd src/gdb && ./copyright.py Always review the output of this script before committing it! A useful command to review the output is: @@ -30,12 +30,14 @@ A useful command to review the output is: This removes the bulk of the changes which are most likely to be correct. """ +import argparse import datetime import locale import os import os.path import subprocess import sys +from typing import List, Optional def get_update_list(): @@ -158,16 +160,25 @@ def may_have_copyright_notice(filename): return False -def main(): +def get_parser() -> argparse.ArgumentParser: + """Get a command line parser.""" + parser = argparse.ArgumentParser( + description=__doc__, formatter_class=argparse.RawDescriptionHelpFormatter + ) + return parser + + +def main(argv: List[str]) -> Optional[int]: """The main subprogram.""" + parser = get_parser() + _ = parser.parse_args(argv) root_dir = os.path.dirname(os.getcwd()) os.chdir(root_dir) if not ( os.path.isdir("gdb") and os.path.isfile("gnulib/import/extra/update-copyright") ): - print("Error: This script must be called from the gdb directory.") - sys.exit(1) + sys.exit("Error: This script must be called from the gdb directory.") update_list = get_update_list() update_files(update_list) @@ -416,4 +427,4 @@ NOT_FSF_LIST = ( ) if __name__ == "__main__": - main() + sys.exit(main(sys.argv[1:])) -- 2.33.0