emacs-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#44374: closed ([PATCH 0/1] gnu: sdcc: Remove non-free code)


From: GNU bug Tracking System
Subject: bug#44374: closed ([PATCH 0/1] gnu: sdcc: Remove non-free code)
Date: Tue, 10 Nov 2020 21:07:01 +0000

Your message dated Tue, 10 Nov 2020 22:06:25 +0100
with message-id <87sg9gdir2.fsf@gnu.org>
and subject line Re: [bug#44374] [PATCH 0/1] gnu: sdcc: Remove non-free code
has caused the debbugs.gnu.org bug report #44374,
regarding [PATCH 0/1] gnu: sdcc: Remove non-free code
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs@gnu.org.)


-- 
44374: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=44374
GNU Bug Tracking System
Contact help-debbugs@gnu.org with problems
--- Begin Message --- Subject: [PATCH 0/1] gnu: sdcc: Remove non-free code Date: Sun, 1 Nov 2020 11:53:28 -0500
This patch updates Guix to remove non-free code bundled with SDCC, a C
compiler that targets a variety of microcontroller families.

It also adds a patch that removes from SDCC

  - The "--disable-non-free" option to its "configure" script and the related
    build logic;

  - All references to the "device/non-free" source directory and the
    corresponding "non-free" installation directory; and

  - The "--use-non-free" and "--no-warn-non-free" compiler options and
    references to them in build scripts and compiler output.

The patch furthermore updates SDCC's documentation to reflect these changes
and to remove instructions encouraging the use of non-free software.

I've tested these changes on x86-64 and AArch64 and while neither I nor the
distribution has a comprehensive test suite available, the compiler appears to
work fine on both architectures.

The non-free code in question involves the library source code and headers
specific to a number of PIC microcontroller models. This code was generated
from files distributed by Microchip, the current owner of the PIC design, with
the requirement they be used only with "authentic" PIC-compatible devices from
Microchip themselves. This violates freedom 0[0], and not only are the files
themselves non-free, any software built with SDCC that links against the
resulting libraries is necessarily non-free as well.

Regarding my changes to the documentation, as I feel these may warrant
additional scrutiny:

Most of my changes are to the SDCC manual (which is in doc/sdccman.lyx and can
be viewed with LyX, i.e. "guix install lyx") and are only to remove references
to the now-absent "non-free" directories and related compiler
options. However, I have also replaced text in sections 1.2, 4.5.5 and 4.6.7
that explained how to find and use the non-free code with a notice that it has
been removed. (Search for "guix" to find these sections quickly.)

I've also added a statement to the "Acknowledgements" section at the end that
the manual has been modified from the original.

Section 4.6.10, "Adding New Devices to the Port", is tricky: Some of the
information it contains would be useful to a developer working to replace the
non-free code with a free alternative; on the other hand, it's clear the
intent of the section as written is to help people bring even more non-free
code into SDCC. Probably the section should be replaced with something
different but without knowing what the correct instructions would be, I have
simply removed it altogether for now.

SDCC's statements regarding licenses (in section 1.2 of the manual, in
doc/README.txt and in support/cinc2h.pl) consistently give instructions on
using the non-free code and in each case I have replaced this with a notice
saying the code has been removed. I assume this is of no legal significance
but thought I would point it out just in case.

Any and all feedback welcome.

[0] https://www.gnu.org/philosophy/free-sw.html

--
Simon South
simon@simonsouth.net


Simon South (1):
  gnu: sdcc: Remove non-free code.

 gnu/local.mk                                  |    1 +
 .../patches/sdcc-disable-non-free-code.patch  | 3643 +++++++++++++++++
 gnu/packages/sdcc.scm                         |   10 +-
 3 files changed, 3653 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/sdcc-disable-non-free-code.patch

-- 
2.28.0




--- End Message ---
--- Begin Message --- Subject: Re: [bug#44374] [PATCH 0/1] gnu: sdcc: Remove non-free code Date: Tue, 10 Nov 2020 22:06:25 +0100
Simon South <simon@simonsouth.net> writes:

> This patch updates Guix to remove non-free code bundled with SDCC, a C
> compiler that targets a variety of microcontroller families.

Oh my, does this mean we have been shipping non-free code all this time?

I have mixed feelings about the 3643-line patch.  On the one hand it is
great to adjust the documentation to match, OTOH it looks non-trivial to
maintain.  It also takes a good second place in the "longest patch
contest".

However since you already did the work, and this is a rather serious
issue, I went along and committed the patch.  Thank you very much!

As you've been delivering a steady stream of high-quality patches I
assume you'll be around for a while to maintain it.  :-)

Attachment: signature.asc
Description: PGP signature


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]