GNU bug report logs - #45241
[PATCH 0/5] gnu: sdcc: Polish up package definition

Previous Next

Package: guix-patches;

Reported by: Simon South <simon <at> simonsouth.net>

Date: Mon, 14 Dec 2020 18:11:01 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 45241 in the body.
You can then email your comments to 45241 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#45241; Package guix-patches. (Mon, 14 Dec 2020 18:11:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Simon South <simon <at> simonsouth.net>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Mon, 14 Dec 2020 18:11:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Simon South <simon <at> simonsouth.net>
To: guix-patches <at> gnu.org
Cc: Simon South <simon <at> simonsouth.net>
Subject: [PATCH 0/5] gnu: sdcc: Polish up package definition
Date: Mon, 14 Dec 2020 13:04:09 -0500
This patch series attempts to polish up the package for SDCC, a C compiler
suite for 8-bit microcontrollers, in various ways. Specifically, it

- Moves the sdcc package (which currently exists in its own module) into
  embedded.scm, placing it together with other packages related to
  embedded-systems development;

- Expands its "license" field to include the full set used by the various
  subprojects that comprise it[0];

- Revises its synopsis and description for clarity and brevity, removing
  redundant or unnecessary information;

- Corrects the name of a build phase ("patch-makefile" to "patch-makefiles");
  and

- Expands a comment to clarify the situation regarding GPUTILS, a separate
  project on which SDCC relies for PIC-microcontroller support, as was
  discussed recently[1].

This patchset is meant to be applied after the one submitted as issue
45240[2], but doesn't depend on it.

[0] See the overview at http://sdcc.sourceforge.net/.
[1] https://issues.guix.gnu.org/44557
[2] https://issues.guix.gnu.org/45240

--
Simon South
simon <at> simonsouth.net


Simon South (5):
  gnu: sdcc: Move to embedded.scm.
  gnu: sdcc: Specify complete set of licenses.
  gnu: sdcc: Revise synopsis and description.
  gnu: sdcc: Correct name of phase.
  gnu: sdcc: Expand comment regarding GPUTILS and PIC ports.

 gnu/local.mk                 |  1 -
 gnu/packages/electronics.scm |  4 +-
 gnu/packages/embedded.scm    | 57 +++++++++++++++++++++++++
 gnu/packages/sdcc.scm        | 80 ------------------------------------
 4 files changed, 59 insertions(+), 83 deletions(-)
 delete mode 100644 gnu/packages/sdcc.scm

-- 
2.29.2





Information forwarded to guix-patches <at> gnu.org:
bug#45241; Package guix-patches. (Mon, 14 Dec 2020 18:13:02 GMT) Full text and rfc822 format available.

Message #8 received at 45241 <at> debbugs.gnu.org (full text, mbox):

From: Simon South <simon <at> simonsouth.net>
To: 45241 <at> debbugs.gnu.org
Cc: Simon South <simon <at> simonsouth.net>
Subject: [PATCH 1/5] gnu: sdcc: Move to embedded.scm.
Date: Mon, 14 Dec 2020 13:06:44 -0500
* gnu/packages/embedded.scm: Add sdcc from sdcc.scm.
* gnu/packages/electronics.scm: Update #:use-module directive.
* gnu/packages/sdcc.scm: Delete file.
* gnu/local.mk: Remove it.
---
 gnu/local.mk                 |  1 -
 gnu/packages/electronics.scm |  4 +-
 gnu/packages/embedded.scm    | 51 +++++++++++++++++++++++
 gnu/packages/sdcc.scm        | 80 ------------------------------------
 4 files changed, 53 insertions(+), 83 deletions(-)
 delete mode 100644 gnu/packages/sdcc.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index 0b4cf23838..8933dfc168 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -494,7 +494,6 @@ GNU_SYSTEM_MODULES =				\
   %D%/packages/screen.scm			\
   %D%/packages/scribus.scm			\
   %D%/packages/scsi.scm				\
-  %D%/packages/sdcc.scm				\
   %D%/packages/sdl.scm				\
   %D%/packages/search.scm			\
   %D%/packages/security-token.scm		\
diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm
index 3f9ca33ede..01796bb91c 100644
--- a/gnu/packages/electronics.scm
+++ b/gnu/packages/electronics.scm
@@ -32,6 +32,7 @@
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages documentation)
+  #:use-module (gnu packages embedded)
   #:use-module (gnu packages gawk)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages graphviz)
@@ -39,8 +40,7 @@
   #:use-module (gnu packages libusb)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
-  #:use-module (gnu packages qt)
-  #:use-module (gnu packages sdcc))
+  #:use-module (gnu packages qt))
 
 (define-public libserialport
   (package
diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index dd48fe317e..2d822cecf3 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -40,6 +40,7 @@
   #:use-module (gnu packages autotools)
   #:use-module ((gnu packages base) #:prefix base:)
   #:use-module (gnu packages bison)
+  #:use-module (gnu packages boost)
   #:use-module (gnu packages cross-base)
   #:use-module (gnu packages dejagnu)
   #:use-module (gnu packages flex)
@@ -1461,3 +1462,53 @@ microcontrollers in the Atmel AVR; Intel MCS-51 (8051); Motorola 68HC08 and
 6809; P1516; Padauk PDK13, PDK14 and PDK15; STMicroelectronics ST7 and STM8;
 and Zilog Z80 families, plus many of their variants.")
     (license license:gpl2+)))
+
+(define-public sdcc
+  (package
+    (name "sdcc")
+    (version "3.7.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "mirror://sourceforge/sdcc/sdcc"
+                    "/" version "/sdcc-src-" version ".tar.bz2"))
+              (sha256
+               (base32
+                "13llvx0j3v5qa7qd4fh7nix4j3alpd3ccprxvx163c4q8q4lfkc5"))
+              (modules '((guix build utils)))
+              (snippet
+               '(begin
+                  ;; Remove non-free source files
+                  (delete-file-recursively "device/non-free")
+                  ;; Remove bundled μCsim source
+                  (delete-file-recursively "sim")
+                  #t))
+              (patches (search-patches "sdcc-disable-non-free-code.patch"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("bison" ,bison)
+       ("boost" ,boost)
+       ("flex" ,flex)
+       ("python-2" ,python-2)
+       ("texinfo" ,texinfo)))
+    (arguments
+     `(;; gputils is required for PIC ports
+       #:configure-flags
+       '("--disable-pic14-port" "--disable-pic16-port" "--disable-ucsim")
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-makefile
+           (lambda _
+             (substitute* (find-files "." "(\\.mk$|\\.in$)")
+               (("/bin/sh") (which "sh")))
+             #t)))))
+    (home-page "http://sdcc.sourceforge.net")
+    (synopsis "Small devices C compiler")
+    (description "SDCC is a retargetable, optimizing Standard C compiler suite
+that targets the Intel MCS51-based microprocessors (8031, 8032, 8051, 8052, ...),
+Maxim (formerly Dallas) DS80C390 variants, Freescale (formerly Motorola)
+HC08-based (hc08, s08), Zilog Z80-based MCUs (z80, z180, gbz80, Rabbit
+2000/3000, Rabbit 3000A, TLCS-90) and STMicroelectronics STM8.
+Work is in progress on supporting the Microchip PIC16 and PIC18 targets.
+It can be retargeted for other microprocessors.")
+    (license license:gpl2+)))
diff --git a/gnu/packages/sdcc.scm b/gnu/packages/sdcc.scm
deleted file mode 100644
index 0ce71ed955..0000000000
--- a/gnu/packages/sdcc.scm
+++ /dev/null
@@ -1,80 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 David Craven <david <at> craven.ch>
-;;; Copyright © 2018 Tobias Geerinckx-Rice <me <at> tobias.gr>
-;;;
-;;; This file is part of GNU Guix.
-;;;
-;;; GNU Guix 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.
-;;;
-;;; GNU Guix 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 GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
-
-(define-module (gnu packages sdcc)
-  #:use-module (gnu packages)
-  #:use-module (gnu packages bison)
-  #:use-module (gnu packages boost)
-  #:use-module (gnu packages flex)
-  #:use-module (gnu packages python)
-  #:use-module (gnu packages texinfo)
-  #:use-module (guix build-system gnu)
-  #:use-module (guix download)
-  #:use-module (guix packages)
-  #:use-module ((guix licenses) #:prefix license:))
-
-(define-public sdcc
-  (package
-    (name "sdcc")
-    (version "3.7.0")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append
-                    "mirror://sourceforge/sdcc/sdcc"
-                    "/" version "/sdcc-src-" version ".tar.bz2"))
-              (sha256
-               (base32
-                "13llvx0j3v5qa7qd4fh7nix4j3alpd3ccprxvx163c4q8q4lfkc5"))
-              (modules '((guix build utils)))
-              (snippet
-               '(begin
-                  ;; Remove non-free source files
-                  (delete-file-recursively "device/non-free")
-                  ;; Remove bundled μCsim source
-                  (delete-file-recursively "sim")
-                  #t))
-              (patches (search-patches "sdcc-disable-non-free-code.patch"))))
-    (build-system gnu-build-system)
-    (native-inputs
-     `(("bison" ,bison)
-       ("boost" ,boost)
-       ("flex" ,flex)
-       ("python-2" ,python-2)
-       ("texinfo" ,texinfo)))
-    (arguments
-     `(;; gputils is required for PIC ports
-       #:configure-flags
-       '("--disable-pic14-port" "--disable-pic16-port" "--disable-ucsim")
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'unpack 'patch-makefile
-           (lambda _
-             (substitute* (find-files "." "(\\.mk$|\\.in$)")
-               (("/bin/sh") (which "sh")))
-             #t)))))
-    (home-page "http://sdcc.sourceforge.net")
-    (synopsis "Small devices C compiler")
-    (description "SDCC is a retargetable, optimizing Standard C compiler suite
-that targets the Intel MCS51-based microprocessors (8031, 8032, 8051, 8052, ...),
-Maxim (formerly Dallas) DS80C390 variants, Freescale (formerly Motorola)
-HC08-based (hc08, s08), Zilog Z80-based MCUs (z80, z180, gbz80, Rabbit
-2000/3000, Rabbit 3000A, TLCS-90) and STMicroelectronics STM8.
-Work is in progress on supporting the Microchip PIC16 and PIC18 targets.
-It can be retargeted for other microprocessors.")
-    (license license:gpl2+)))
-- 
2.29.2





Information forwarded to guix-patches <at> gnu.org:
bug#45241; Package guix-patches. (Mon, 14 Dec 2020 18:13:02 GMT) Full text and rfc822 format available.

Message #11 received at 45241 <at> debbugs.gnu.org (full text, mbox):

From: Simon South <simon <at> simonsouth.net>
To: 45241 <at> debbugs.gnu.org
Cc: Simon South <simon <at> simonsouth.net>
Subject: [PATCH 2/5] gnu: sdcc: Specify complete set of licenses.
Date: Mon, 14 Dec 2020 13:06:45 -0500
* gnu/packages/embedded.scm (sdcc)[license]: Replace with full list of
licenses used by files in the distribution.
---
 gnu/packages/embedded.scm | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index 2d822cecf3..545c512f18 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -1511,4 +1511,10 @@ HC08-based (hc08, s08), Zilog Z80-based MCUs (z80, z180, gbz80, Rabbit
 2000/3000, Rabbit 3000A, TLCS-90) and STMicroelectronics STM8.
 Work is in progress on supporting the Microchip PIC16 and PIC18 targets.
 It can be retargeted for other microprocessors.")
-    (license license:gpl2+)))
+    (license (list license:gpl2+
+                   license:gpl3+
+                   license:lgpl2.0+
+                   license:lgpl2.1+
+                   license:lgpl3+
+                   license:public-domain
+                   license:zlib))))
-- 
2.29.2





Information forwarded to guix-patches <at> gnu.org:
bug#45241; Package guix-patches. (Mon, 14 Dec 2020 18:13:03 GMT) Full text and rfc822 format available.

Message #14 received at 45241 <at> debbugs.gnu.org (full text, mbox):

From: Simon South <simon <at> simonsouth.net>
To: 45241 <at> debbugs.gnu.org
Cc: Simon South <simon <at> simonsouth.net>
Subject: [PATCH 3/5] gnu: sdcc: Revise synopsis and description.
Date: Mon, 14 Dec 2020 13:06:46 -0500
* gnu/packages/embedded.scm (sdcc)[synopsis]: State package's use more
clearly.
[description]: Revise for brevity.
---
 gnu/packages/embedded.scm | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index 545c512f18..47e1f90ac1 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -1503,14 +1503,11 @@ and Zilog Z80 families, plus many of their variants.")
                (("/bin/sh") (which "sh")))
              #t)))))
     (home-page "http://sdcc.sourceforge.net")
-    (synopsis "Small devices C compiler")
+    (synopsis "C compiler suite for 8-bit microcontrollers")
     (description "SDCC is a retargetable, optimizing Standard C compiler suite
-that targets the Intel MCS51-based microprocessors (8031, 8032, 8051, 8052, ...),
-Maxim (formerly Dallas) DS80C390 variants, Freescale (formerly Motorola)
-HC08-based (hc08, s08), Zilog Z80-based MCUs (z80, z180, gbz80, Rabbit
-2000/3000, Rabbit 3000A, TLCS-90) and STMicroelectronics STM8.
-Work is in progress on supporting the Microchip PIC16 and PIC18 targets.
-It can be retargeted for other microprocessors.")
+that targets 8-bit microcontrollers in the Intel MCS-51 (8051), Motorola
+68HC08, STMicroelectronics STM8, and Zilog Z80 families, plus many of their
+variants.")
     (license (list license:gpl2+
                    license:gpl3+
                    license:lgpl2.0+
-- 
2.29.2





Information forwarded to guix-patches <at> gnu.org:
bug#45241; Package guix-patches. (Mon, 14 Dec 2020 18:13:03 GMT) Full text and rfc822 format available.

Message #17 received at 45241 <at> debbugs.gnu.org (full text, mbox):

From: Simon South <simon <at> simonsouth.net>
To: 45241 <at> debbugs.gnu.org
Cc: Simon South <simon <at> simonsouth.net>
Subject: [PATCH 4/5] gnu: sdcc: Correct name of phase.
Date: Mon, 14 Dec 2020 13:06:47 -0500
* gnu/packages/embedded.scm [arguments]<#:phases>: Rename "patch-makefile"
phase to "patch-makefiles".
---
 gnu/packages/embedded.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index 47e1f90ac1..da03d18c6d 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -1497,7 +1497,7 @@ and Zilog Z80 families, plus many of their variants.")
        '("--disable-pic14-port" "--disable-pic16-port" "--disable-ucsim")
        #:phases
        (modify-phases %standard-phases
-         (add-after 'unpack 'patch-makefile
+         (add-after 'unpack 'patch-makefiles
            (lambda _
              (substitute* (find-files "." "(\\.mk$|\\.in$)")
                (("/bin/sh") (which "sh")))
-- 
2.29.2





Information forwarded to guix-patches <at> gnu.org:
bug#45241; Package guix-patches. (Mon, 14 Dec 2020 18:13:03 GMT) Full text and rfc822 format available.

Message #20 received at 45241 <at> debbugs.gnu.org (full text, mbox):

From: Simon South <simon <at> simonsouth.net>
To: 45241 <at> debbugs.gnu.org
Cc: Simon South <simon <at> simonsouth.net>
Subject: [PATCH 5/5] gnu: sdcc: Expand comment regarding GPUTILS and PIC ports.
Date: Mon, 14 Dec 2020 13:06:48 -0500
* gnu/packages/embedded.scm (sdcc)[arguments]: Expand comment to explain why
GPUTILS is not yet available and SDCC's PIC ports are disabled.
---
 gnu/packages/embedded.scm | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index da03d18c6d..a7643deb97 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -1492,7 +1492,10 @@ and Zilog Z80 families, plus many of their variants.")
        ("python-2" ,python-2)
        ("texinfo" ,texinfo)))
     (arguments
-     `(;; gputils is required for PIC ports
+     `(;; GPUTILS is required for the PIC ports, but the licensing status of
+       ;; some of the files contained in its distribution is unclear (see
+       ;; https://issues.guix.gnu.org/44557).  For this reason it is not yet
+       ;; available as a package in Guix.
        #:configure-flags
        '("--disable-pic14-port" "--disable-pic16-port" "--disable-ucsim")
        #:phases
-- 
2.29.2





Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Mon, 21 Dec 2020 16:41:02 GMT) Full text and rfc822 format available.

Notification sent to Simon South <simon <at> simonsouth.net>:
bug acknowledged by developer. (Mon, 21 Dec 2020 16:41:02 GMT) Full text and rfc822 format available.

Message #25 received at 45241-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Simon South <simon <at> simonsouth.net>
Cc: 45241-done <at> debbugs.gnu.org
Subject: Re: [bug#45241] [PATCH 0/5] gnu: sdcc: Polish up package definition
Date: Mon, 21 Dec 2020 17:40:37 +0100
Hi,

Simon South <simon <at> simonsouth.net> skribis:

>   gnu: sdcc: Move to embedded.scm.
>   gnu: sdcc: Specify complete set of licenses.
>   gnu: sdcc: Revise synopsis and description.
>   gnu: sdcc: Correct name of phase.
>   gnu: sdcc: Expand comment regarding GPUTILS and PIC ports.

Applied, thanks for the tidying work!

Ludo’.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 19 Jan 2021 12:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 147 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.