diff mbox series

[bug#44557] gnu: Add gputils.

Message ID bxJ4DPtJrTnD8NTQWweobLco6VaTctkVeogiP1O-yfOXEwEGTnOwfVvyD0WMcDDxWUWaY_Z45_-HjX40CGXgx_bTHFXfg7n3knC-0Y1KrTk=@elenq.tech
State Accepted
Headers show
Series [bug#44557] gnu: Add gputils. | expand

Checks

Context Check Description
cbaines/submitting builds success
cbaines/issue success View issue
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch fail View Laminar job

Commit Message

Ekaitz Zarraga Nov. 10, 2020, 8:23 p.m. UTC
Hi all,

I packaged GPUtils (patch below) but I'm not sure about how to separate the
documentation (a large folder full of htmls) to a "doc" output, like other
packages have. I tried setting --htmldir configure-flag but it didn't change
anything, I also considered moving the docs to the "doc" output by hand in
an extra phase but I don't know if it's the best thing to do.
Ideas?

Thanks!

From 6baa681504c18d9768142937a1d014e59366bee3 Mon Sep 17 00:00:00 2001
From: Ekaitz Zarraga <ekaitz@elenq.tech>
Date: Tue, 10 Nov 2020 20:30:14 +0100
Subject: [PATCH] gnu: Add gputils.

    * gnu/packages/electronics.scm (gputils): New variable.
---
 gnu/packages/electronics.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

--
2.28.0

Comments

Simon South Nov. 10, 2020, 11:04 p.m. UTC | #1
Ekaitz Zarraga <ekaitz@elenq.tech> writes:
> I packaged GPUtils...

I hate to jump in here with bad news, but I didn't expect anyone would
package gputils before I got around to sharing this:

While gputils itself is free software, I suspect some of the header
files contained in its distribution may not be, which makes the
licensing status of the project as a whole somewhat dubious. (This is
similar to the problem that affects SDCC[0].) I think gputils should be
reviewed carefully before the decision is made to include it in Guix.

As evidence, I submit the following:

- The "*.inc" files in gputils' "header" subfolder that are intended for
  use with PIC devices carry a copyright notice from Microchip[1], the
  current owner of the PIC design, but I have found no mention of any
  special terms for the files' distribution, nor any notice that they
  too have been released under the terms of the GPL.

- SDCC, a free C compiler for microcontrollers, distributes header files
  of its own that are also derived from files originally provided by
  Microchip. When they approached the company[2] in 2010 to verify they
  had permission to distribute their derivative versions under the GPL,
  Microchip responded[3] to say the files could be distributed but with
  the requirement they be used only with "authentic" PIC-compatible
  controllers produced by Microchip themselves. This violates freedom
  0[4], making the files non-free and (worse) any software compiled with
  SDCC that relies on these files non-free as well.

  Consequently, the SDCC project moved these files to a "non-free"
  section of their source tree and added build and run-time options to
  control their use.

Now here's where things get a little murky:

- The Microchip-copyrighted files from which the SDCC project derives
  their non-free header files are... the same Microchip-copyrighted
  files gputils provides in its "header" folder. This is clear from the
  SDCC manual[5] in section 4.7.10, "Adding New Devices to the Port",
  which gives instructions on converting gputils' supposedly free
  "*.inc" files into "non-free" header files for use with SDCC.

How is it, then, that these files can be distributed freely under the
GPL with gputils, while files produced from them cannot be freely
distributed with SDCC? I suspect the answer is that _neither_ project
has permission to distribute these files under a free license, and in
the case of gputils, no one has raised the question yet.

Obviously I feel we _should_ raise the question before deciding to
include gputils as a package in Guix. Unfortunately, it is looking to me
as though there may not be a place for PIC-compatible controllers,
Microchip-branded or otherwise, in the free-software world.

[0] https://issues.guix.gnu.org/44374
[1] See e.g.
    https://sourceforge.net/p/gputils/code/HEAD/tree/trunk/gputils/header/p10f200.inc
[2] https://sourceforge.net/p/sdcc/mailman/sdcc-devel/thread/4C508624.8000308%40siol.net/#msg25835011
[3] https://sourceforge.net/p/sdcc/mailman/sdcc-devel/thread/1DB7F50D3A07E6439E44C13B1A4470520D09F306%40CHN-CL-MAIL01.mchp-main.com/
[4] https://www.gnu.org/philosophy/free-sw.html
[5] http://sdcc.sourceforge.net/doc/sdccman.pdf
Ekaitz Zarraga Nov. 11, 2020, 11:28 a.m. UTC | #2
‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On Wednesday, November 11, 2020 12:04 AM, Simon South <simon@simonsouth.net> wrote:

> Ekaitz Zarraga ekaitz@elenq.tech writes:
>
> > I packaged GPUtils...
>
> I hate to jump in here with bad news, but I didn't expect anyone would
> package gputils before I got around to sharing this:
>
> While gputils itself is free software, I suspect some of the header
> files contained in its distribution may not be, which makes the
> licensing status of the project as a whole somewhat dubious. (This is
> similar to the problem that affects SDCC[0].) I think gputils should be
> reviewed carefully before the decision is made to include it in Guix.


Hi,

Thanks for the email.
I'll forward this discussion to the GPUtils team and ask them about
the header files. There might be a way to separate them from the project.

Thanks for the detailed answer.

Best,
Ekaitz
Ludovic Courtès Nov. 29, 2020, 10:36 p.m. UTC | #3
Egun on,

Ekaitz Zarraga <ekaitz@elenq.tech> skribis:

> I'll forward this discussion to the GPUtils team and ask them about
> the header files. There might be a way to separate them from the project.

Did you get feedback from them?

What Simon describes looks like a showstopper.  :-/

Thanks,
Ludo’.
Maxim Cournoyer June 14, 2021, 2:44 a.m. UTC | #4
Hello,

Ludovic Courtès <ludo@gnu.org> writes:

> Egun on,
>
> Ekaitz Zarraga <ekaitz@elenq.tech> skribis:
>
>> I'll forward this discussion to the GPUtils team and ask them about
>> the header files. There might be a way to separate them from the project.
>
> Did you get feedback from them?
>
> What Simon describes looks like a showstopper.  :-/
>
> Thanks,
> Ludo’.

Looking at the project trackers [0] and mailing list [1], I don't see
traces of such discussion.  Could you please provide a link so that we
can follow any resolution?

Thank you!

Maxim

[0]  https://sourceforge.net/p/gputils/_list/tickets
[1]  https://sourceforge.net/p/gputils/mailman/gputils-devel/
Ekaitz Zarraga June 14, 2021, 8:08 a.m. UTC | #5
On Monday, June 14th, 2021 at 4:44 AM, Maxim Cournoyer <maxim.cournoyer@gmail.com> wrote:

> Hello,
>
> Ludovic Courtès ludo@gnu.org writes:
>
> > Egun on,
> >
> > Ekaitz Zarraga ekaitz@elenq.tech skribis:
> >
> > > I'll forward this discussion to the GPUtils team and ask them about
> > >
> > > the header files. There might be a way to separate them from the project.
> >
> > Did you get feedback from them?
> >
> > What Simon describes looks like a showstopper. :-/
> >
> > Thanks,
> >
> > Ludo’.
>
> Looking at the project trackers [0] and mailing list [1], I don't see
>
> traces of such discussion. Could you please provide a link so that we
>
> can follow any resolution?
>
> Thank you!
>
> Maxim
>
> [0] https://sourceforge.net/p/gputils/_list/tickets
>
> [1] https://sourceforge.net/p/gputils/mailman/gputils-devel/

IIRC I sent them an email but never got answers.

You can close the issue and discard the patch.

Best,
Ekaitz
Maxim Cournoyer June 25, 2021, 4:04 a.m. UTC | #6
Hello,

Ekaitz Zarraga <ekaitz@elenq.tech> writes:

[...]

>> Looking at the project trackers [0] and mailing list [1], I don't see
>>
>> traces of such discussion. Could you please provide a link so that we
>>
>> can follow any resolution?
>>
>> Thank you!
>>
>> Maxim
>>
>> [0] https://sourceforge.net/p/gputils/_list/tickets
>>
>> [1] https://sourceforge.net/p/gputils/mailman/gputils-devel/
>
> IIRC I sent them an email but never got answers.
>
> You can close the issue and discard the patch.

I've opened a ticket with the gputils project so that this hopefully
gets some attention [0].  When it gets resolved, we can revisit this
submission again.

[0]  https://sourceforge.net/p/gputils/bugs/317/

Thank you,

Maxim
diff mbox series

Patch

diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm
index d21ec61039..2b5fd25a15 100644
--- a/gnu/packages/electronics.scm
+++ b/gnu/packages/electronics.scm
@@ -276,3 +276,23 @@  format support.")
     (description "PulseView is a Qt based logic analyzer, oscilloscope and MSO GUI
 for sigrok.")
     (license license:gpl3+)))
+
+
+(define-public gputils
+  (package
+    (name "gputils")
+    (version "1.5.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                     "mirror://sourceforge/gputils/gputils/"
+                     version "/gputils-" version ".tar.bz2"))
+              (sha256
+                (base32
+                  "1xfvmvb6zyzs5bqycbvmc6hyl2vp2pv22aaq5974vip4rriklhf7"))))
+    (build-system gnu-build-system)
+    (home-page "https://gputils.sourceforge.io/")
+    (synopsis "GNU PIC Utilities")
+    (description "GPUTILS is a collection of tools for the Microchip (TM) PIC
+microcontrollers.  It includes gpasm, gplink, and gplib.")
+    (license license:gpl2+)))