From: Tom Tromey <tromey@adacore.com>
To: gdb-patches@sourceware.org
Cc: Tom Tromey <tromey@adacore.com>
Subject: [PATCH 1/2] Move copyright code from gdbarch.py to new file
Date: Mon, 14 Feb 2022 12:28:51 -0700 [thread overview]
Message-ID: <20220214192852.3637933-2-tromey@adacore.com> (raw)
In-Reply-To: <20220214192852.3637933-1-tromey@adacore.com>
This moves the copyright code from gdbarch.py to a new Python source
file, gdbcopyright.py. The function in this file will find the
copyright dates by scanning the calling script. This will be reused
in a future patch.
This involved minor changes to the output of gdbarch.py. Also, I've
updated copyright.py to remove the reference to gdbarch.sh. We don't
need to mention gdbarch.py there, either.
---
gdb/copyright.py | 1 -
gdb/gdbarch-gen.h | 4 +++-
gdb/gdbarch.c | 4 +++-
gdb/gdbarch.py | 29 ++++---------------------
gdb/gdbcopyright.py | 52 +++++++++++++++++++++++++++++++++++++++++++++
5 files changed, 62 insertions(+), 28 deletions(-)
create mode 100644 gdb/gdbcopyright.py
diff --git a/gdb/copyright.py b/gdb/copyright.py
index 8ae9ffff65b..48192e80560 100644
--- a/gdb/copyright.py
+++ b/gdb/copyright.py
@@ -245,7 +245,6 @@ BY_HAND = (
MULTIPLE_COPYRIGHT_HEADERS = (
"gdb/doc/gdb.texinfo",
"gdb/doc/refcard.tex",
- "gdb/gdbarch.sh",
"gdb/syscalls/update-netbsd.sh",
)
diff --git a/gdb/gdbarch-gen.h b/gdb/gdbarch-gen.h
index d9d81b7d386..b7beb73d36d 100644
--- a/gdb/gdbarch-gen.h
+++ b/gdb/gdbarch-gen.h
@@ -20,7 +20,9 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
-/* This file was created with the aid of ``gdbarch.py''. */
+/* To regenerate this file, run:
+ ./gdbarch.py
+*/
diff --git a/gdb/gdbarch.c b/gdb/gdbarch.c
index 3f7a1e35789..55dd602b27f 100644
--- a/gdb/gdbarch.c
+++ b/gdb/gdbarch.c
@@ -20,7 +20,9 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
-/* This file was created with the aid of ``gdbarch.py''. */
+/* To regenerate this file, run:
+ ./gdbarch.py
+*/
/* Maintain the struct gdbarch object. */
diff --git a/gdb/gdbarch.py b/gdb/gdbarch.py
index 9b538a7d5c6..3bd6400355e 100755
--- a/gdb/gdbarch.py
+++ b/gdb/gdbarch.py
@@ -20,11 +20,11 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import textwrap
+import gdbcopyright
# All the components created in gdbarch-components.py.
components = []
-
def join_type_and_name(t, n):
"Combine the type T and the name N into a C declaration."
if t.endswith("*") or t.endswith("&"):
@@ -161,30 +161,9 @@ class Method(Function):
with open("gdbarch-components.py") as fd:
exec(fd.read())
-copyright = """/* *INDENT-OFF* */ /* THIS FILE IS GENERATED -*- buffer-read-only: t -*- */
-/* vi:set ro: */
-
-/* Dynamic architecture support for GDB, the GNU debugger.
-
- Copyright (C) 1998-2022 Free Software Foundation, Inc.
-
- This file is part of GDB.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>. */
-
-/* This file was created with the aid of ``gdbarch.py''. */
-"""
+copyright = gdbcopyright.copyright(
+ "gdbarch.py", "Dynamic architecture support for GDB, the GNU debugger."
+)
def info(c):
diff --git a/gdb/gdbcopyright.py b/gdb/gdbcopyright.py
new file mode 100644
index 00000000000..9526eac4e20
--- /dev/null
+++ b/gdb/gdbcopyright.py
@@ -0,0 +1,52 @@
+# Copyright constant for Python code to use.
+#
+# Copyright (C) 2022 Free Software Foundation, Inc.
+#
+# This file is part of GDB.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+def copyright(tool, description):
+ # Search the tool source itself for the correct copyright years.
+ with open(tool, 'r') as f:
+ for line in f:
+ if line.startswith('# Copyright (C) '):
+ dateline = line[1:].strip()
+ break
+ return f"""/* *INDENT-OFF* */ /* THIS FILE IS GENERATED -*- buffer-read-only: t -*- */
+/* vi:set ro: */
+
+/* {description}
+
+ {dateline}
+
+ This file is part of GDB.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+/* To regenerate this file, run:
+ ./{tool}
+*/
+"""
--
2.31.1
next prev parent reply other threads:[~2022-02-14 19:28 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-02-14 19:28 [PATCH 0/2] Rewrite make-target-delegates in Python Tom Tromey
2022-02-14 19:28 ` Tom Tromey [this message]
2022-02-14 19:28 ` [PATCH 2/2] " Tom Tromey
2022-03-02 16:19 ` Pedro Alves
2022-03-02 16:10 ` [PATCH 0/2] " Tom Tromey
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220214192852.3637933-2-tromey@adacore.com \
--to=tromey@adacore.com \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).