aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tromey@adacore.com>2022-02-14 08:26:32 -0700
committerTom Tromey <tromey@adacore.com>2022-03-02 09:11:30 -0700
commita8ab094a329bd2d212f17485b24ad84fa409b546 (patch)
treef7f19c91cb4cbb0a8c46bf403b86850bd489cbe9
parentaca6e93ecf8d628bcdc52130d8d5417954b0f1cb (diff)
downloadgdb-a8ab094a329bd2d212f17485b24ad84fa409b546.zip
gdb-a8ab094a329bd2d212f17485b24ad84fa409b546.tar.gz
gdb-a8ab094a329bd2d212f17485b24ad84fa409b546.tar.bz2
Move copyright code from gdbarch.py to new file
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.
-rw-r--r--gdb/copyright.py1
-rw-r--r--gdb/gdbarch-gen.h4
-rw-r--r--gdb/gdbarch.c4
-rwxr-xr-xgdb/gdbarch.py29
-rw-r--r--gdb/gdbcopyright.py52
5 files changed, 62 insertions, 28 deletions
diff --git a/gdb/copyright.py b/gdb/copyright.py
index 8ae9fff..48192e8 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 d9d81b7..b7beb73 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 3f7a1e3..55dd602 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 9b538a7..3bd6400 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 0000000..9526eac
--- /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}
+*/
+"""