mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-25 22:08:16 -05:00
gnu: js8call: Improve package style.
* gnu/packages/radio.scm (js8call): Use Gexp and shift order of components. [tests]: Enable them. [arguments]<phases>: In fix-paths phase add more steps to modify test script. Replace check phase with in-project script. [native-inputs]: Remove labels. [inputs]: As above. Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
This commit is contained in:
parent
a6b3bdb7fc
commit
d7a3b4008f
1 changed files with 49 additions and 34 deletions
|
@ -12,6 +12,7 @@
|
|||
;;; Copyright © 2022 Sheng Yang <styang@fastmail.com>
|
||||
;;; Copyright © 2022 Greg Hogan <code@greghogan.com>
|
||||
;;; Copyright © 2022 Ryan Tolboom <ryan@using.tech>
|
||||
;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -1603,49 +1604,63 @@ (define-public js8call
|
|||
(base32 "149sjwc4zg6ckgq26af93p4fxappa4k9dh7rdy67g8ajfjad4cd8"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
;; Delete bundled boost to use the shared one.
|
||||
(delete-file-recursively "boost")
|
||||
#t))))
|
||||
#~(begin
|
||||
;; Delete bundled boost to use the shared one.
|
||||
(delete-file-recursively "boost")))))
|
||||
(build-system qt-build-system)
|
||||
(native-inputs
|
||||
(list asciidoc gfortran pkg-config qttools-5 ruby-asciidoctor))
|
||||
(inputs
|
||||
`(("boost" ,boost)
|
||||
("fftw" ,fftw)
|
||||
("fftwf" ,fftwf)
|
||||
("hamlib" ,wsjtx-hamlib)
|
||||
("libusb" ,libusb)
|
||||
("qtbase" ,qtbase-5)
|
||||
("qtmultimedia-5" ,qtmultimedia-5)
|
||||
("qtserialport" ,qtserialport)))
|
||||
(arguments
|
||||
`(#:tests? #f ; No test suite
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-paths
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("DESTINATION /usr/share")
|
||||
(string-append "DESTINATION "
|
||||
(assoc-ref outputs "out")
|
||||
"/share")))))
|
||||
(add-after 'unpack 'fix-hamlib
|
||||
(lambda _
|
||||
(substitute* "CMake/Modules/Findhamlib.cmake"
|
||||
(("set \\(ENV\\{PKG_CONFIG_PATH\\}.*\\)")
|
||||
"set (__pc_path $ENV{PKG_CONFIG_PATH})
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-paths
|
||||
(lambda _
|
||||
;; XXX: How to get the /tmp/<build-name>.drv-<num> path? Use
|
||||
;; output path for after install check phase instead.
|
||||
(substitute* "media/tests/test"
|
||||
(("~/js8call-prefix/build/js8")
|
||||
(string-append #$output "/bin/js8"))
|
||||
(("/opt/js8call/bin/js8")
|
||||
(string-append #$output "/bin/js8")))
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("DESTINATION /usr/share")
|
||||
(string-append "DESTINATION " #$output "/share")))))
|
||||
(add-after 'unpack 'fix-hamlib
|
||||
(lambda _
|
||||
(substitute* "CMake/Modules/Findhamlib.cmake"
|
||||
(("set \\(ENV\\{PKG_CONFIG_PATH\\}.*\\)")
|
||||
"set (__pc_path $ENV{PKG_CONFIG_PATH})
|
||||
list (APPEND __pc_path \"${__hamlib_pc_path}\")
|
||||
set (ENV{PKG_CONFIG_PATH} \"${__pc_path}\")"))
|
||||
(substitute* "HamlibTransceiver.hpp"
|
||||
(("#ifdef JS8_USE_LEGACY_HAMLIB")
|
||||
"#if 1")))))))
|
||||
(substitute* "HamlibTransceiver.hpp"
|
||||
(("#ifdef JS8_USE_LEGACY_HAMLIB")
|
||||
"#if 1"))))
|
||||
(delete 'check)
|
||||
(add-after 'install 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(with-directory-excursion "../js8call/media/tests"
|
||||
(invoke "./test"))))))))
|
||||
(native-inputs
|
||||
(list asciidoc
|
||||
gfortran
|
||||
pkg-config
|
||||
qttools-5
|
||||
ruby-asciidoctor))
|
||||
(inputs
|
||||
(list boost
|
||||
fftw
|
||||
fftwf
|
||||
libusb
|
||||
qtbase-5
|
||||
qtmultimedia-5
|
||||
qtserialport
|
||||
wsjtx-hamlib))
|
||||
(home-page "http://js8call.com/")
|
||||
(synopsis "Weak-signal ham radio communication program")
|
||||
(description
|
||||
"JS8Call is a software using the JS8 digital mode (a derivative of the FT8
|
||||
mode) providing weak signal keyboard to keyboard messaging to amateur radio
|
||||
operators.")
|
||||
(home-page "http://js8call.com/")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public xnec2c
|
||||
|
|
Loading…
Reference in a new issue