diff options
| author | Florian Fischer <florian.fl.fischer@fau.de> | 2019-08-30 13:57:05 +0200 |
|---|---|---|
| committer | Florian Fischer <florian.fl.fischer@fau.de> | 2019-08-30 13:57:05 +0200 |
| commit | 52c50b7299efb2050794ac589902af325156f7c3 (patch) | |
| tree | 2b4bc8f30c8fed814b3483fb6c6ebf24bb2f246a | |
| parent | bd05bc364bdab25b2f55dd5b5831e9f13cc16aea (diff) | |
| download | allocbench-52c50b7299efb2050794ac589902af325156f7c3.tar.gz allocbench-52c50b7299efb2050794ac589902af325156f7c3.zip | |
add --version flag to executables
| -rwxr-xr-x | bench.py | 6 | ||||
| -rwxr-xr-x | merge.py | 6 | ||||
| -rw-r--r-- | src/util.py | 23 | ||||
| -rwxr-xr-x | summarize.py | 6 |
4 files changed, 38 insertions, 3 deletions
@@ -36,7 +36,7 @@ import src.globalvars from src.util import find_cmd from src.util import print_status, print_warn, print_error from src.util import print_info, print_info2, print_debug -from src.util import print_license_and_exit +from src.util import print_license_and_exit, print_version_and_exit def epilog(): @@ -83,11 +83,15 @@ def main(): default=["all"]) parser.add_argument("-rd", "--resultdir", help="directory where all results go", type=str) parser.add_argument("--license", help="print license info and exit", action='store_true') + parser.add_argument("--version", help="print version info and exit", action='store_true') args = parser.parse_args() if args.license: print_license_and_exit() + if args.version: + print_version_and_exit() + atexit.register(epilog) # Set global verbosity @@ -24,17 +24,21 @@ import os import pickle import sys -from src.util import print_license_and_exit +from src.util import print_license_and_exit, print_version_and_exit def main(): if "--license" in sys.argv: print_license_and_exit() + if "--version" in sys.argv: + print_version_and_exit() + parser = argparse.ArgumentParser(description="Merge to allocbench results") parser.add_argument("src", help="results which should be merged into dest", type=str) parser.add_argument("dest", help="results in which src should be merged", type=str) parser.add_argument("--license", help="print license info and exit", action='store_true') + parser.add_argument("--version", help="print version info and exit", action='store_true') parser.add_argument("-b", "--benchmarks", help="benchmarks to summarize", nargs='+') parser.add_argument("-x", "--exclude-benchmarks", help="benchmarks to exclude", nargs='+') diff --git a/src/util.py b/src/util.py index 9941d6f..6ec984a 100644 --- a/src/util.py +++ b/src/util.py @@ -145,3 +145,26 @@ def print_license_and_exit(): print("Copyright (C) 2018-2019 Florian Fischer") print("License GPLv3: GNU GPL version 3 <http://gnu.org/licenses/gpl.html>") exit(0) + + +def print_version_and_exit(): + """Print current commit info before exit""" + proc = subprocess.run(["git", "rev-parse", "HEAD"], + universal_newlines=True, stdout=subprocess.PIPE) + + if proc.returncode != 0: + print_error("git rev-parse failed") + exit(1) + commit = proc.stdout[:-1] + + proc = subprocess.run(["git", "status", "--porcelain"], + universal_newlines=True, stdout=subprocess.PIPE) + + if proc.returncode != 0: + print_error("git status --porcelain failed") + exit(1) + + dirty = "-dirty" if proc.stdout != "" else "" + + print(f"{commit}{dirty}") + exit(0) diff --git a/summarize.py b/summarize.py index e467648..0d12512 100755 --- a/summarize.py +++ b/summarize.py @@ -27,7 +27,7 @@ import sys import src.globalvars from src.util import print_status, print_debug, print_error -from src.util import print_license_and_exit +from src.util import print_license_and_exit, print_version_and_exit def specific_summary(bench, sum_dir, allocators): @@ -94,9 +94,13 @@ def main(): if "--license" in sys.argv: print_license_and_exit() + if "--version" in sys.argv: + print_version_and_exit() + parser = argparse.ArgumentParser(description="Summarize allocbench results in allocator sets") parser.add_argument("results", help="path to results", type=str) parser.add_argument("--license", help="print license info and exit", action='store_true') + parser.add_argument("--versiob", help="print version info and exit", action='store_true') parser.add_argument("-b", "--benchmarks", help="benchmarks to summarize", nargs='+') parser.add_argument("-x", "--exclude-benchmarks", help="benchmarks to exclude", nargs='+') |
