guix-commits
[Top][All Lists]
Advanced

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

03/06: gnu: srecord: Update to 1.65.0.


From: guix-commits
Subject: 03/06: gnu: srecord: Update to 1.65.0.
Date: Fri, 21 Jul 2023 13:12:53 -0400 (EDT)

nckx pushed a commit to branch master
in repository guix.

commit 19f6c16dba8c07ec28e2c9fea225274cbe77bf73
Author: Tobias Geerinckx-Rice <me@tobias.gr>
AuthorDate: Sun Jul 16 02:00:04 2023 +0200

    gnu: srecord: Update to 1.65.0.
    
    * gnu/packages/flashing-tools.scm (srecord): Update to 1.65.0.
    [source]: Add a snippet to fix the very special build system.
    [arguments]: Rewrite using G-expressions.  Remove the old
    [native-inputs]: Remove bison and libtool.  Add doxygen,
    graphviz, psutils, perl, and perl-ipc-run3.
---
 gnu/packages/flashing-tools.scm | 59 +++++++++++++++++++++++++++++++----------
 1 file changed, 45 insertions(+), 14 deletions(-)

diff --git a/gnu/packages/flashing-tools.scm b/gnu/packages/flashing-tools.scm
index 19219a6d7e..85b3988729 100644
--- a/gnu/packages/flashing-tools.scm
+++ b/gnu/packages/flashing-tools.scm
@@ -46,13 +46,16 @@
   #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages documentation)
   #:use-module (gnu packages elf)
   #:use-module (gnu packages embedded)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages ghostscript)
   #:use-module (gnu packages gnupg)
+  #:use-module (gnu packages graphviz)
   #:use-module (gnu packages groff)
   #:use-module (gnu packages pciutils)
+  #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages libusb)
   #:use-module (gnu packages libftdi)
@@ -475,30 +478,58 @@ Unifinished Extensible Firmware Interface (UEFI) images.")
 (define-public srecord
   (package
     (name "srecord")
-    (version "1.64")
+    (version "1.65.0")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "mirror://sourceforge/srecord/srecord/"
-                           version "/srecord-" version ".tar.gz"))
+                           (version-major+minor version) "/"
+                           "srecord-" version "-Source.tar.gz"))
        (sha256
-        (base32
-         "1qk75q0k5vzmm3932q9hqz2gp8n9rrdfjacsswxc02656f3l3929"))))
-    (build-system gnu-build-system)
+        (base32 "0i3n6g8i28xx8761nadm6p2nf9y31bywx0isyi0h9rawy5yd1hw1"))
+       (modules '((guix build utils)))
+       (snippet
+        '(begin
+           ;; Fix building without Git.  Upstream tries to allow it but is 
buggy.
+           (substitute* "etc/configure.cmake"
+             (("\\(GIT_SHA1\\)") "(FALSE)"))
+           ;; It also tries to install the entire RUNTIME_DEPENDENCY_SET of
+           ;; each executable: libm, libc, libstc++ & more!  Get the 
cluehammer.
+           (substitute* "etc/packaging.cmake"
+             ((".*# Find standard library DLL.*" match)
+              "ENDFUNCTION()\n\nFUNCTION(WTF no)\n"))
+           ;; Now stop it from deliberately clobbering -DCMAKE_INSTALL_PREFIX.
+           (substitute* "CMakeLists.txt"
+             (("set\\(CMAKE_INSTALL_PREFIX") "#"))))))
+    (build-system cmake-build-system)
     (arguments
-     `(#:configure-flags
-       (list (string-append "SH="
-                            (assoc-ref %build-inputs "bash")
-                            "/bin/bash"))))
+     (list
+      #:modules '((guix build cmake-build-system)
+                  (guix build utils)
+                  (srfi srfi-26))
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-before 'check 'make-tests-executable
+            (lambda _
+              (for-each
+               (cut chmod <> #o755)
+               ;; We're in a parallel build directory to the sources and tests.
+               (find-files ".." "\\.sh$")))))))
     (inputs
      (list boost libgcrypt))
     (native-inputs
-     (list bison
-           diffutils
-           ghostscript
+     (list doxygen
+           ghostscript                ; for ps2pdf
+           graphviz                   ; the build scripts call this ‘doxygen’…
            groff
-           libtool
-           which))
+           psutils
+           ;; For the tests.
+           diffutils
+           which
+           ;; XXX Work around Guix's currently-broken psutils package.  Remove
+           ;; both and maybe (gnu packages perl) when core-updates is merged.
+           perl
+           perl-ipc-run3))
     (home-page "https://srecord.sourceforge.net/";)
     (synopsis "Tools for EPROM files")
     (description "The SRecord package is a collection of powerful tools for



reply via email to

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