[PATCH 0/4] gnu: ucsim: Update to 0.8.0; other improvements.

  • Open
  • quality assurance status badge
Details
One participant
  • Simon South
Owner
unassigned
Submitted by
Simon South
Severity
normal
S
S
Simon South wrote on 15 Sep 16:22 +0200
(address . guix-patches@gnu.org)
cover.1694784333.git.simon@simonsouth.net
This patch series updates μCsim, a collection of software simulators for
various microcontroller families, to version 0.8.0.

It also tries to improve the package by

- Modernizing it with the use of gexps.

- Disabling tests. "make check" runs what is actually a regression-test
suite[0], which is of little value here as it doesn't stop or return an
error code when it encounters a problem. In fact it has been quietly
failing this entire time due to missing dependencies but because it doesn't
report any errors, no one noticed.

This change also eliminates the possibility of a circular dependency between
μCsim and SDCC, which will become important with a future patch to the sdcc
package.

- Moving the documentation to a separate "doc" output.

I've tested these changes on AArch64 and x86-64 and everything appears fine.

--
Simon South
simon@simonsouth.net

[0] Documented at


Simon South (4):
gnu: ucsim: Use gexps.
gnu: ucsim: Disable tests.
gnu: ucsim: Move documentation to "doc" output.
gnu: ucsim: Update to 0.8.0.

gnu/packages/embedded.scm | 47 ++++++++++++++++++++++-----------------
1 file changed, 27 insertions(+), 20 deletions(-)


base-commit: b696fb41bc0dfcb7130a5aa6d69aff2ae191c283
prerequisite-patch-id: 556b40aab19d0d1dd3e301115880883c329ee516
--
2.41.0
S
S
Simon South wrote on 15 Sep 16:25 +0200
[PATCH 3/4] gnu: ucsim: Move documentation to "doc" output.
(address . 66001@debbugs.gnu.org)
4af5efd7ec061ee2ed93c77b638faf4da001a7d8.1694784333.git.simon@simonsouth.net
* gnu/packages/embedded.scm (ucsim)[arguments]<#:phases>: Expand
"patch-makefiles" phase to set correct documentation-installation path.
[outputs]: Add with "out", "doc".
---
gnu/packages/embedded.scm | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)

Toggle diff (29 lines)
diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index 80efe2363d..bee6ab6543 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -1527,7 +1527,13 @@ (define-public ucsim
(add-after 'unpack 'patch-makefiles
(lambda _
(substitute* (find-files "." "(\\.mk$|\\.in$)")
- (("/bin/sh") (which "sh"))))))
+ (("/bin/sh") (which "sh")))
+
+ ;; Ensure the documentation is installed to the correct path,
+ ;; without a duplicate "ucsim" segment (necessary as we are
+ ;; building μCsim outside of SDCC).
+ (substitute* "doc/Makefile.in"
+ (("@docdir@/ucsim") "@docdir@")))))
;; μCsim's regression-test suite is of little use in this context since
;; it doesn't stop or return an error code when it encounters a problem.
#:tests? #f))
@@ -1535,6 +1541,7 @@ (define-public ucsim
(list ncurses))
(native-inputs
(list bison flex))
+ (outputs '("out" "doc"))
(home-page "http://mazsola.iit.uni-miskolc.hu/ucsim/")
(synopsis "Simulators for various microcontroller families")
(description "μCsim is a collection of software simulators for
--
2.41.0
S
S
Simon South wrote on 15 Sep 16:25 +0200
[PATCH 4/4] gnu: ucsim: Update to 0.8.0.
(address . 66001@debbugs.gnu.org)
bf8a5861e47c3e96f82aaf93e4f1cad4ce05ad21.1694784333.git.simon@simonsouth.net
* gnu/packages/embedded.scm (ucsim): Update to 0.8.0.
[source]: Update source URI.
[description]: Update.
---
gnu/packages/embedded.scm | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)

Toggle diff (43 lines)
diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index bee6ab6543..71ad50aa81 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -1509,16 +1509,16 @@ (define-public ebusd
(define-public ucsim
(package
(name "ucsim")
- (version "0.7.1")
+ (version "0.8.0")
(source (origin
(method url-fetch)
(uri (string-append
- "http://mazsola.iit.uni-miskolc.hu/ucsim/download/unix/"
- "source/v" (version-major+minor version) ".x/"
- "ucsim-" version ".tar.gz"))
+ "http://mazsola.iit.uni-miskolc.hu/ucsim/download/"
+ "v" (version-major+minor version) ".x/"
+ "ucsim_" version "_orig.tar.gz"))
(sha256
(base32
- "080471wvkjdzxz5j3zdaq1apjcj84ql50kn26b7p4ansixnimml4"))))
+ "0qyrrna2ssvwla15al183r9zqnqdxxlqawyhx9c86a10m8q8qqlz"))))
(build-system gnu-build-system)
(arguments
(list
@@ -1545,10 +1545,10 @@ (define-public ucsim
(home-page "http://mazsola.iit.uni-miskolc.hu/ucsim/")
(synopsis "Simulators for various microcontroller families")
(description "μCsim is a collection of software simulators for
-microcontrollers in the Atmel AVR; Intel MCS-51 (8051); MOS Technology 6502;
-Motorola 6800, 68HC08 and 6809; P1516; Padauk PDK13, PDK14 and PDK15;
-STMicroelectronics ST7 and STM8; Xilinx PicoBlaze; and Zilog Z80 families,
-plus many of their variants.")
+microcontrollers in the Atmel AVR; Fairchild F8; Intel MCS-51 (8051) and 8085;
+MOS Technology 6502; Motorola 6800, 6809, 68HC08, 68HC11 and 68HC12; P1516;
+Padauk PDK13, PDK14 and PDK15; STMicroelectronics ST7 and STM8; Xilinx
+PicoBlaze; and Zilog Z80 families, plus many of their variants.")
(license license:gpl2+)))
(define-public sdcc
--
2.41.0
S
S
Simon South wrote on 15 Sep 16:25 +0200
[PATCH 2/4] gnu: ucsim: Disable tests.
(address . 66001@debbugs.gnu.org)
070bba289fae9c4da0d5e25394e9fbdb86be8091.1694784333.git.simon@simonsouth.net
* gnu/packages/embedded.scm (ucsim)[arguments]: Add #:tests?.
[native-inputs]: Remove sdcc unconditionally.
---
gnu/packages/embedded.scm | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)

Toggle diff (27 lines)
diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index 12c92d0e30..80efe2363d 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -1527,15 +1527,14 @@ (define-public ucsim
(add-after 'unpack 'patch-makefiles
(lambda _
(substitute* (find-files "." "(\\.mk$|\\.in$)")
- (("/bin/sh") (which "sh"))))))))
+ (("/bin/sh") (which "sh"))))))
+ ;; μCsim's regression-test suite is of little use in this context since
+ ;; it doesn't stop or return an error code when it encounters a problem.
+ #:tests? #f))
(inputs
(list ncurses))
(native-inputs
- (append (list bison flex)
- ;; Certain tests use assemblers provided by SDCC.
- (if (not (%current-target-system))
- (list sdcc)
- '())))
+ (list bison flex))
(home-page "http://mazsola.iit.uni-miskolc.hu/ucsim/")
(synopsis "Simulators for various microcontroller families")
(description "μCsim is a collection of software simulators for
--
2.41.0
S
S
Simon South wrote on 15 Sep 16:25 +0200
[PATCH 1/4] gnu: ucsim: Use gexps.
(address . 66001@debbugs.gnu.org)
5462007739ad4020a005fcd71d298dcdbd0f2c95.1694784333.git.simon@simonsouth.net
* gnu/packages/embedded.scm (ucsim)[arguments]: Use gexp.
---
gnu/packages/embedded.scm | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)

Toggle diff (26 lines)
diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index 325013a627..12c92d0e30 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -1521,12 +1521,13 @@ (define-public ucsim
"080471wvkjdzxz5j3zdaq1apjcj84ql50kn26b7p4ansixnimml4"))))
(build-system gnu-build-system)
(arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'patch-makefiles
- (lambda _
- (substitute* (find-files "." "(\\.mk$|\\.in$)")
- (("/bin/sh") (which "sh"))))))))
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-makefiles
+ (lambda _
+ (substitute* (find-files "." "(\\.mk$|\\.in$)")
+ (("/bin/sh") (which "sh"))))))))
(inputs
(list ncurses))
(native-inputs
--
2.41.0
?