summary refs log tree commit diff
path: root/gnu/packages/radio.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2021-09-07 11:04:44 +0200
committerLudovic Courtès <ludo@gnu.org>2021-09-07 14:19:08 +0200
commitd9dfbf886ddbb92dfdaa118bb9765e78aad5c53a (patch)
tree2732020de20a38c09b66a60b0cb36022799f7c2e /gnu/packages/radio.scm
parentb949f34f31a045eb0fb242b81a223178fb6994d3 (diff)
parent49922efb11da0f0e9d4f5979d081de5ea8c99d25 (diff)
downloadguix-d9dfbf886ddbb92dfdaa118bb9765e78aad5c53a.tar.gz
Merge branch 'master' into core-updates-frozen
Diffstat (limited to 'gnu/packages/radio.scm')
-rw-r--r--gnu/packages/radio.scm75
1 files changed, 74 insertions, 1 deletions
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index 487f5cea6e..a93330e76a 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -72,7 +72,9 @@
   #:use-module (gnu packages networking)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages popt)
   #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages protobuf)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-science)
   #:use-module (gnu packages python-web)
@@ -531,7 +533,7 @@ used by RDS Spy, and audio files containing @dfn{multiplex} signals (MPX).")
        ("python-numpy" ,python-numpy)
        ("python-pycairo" ,python-pycairo)
        ("python-pygobject" ,python-pygobject)
-       ("python-pyqt" ,python-pyqt)
+       ("python-pyqt" ,python-pyqt-without-qtwebkit)
        ("python-pyyaml" ,python-pyyaml)
        ("qtbase" ,qtbase-5)
        ("qwt" ,qwt)
@@ -2279,3 +2281,74 @@ To install the rfcat udev rules, you must extend @code{udev-service-type} with
 this package.  E.g.: @code{(udev-rules-service 'rfcat rfcat)}")
       (license (list license:bsd-3
                      license:gpl2)))))
+
+(define-public gnss-sdr
+  (package
+    (name "gnss-sdr")
+    (version "0.0.14")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/gnss-sdr/gnss-sdr")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1kjh9bnf6h9q71bnn8nrwlc80wcnkib97ylzvb102acii4p0fm08"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("gfortran" ,gfortran)
+       ("googletest-source" ,(package-source googletest))
+       ("orc" ,orc)
+       ("pkg-config" ,pkg-config)
+       ("python" ,python)
+       ("python-mako" ,python-mako)))
+    (inputs
+     `(("armadillo" ,armadillo)
+       ("boost" ,boost)
+       ("gflags" ,gflags)
+       ("glog" ,glog)
+       ("gmp" ,gmp)
+       ("gnuradio" ,gnuradio)
+       ("gr-osmosdr" ,gr-osmosdr)
+       ("lapack" ,lapack)
+       ("libpcap" ,libpcap)
+       ("log4cpp" ,log4cpp)
+       ("matio" ,matio)
+       ("openblas" ,openblas)
+       ("openssl" ,openssl)
+       ("protobuf" ,protobuf)
+       ("pugixml" ,pugixml)
+       ("volk" ,volk)))
+    (arguments
+     `(#:configure-flags
+       (list "-DENABLE_GENERIC_ARCH=ON"
+             "-DENABLE_OSMOSDR=ON"
+             (string-append "-DGFLAGS_ROOT="
+                            (assoc-ref %build-inputs "gflags"))
+             (string-append "-DGLOG_ROOT="
+                            (assoc-ref %build-inputs "glog"))
+             (string-append "-DGTEST_DIR="
+                            (assoc-ref %build-inputs "googletest-source")))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-tests
+           (lambda _
+             ;; Some tests fail to compile when the FILESYSTEM package is
+             ;; available, so we disable it (and the tests will use Boost
+             ;; Filesystem instead).
+             (substitute* "CMakeLists.txt"
+               (("find_package\\(FILESYSTEM COMPONENTS Final Experimental\\)")
+                ""))))
+         (add-before 'check 'set-home
+           (lambda _
+             (setenv "HOME" "/tmp"))))))
+    (home-page "https://gnss-sdr.org/")
+    (synopsis "Global Navigation Satellite Systems software-defined receiver")
+    (description
+     "This program is a software-defined receiver which is able to process
+(that is, to perform detection, synchronization, demodulation and decoding of
+the navigation message, computation of observables and, finally, computation of
+position fixes) the signals of the BeiDou, Galileo, GLONASS and GPS Global
+Navigation Satellite System.")
+    (license license:gpl3+)))