gnu: libsigrok: Update to 0.5.2-1.a7e919a.

* gnu/packages/electronics.scm (libsigrok): Update to 0.5.2-1.a7e919a.
[source]: Switch to git-fetch.
[arguments]: Remove trailing #t.
[native-inputs]: Add autoconf, automake and libtool.
[synopsis]: Shorten it.
[description]: Wrap it.
This commit is contained in:
Mathieu Othacehe 2022-01-21 10:28:41 +01:00
parent b09f2aa4da
commit f5ccf99fe5
No known key found for this signature in database
GPG key ID: 8354763531769CA6

View file

@ -24,6 +24,7 @@
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
@ -145,78 +146,77 @@ as simple logic analyzer and/or oscilloscope hardware.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public libsigrok (define-public libsigrok
(package (let ((commit "a7e919a3a6b7fd511acbe1a280536b76c70c28d2")
(name "libsigrok") (revision "1"))
(version "0.5.2") (package
(source (origin (name "libsigrok")
(method url-fetch) (version (git-version "0.5.2" revision commit))
(uri (string-append (source
"http://sigrok.org/download/source/libsigrok/libsigrok-" (origin
version ".tar.gz")) (method git-fetch)
(sha256 (uri (git-reference
(base32 (url "git://sigrok.org/libsigrok")
"0g6fl684bpqm5p2z4j12c62m45j1dircznjina63w392ns81yd2d")))) (commit commit)))
(outputs '("out" "doc")) (sha256
(arguments (base32 "0km3fyv5s2byrm4zpbss2527ynhw4nb67imnbawwic2a6zh9jiyc"))
`(#:tests? #f ; tests need USB access (file-name (git-file-name name version))))
#:phases (outputs '("out" "doc"))
(modify-phases %standard-phases (arguments
(add-before 'configure 'change-udev-group `(#:tests? #f ; tests need USB access
(lambda _ #:phases
(substitute* (find-files "contrib" "\\.rules$") (modify-phases %standard-phases
(("plugdev") "dialout")) (add-before 'configure 'change-udev-group
#t)) (lambda _
(add-after 'build 'build-doc (substitute* (find-files "contrib" "\\.rules$")
(lambda _ (("plugdev") "dialout"))))
(invoke "doxygen"))) (add-after 'build 'build-doc
(add-after 'install 'install-doc (lambda _
(lambda* (#:key outputs #:allow-other-keys) (invoke "doxygen")))
(copy-recursively "doxy/html-api" (add-after 'install 'install-doc
(string-append (assoc-ref outputs "doc") (lambda* (#:key outputs #:allow-other-keys)
"/share/doc/libsigrok")) (copy-recursively "doxy/html-api"
#t)) (string-append (assoc-ref outputs "doc")
(add-after 'install-doc 'install-udev-rules "/share/doc/libsigrok"))))
(lambda* (#:key outputs #:allow-other-keys) (add-after 'install-doc 'install-udev-rules
(let* ((out (assoc-ref outputs "out")) (lambda* (#:key outputs #:allow-other-keys)
(rules (string-append out "/lib/udev/rules.d/"))) (let* ((out (assoc-ref outputs "out"))
(for-each (lambda (file) (rules (string-append out "/lib/udev/rules.d/")))
(install-file file rules)) (for-each (lambda (file)
(find-files "contrib" "\\.rules$")) (install-file file rules))
#t))) (find-files "contrib" "\\.rules$")))))
(add-after 'install-udev-rules 'install-fw (add-after 'install-udev-rules 'install-fw
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((fx2lafw (assoc-ref inputs "sigrok-firmware-fx2lafw")) (let* ((fx2lafw (assoc-ref inputs "sigrok-firmware-fx2lafw"))
(out (assoc-ref outputs "out")) (out (assoc-ref outputs "out"))
(dir-suffix "/share/sigrok-firmware/") (dir-suffix "/share/sigrok-firmware/")
(input-dir (string-append fx2lafw dir-suffix)) (input-dir (string-append fx2lafw dir-suffix))
(output-dir (string-append out dir-suffix))) (output-dir (string-append out dir-suffix)))
(for-each (for-each
(lambda (file) (lambda (file)
(install-file file output-dir)) (install-file file output-dir))
(find-files input-dir "."))) (find-files input-dir "."))))))))
#t))))) (native-inputs
(native-inputs (list autoconf automake doxygen graphviz libtool
(list doxygen graphviz sigrok-firmware-fx2lafw pkg-config)) sigrok-firmware-fx2lafw pkg-config))
(inputs (inputs
(list python zlib)) (list python zlib))
;; libsigrokcxx.pc lists "glibmm" in Requires ;; libsigrokcxx.pc lists "glibmm" in Requires libsigrok.pc lists
;; libsigrok.pc lists "libserialport", "libusb", "libftdi" and "libzip" in ;; "libserialport", "libusb", "libftdi" and "libzip" in Requires.private
;; Requires.private and "glib" in Requires ;; and "glib" in Requires
(propagated-inputs (propagated-inputs
(list glib (list glib
glibmm-2.64 glibmm-2.64
libserialport libserialport
libusb libusb
libftdi libftdi
libzip)) libzip))
(build-system gnu-build-system) (build-system gnu-build-system)
(home-page "https://www.sigrok.org/wiki/Libsigrok") (home-page "https://www.sigrok.org/wiki/Libsigrok")
(synopsis "Library which provides the basic hardware access drivers for logic (synopsis "Basic hardware access drivers for logic analyzers")
analyzers") (description "@code{libsigrok} is a shared library written in C which
(description "@code{libsigrok} is a shared library written in C which provides the basic hardware provides the basic hardware access drivers for logic analyzers and other
access drivers for logic analyzers and other supported devices, as well as input/output file supported devices, as well as input/output file format support.")
format support.") (license license:gpl3+))))
(license license:gpl3+)))
(define-public sigrok-cli (define-public sigrok-cli
(package (package