[PATCH] Fix copyright year
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Mon Oct 14 20:16:40 CEST 2024
On Mon, Oct 14, 2024 at 02:33:13PM +0200, Quentin Schulz wrote:
> Hi Kieran,
>
> On 10/10/24 10:51 AM, Kieran Bingham wrote:
> > Quoting libcamerabmw+ml at lsmod.de (2024-10-10 08:54:13)
> >> From: "Bernhard M. Wiedemann" <bwiedemann at suse.de>
> >>
> >> without this patch, openSUSE's debugsource package would vary over time,
> >> breaking reproducible builds.
> >> Also a copyright of 2025 is factually wrong,
> >> because nobody did anything copyright-worthy in that year.
> >
> > Agreed, I'm still working on my time machine, but it's not ready yet.
> >
> > But I think that must be an issue on your side, or am I mistaken. Is
> > there a reference to 2025 within the libcamera code base?
> >
> >> If updating the year manually is too hard (it is optional anyway),
> >> using the mtime of input file(s) could work as well.
> >>
> >> The diff was:
> >> /usr/src/debug/libcamera-0.3.1/x86_64-suse-linux/include/libcamera/internal/tracepoints.h 2024-08-20 09:37:46.000000000 +0200
> >> @@ -1,6 +1,6 @@
> >> /* SPDX-License-Identifier: LGPL-2.1-or-later */
> >> /*
> >> - * Copyright (C) 2024, Google Inc.
> >> + * Copyright (C) 2025, Google Inc.
> >
> > This file is autogenerated right? So this 2025 isn't an issue in our
> > commited code - but a build server with the wrong date at Suse?
> >
> >>
> >> Signed-off-by: Bernhard M. Wiedemann <bwiedemann at suse.de>
> >> ---
> >> utils/codegen/gen-tp-header.py | 3 +--
> >> 1 file changed, 1 insertion(+), 2 deletions(-)
> >>
> >> diff --git a/utils/codegen/gen-tp-header.py b/utils/codegen/gen-tp-header.py
> >> index 83606c32..0a3fa644 100755
> >> --- a/utils/codegen/gen-tp-header.py
> >> +++ b/utils/codegen/gen-tp-header.py
> >> @@ -6,7 +6,6 @@
> >> #
> >> # Generate header file to contain lttng tracepoints
> >>
> >> -import datetime
> >> import jinja2
> >> import pathlib
> >> import os
> >> @@ -20,7 +19,7 @@ def main(argv):
> >> output = argv[2]
> >> template = argv[3]
> >>
> >> - year = datetime.datetime.now().year
> >> + year = 2024
> >
> > I would rather not hardcode this, as that then becomes the same as we
> > may as well just remove it if it's worthless (except, I don't know what
> > the legal issues are for removing a copyright statement so ... I'm not
> > going there).
> >
> > If we set it from an mtime which is a good idea, it would probably be
> > best to do so from the top level meson.build, as that's one file that
> > can be guaranteed to be the same 'year' as the release. (because I
> > modify that file to make the release).
> >
> > Otherwise, you'd have to parse all of the input files and take the
> > latest mtime. That could be a good option too. In fact that might be
> > easier as you have a list of those files, while you don't have a
> > reference to the meson.build...
>
> I think it's best practice to default to the content of
> SOURCE_DATE_EPOCH environment variable if it exists, otherwise use of
> now() would be fine I guess. I believe U-Boot, Buildroot and Yocto do
> make use of that setting?
>
> c.f. https://reproducible-builds.org/docs/source-date-epoch/
Another (and simpler) option would be to set the copyright year in
tracepoints.h.in. That file contains the only copyrightable contents,
the rest is generated from .tp files that I don't believe meet the bar
for copyright protection.
--
Regards,
Laurent Pinchart
More information about the libcamera-devel
mailing list