sim: nltvals: switch output mode to a directory
authorMike Frysinger <vapier@gentoo.org>
Wed, 7 Jul 2021 01:18:58 +0000 (21:18 -0400)
committerMike Frysinger <vapier@gentoo.org>
Fri, 20 Aug 2021 01:05:28 +0000 (21:05 -0400)
In preparation for this script generating more files, change the output
argument to specify a directory.  This drops the stdout behavior, but
since no one really runs this tool directly, it's not a big deal.

sim/Makefile.am
sim/Makefile.in
sim/common/gennltvals.py

index 24d07c84988a34978de88dcb9344def64ad558f5..8f53aa80da75b94f2cbb6b1e5639f638f8940a8f 100644 (file)
@@ -55,8 +55,7 @@ SIM_ALL_RECURSIVE_DEPS =
 # An alternative is to slurp in the tables at runtime.
 .PHONY: nltvals
 nltvals:
-       $(abs_srcdir)/common/gennltvals.py --cpp "$(CPP)" --output nltvals.def --srcroot $(srcroot)
-       $(SHELL) $(srcroot)/move-if-change nltvals.def $(abs_srcdir)/common/nltvals.def
+       $(srcdir)/common/gennltvals.py --cpp "$(CPP)"
 
 pkginclude_HEADERS = \
        $(srcroot)/include/sim/callback.h \
index bc5c27679a521e42f0ac80cc998862859210b0c4..7644a43c0ac122032c746fcbefa344482e5f1406 100644 (file)
@@ -1747,8 +1747,7 @@ uninstall-am: uninstall-pkgincludeHEADERS
 # An alternative is to slurp in the tables at runtime.
 .PHONY: nltvals
 nltvals:
-       $(abs_srcdir)/common/gennltvals.py --cpp "$(CPP)" --output nltvals.def --srcroot $(srcroot)
-       $(SHELL) $(srcroot)/move-if-change nltvals.def $(abs_srcdir)/common/nltvals.def
+       $(srcdir)/common/gennltvals.py --cpp "$(CPP)"
 
 common/version.c: common/version.c-stamp ; @true
 common/version.c-stamp: $(srcroot)/gdb/version.in $(srcroot)/bfd/version.h $(srcdir)/common/create-version.sh
index b3e558d580a91c56c1bd2a3791b9152ea78afd82..db3ff641d402419b1613fd481914d2bc41d17c99 100755 (executable)
@@ -160,7 +160,7 @@ def get_parser() -> argparse.ArgumentParser:
         formatter_class=argparse.RawDescriptionHelpFormatter)
     parser.add_argument(
         '-o', '--output', type=Path,
-        help='write to the specified file instead of stdout')
+        help='write to the specified directory')
     parser.add_argument(
         '--cpp', type=str, default='cpp',
         help='the preprocessor to use')
@@ -178,8 +178,14 @@ def parse_args(argv: List[str]) -> argparse.Namespace:
     parser = get_parser()
     opts = parser.parse_args(argv)
 
+    if opts.output is None:
+        # Default to where the script lives.
+        opts.output = Path(__file__).resolve().parent
+
     if opts.srcroot is None:
         opts.srcroot = Path(__file__).resolve().parent.parent.parent
+    else:
+        opts.srcroot = opts.srcroot.resolve()
 
     if opts.newlib is None:
         # Try to find newlib relative to our source tree.
@@ -202,10 +208,7 @@ def main(argv: List[str]) -> int:
     """The main entry point for scripts."""
     opts = parse_args(argv)
 
-    if opts.output is not None:
-        output = open(opts.output, 'w', encoding='utf-8')
-    else:
-        output = sys.stdout
+    output = (opts.output / 'nltvals.def').open('w', encoding='utf-8')
 
     gen(output, opts.newlib, opts.cpp)
     return 0