From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id yGtSEGbpnl/1bwAA0tVLHw (envelope-from ) for ; Sun, 01 Nov 2020 16:59:18 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id sNIbDGbpnl+CIgAAB5/wlQ (envelope-from ) for ; Sun, 01 Nov 2020 16:59:18 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 9746F9404C9 for ; Sun, 1 Nov 2020 16:59:17 +0000 (UTC) Received: from localhost ([::1]:34928 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kZGhH-0005VR-US for larch@yhetil.org; Sun, 01 Nov 2020 11:59:16 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:44984) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kZGh4-0005Ts-Qz for guix-patches@gnu.org; Sun, 01 Nov 2020 11:59:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:55030) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kZGh4-0000wT-H9 for guix-patches@gnu.org; Sun, 01 Nov 2020 11:59:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kZGh4-00021k-DP for guix-patches@gnu.org; Sun, 01 Nov 2020 11:59:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#44374] [PATCH 0/1] gnu: sdcc: Remove non-free code Resent-From: Simon South Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 01 Nov 2020 16:59:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 44374 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 44374@debbugs.gnu.org Cc: simon@simonsouth.net X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.16042499187756 (code B ref -1); Sun, 01 Nov 2020 16:59:02 +0000 Received: (at submit) by debbugs.gnu.org; 1 Nov 2020 16:58:38 +0000 Received: from localhost ([127.0.0.1]:38343 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kZGgc-00020y-AR for submit@debbugs.gnu.org; Sun, 01 Nov 2020 11:58:38 -0500 Received: from lists.gnu.org ([209.51.188.17]:51720) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kZGgW-00020n-VI for submit@debbugs.gnu.org; Sun, 01 Nov 2020 11:58:32 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:44916) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kZGgW-0005Nc-N0 for guix-patches@gnu.org; Sun, 01 Nov 2020 11:58:28 -0500 Received: from mailout.easymail.ca ([64.68.200.34]:43840) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kZGgQ-0000sC-V0 for guix-patches@gnu.org; Sun, 01 Nov 2020 11:58:28 -0500 Received: from localhost (localhost [127.0.0.1]) by mailout.easymail.ca (Postfix) with ESMTP id A1F449FEB0; Sun, 1 Nov 2020 16:58:20 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at emo05-pco.easydns.vpn Received: from mailout.easymail.ca ([127.0.0.1]) by localhost (emo05-pco.easydns.vpn [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id vuWXyP82WNhE; Sun, 1 Nov 2020 16:58:20 +0000 (UTC) Received: from localhost.localdomain (unknown [108.162.141.195]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mailout.easymail.ca (Postfix) with ESMTPSA id 73F369F529; Sun, 1 Nov 2020 16:58:18 +0000 (UTC) From: Simon South Date: Sun, 1 Nov 2020 11:53:28 -0500 Message-Id: X-Mailer: git-send-email 2.25.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=64.68.200.34; envelope-from=simon@simonsouth.net; helo=mailout.easymail.ca X-detected-operating-system: by eggs.gnu.org: First seen = 2020/11/01 11:58:20 X-ACL-Warn: Detected OS = Linux 3.11 and newer [fuzzy] X-Spam_score_int: -41 X-Spam_score: -4.2 X-Spam_bar: ---- X-Spam_report: (-4.2 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: -2.3 (--) X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Scanner: ns3122888.ip-94-23-21.eu Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Spam-Score: 3.99 X-TUID: B/njrzQogwBD 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