From 95997d27106daf91336847f50efaaa32279b7fc7 Mon Sep 17 00:00:00 2001 From: saturneric Date: Mon, 16 Oct 2023 17:54:05 +0800 Subject: fix: check and update copyright at files --- scripts/copyright_checking.py | 76 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 scripts/copyright_checking.py (limited to 'scripts/copyright_checking.py') diff --git a/scripts/copyright_checking.py b/scripts/copyright_checking.py new file mode 100644 index 00000000..06e19742 --- /dev/null +++ b/scripts/copyright_checking.py @@ -0,0 +1,76 @@ +import os + +# copyright text for source files +copyright_text_source = """/** + * Copyright (C) 2021 Saturneric + * + * This file is part of GpgFrontend. + * + * GpgFrontend 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. + * + * GpgFrontend 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 GpgFrontend. If not, see . + * + * The initial version of the source code is inherited from + * the gpg4usb project, which is under GPL-3.0-or-later. + * + * All the source code of GpgFrontend was modified and released by + * Saturneric starting on May 12, 2021. + * + * SPDX-License-Identifier: GPL-3.0-or-later + * + */""" + + # copyright text for script files +copyright_text_script = """# Copyright (C) 2021 Saturneric +# +# This file is part of GpgFrontend. +# +# GpgFrontend 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. +# +# GpgFrontend 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 GpgFrontend. If not, see . +# +# The initial version of the source code is inherited from +# the gpg4usb project, which is under GPL-3.0-or-later. +# +# All the source code of GpgFrontend was modified and released by +# Saturneric starting on May 12, 2021. +# +# SPDX-License-Identifier: GPL-3.0-or-later +""" + +def check_copright_by_path(path, copyright_text, suffix): + for root, dirs, files in os.walk(path): + for file in files: + if file.endswith(suffix): + file_path = os.path.join(root, file) + + with open(file_path, 'r', encoding='utf-8') as f: + content = f.read() + + if copyright_text not in content: + print(f"copyright declaration missing: {file_path}") + +check_copright_by_path("src", copyright_text_source, ('.c', '.cpp', '.h', '.hpp')) +check_copright_by_path("test", copyright_text_source, ('.c', '.cpp', '.h', '.hpp')) + +check_copright_by_path("src", copyright_text_script, ('.txt')) +check_copright_by_path("src", copyright_text_script, ('.txt')) +print("check done") \ No newline at end of file -- cgit v1.2.3