New package: gqrx (#19633)
* gqrx and dependencies * changes * forgot log4cpp * misc dep fixes
This commit is contained in:
parent
9fb2d5521d
commit
dee92f9b42
45
var/spack/repos/builtin/packages/gnuradio/package.py
Normal file
45
var/spack/repos/builtin/packages/gnuradio/package.py
Normal file
@ -0,0 +1,45 @@
|
||||
# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
|
||||
# Spack Project Developers. See the top-level COPYRIGHT file for details.
|
||||
#
|
||||
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||
|
||||
|
||||
class Gnuradio(CMakePackage):
|
||||
"""GNU Radio is a free & open-source software development toolkit
|
||||
that provides signal processing blocks to implement software
|
||||
radios. It can be used with readily-available, low-cost external
|
||||
RF hardware to create software-defined radios, or without hardware
|
||||
in a simulation-like environment. It is widely used in hobbyist,
|
||||
academic, and commercial environments to support both wireless
|
||||
communications research and real-world radio systems."""
|
||||
|
||||
homepage = "https://www.gnuradio.org/"
|
||||
url = "https://github.com/gnuradio/gnuradio/archive/v3.8.2.0.tar.gz"
|
||||
|
||||
maintainers = ['aweits']
|
||||
|
||||
version('3.8.2.0', sha256='ddda12b55e3e1d925eefb24afb9d604bca7c9bbe0a431707aa48a2eed53eec2f')
|
||||
depends_on('cmake@3.5.1:', type='build')
|
||||
depends_on('volk')
|
||||
depends_on('python@3.6.5:', type=('build', 'run'))
|
||||
depends_on('py-six', type=('build', 'run'))
|
||||
depends_on('swig@3.0.8:', type='build')
|
||||
depends_on('log4cpp@1.0:')
|
||||
# https://github.com/gnuradio/gnuradio/pull/3566
|
||||
depends_on('boost@1.53:1.72.999')
|
||||
depends_on('py-numpy', type=('build', 'run'))
|
||||
depends_on('py-click', type=('build', 'run'))
|
||||
depends_on('py-pyyaml', type=('build', 'run'))
|
||||
depends_on('py-click-plugins', type=('build', 'run'))
|
||||
depends_on('gsl@1.10:')
|
||||
depends_on('gmp')
|
||||
depends_on('fftw')
|
||||
depends_on('libzmq')
|
||||
extends('python')
|
||||
|
||||
def cmake_args(self):
|
||||
args = []
|
||||
args.append('-DPYTHON_EXECUTABLE={0}'.format(
|
||||
self.spec['python'].command.path))
|
||||
args.append('-DENABLE_INTERNAL_VOLK=OFF')
|
||||
return args
|
29
var/spack/repos/builtin/packages/gqrx/package.py
Normal file
29
var/spack/repos/builtin/packages/gqrx/package.py
Normal file
@ -0,0 +1,29 @@
|
||||
# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
|
||||
# Spack Project Developers. See the top-level COPYRIGHT file for details.
|
||||
#
|
||||
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||
|
||||
|
||||
class Gqrx(CMakePackage):
|
||||
"""Gqrx is an open source software defined radio (SDR) receiver
|
||||
implemented using GNU Radio and the Qt GUI toolkit. Currently it
|
||||
works on Linux and Mac with hardware supported by gr-osmosdr,
|
||||
including Funcube Dongle, RTL-SDR, Airspy, HackRF, BladeRF,
|
||||
RFSpace, USRP and SoapySDR.
|
||||
|
||||
Gqrx can operate as an AM/FM/SSB receiver with audio output or as
|
||||
an FFT-only instrument. There are also various hooks for
|
||||
interacting with external application using nertwork sockets."""
|
||||
|
||||
homepage = "https://gqrx.dk/"
|
||||
url = "https://github.com/csete/gqrx/archive/v2.13.1.tar.gz"
|
||||
|
||||
maintainers = ['aweits']
|
||||
|
||||
version('2.13.1', sha256='08b7b930bed00c6ac79330695c24919a9d779112e1a3dd37d22cc9ee38561e82')
|
||||
depends_on('cmake@3.2.0:', type='build')
|
||||
depends_on('gnuradio')
|
||||
depends_on('pkgconfig', type='build')
|
||||
depends_on('gr-osmosdr')
|
||||
depends_on('qt')
|
||||
depends_on('pulseaudio')
|
37
var/spack/repos/builtin/packages/gr-osmosdr/package.py
Normal file
37
var/spack/repos/builtin/packages/gr-osmosdr/package.py
Normal file
@ -0,0 +1,37 @@
|
||||
# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
|
||||
# Spack Project Developers. See the top-level COPYRIGHT file for details.
|
||||
#
|
||||
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||
|
||||
|
||||
class GrOsmosdr(CMakePackage):
|
||||
"""While primarily being developed for the OsmoSDR hardware, this
|
||||
block as well supports:
|
||||
|
||||
FunCube Dongle through libgnuradio-fcd,
|
||||
FUNcube Dongle Pro+ through gr-fcdproplus,
|
||||
sysmocom OsmoSDR Devices through libosmosdr,
|
||||
Nuand LLC bladeRF through libbladeRF library,
|
||||
Great Scott Gadgets HackRF through libhackrf,
|
||||
Ettus USRP Devices through Ettus UHD library,
|
||||
Fairwaves UmTRX through Fairwaves' fork of Ettus' UHD library,
|
||||
RFSPACE SDR-IQ, SDR-IP, NetSDR (incl. X2 option),
|
||||
RTL2832U based DVB-T dongles through librtlsdr,
|
||||
RTL-TCP spectrum server (see librtlsdr project),
|
||||
MSi2500 based DVB-T dongles through libmirisdr,
|
||||
SDRplay RSP through SDRplay API library,
|
||||
AirSpy R820t dongles through libairspy,
|
||||
gnuradio .cfile input through libgnuradio-blocks"""
|
||||
|
||||
homepage = "https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR"
|
||||
url = "https://github.com/osmocom/gr-osmosdr/archive/v0.2.2.tar.gz"
|
||||
|
||||
maintainers = ['aweits']
|
||||
|
||||
variant('hackrf', default=True, description='Support HackRF Hardware')
|
||||
|
||||
version('0.2.2', sha256='5a7ce7afee38a56191b5d16cb4a91c92476729ff16ed09cbba5a3851ac619713')
|
||||
|
||||
depends_on('gnuradio')
|
||||
depends_on('swig', type='build')
|
||||
depends_on('hackrf-host', when='+hackrf')
|
22
var/spack/repos/builtin/packages/hackrf-host/package.py
Normal file
22
var/spack/repos/builtin/packages/hackrf-host/package.py
Normal file
@ -0,0 +1,22 @@
|
||||
# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
|
||||
# Spack Project Developers. See the top-level COPYRIGHT file for details.
|
||||
#
|
||||
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||
|
||||
|
||||
class HackrfHost(CMakePackage):
|
||||
"""Software for HackRF, a low cost, open source Software Defined
|
||||
Radio platform."""
|
||||
|
||||
homepage = "https://github.com/mossmann/hackrf"
|
||||
url = "https://github.com/mossmann/hackrf/archive/v2018.01.1.tar.gz"
|
||||
|
||||
maintainers = ['aweits']
|
||||
|
||||
root_cmakelists_dir = 'host'
|
||||
|
||||
version('2018.01.1', sha256='84dbb5536d3aa5bd6b25d50df78d591e6c3431d752de051a17f4cb87b7963ec3')
|
||||
|
||||
depends_on('cmake@2.8.12:', type='build')
|
||||
depends_on('libusb@1.0.18:')
|
||||
depends_on('fftw@3.3.5:')
|
16
var/spack/repos/builtin/packages/log4cpp/package.py
Normal file
16
var/spack/repos/builtin/packages/log4cpp/package.py
Normal file
@ -0,0 +1,16 @@
|
||||
# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
|
||||
# Spack Project Developers. See the top-level COPYRIGHT file for details.
|
||||
#
|
||||
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||
|
||||
|
||||
class Log4cpp(AutotoolsPackage):
|
||||
"""Log4cpp is library of C++ classes for flexible logging to
|
||||
files, syslog, IDSA and other destinations. It is modeled after
|
||||
the Log4j Java library, staying as close to their API as is
|
||||
reasonable."""
|
||||
|
||||
homepage = "http://log4cpp.sourceforge.net/"
|
||||
url = "http://sourceforge.net/projects/log4cpp/files/log4cpp-1.1.3.tar.gz"
|
||||
|
||||
version('1.1.3', sha256='2cbbea55a5d6895c9f0116a9a9ce3afb86df383cd05c9d6c1a4238e5e5c8f51d')
|
30
var/spack/repos/builtin/packages/volk/package.py
Normal file
30
var/spack/repos/builtin/packages/volk/package.py
Normal file
@ -0,0 +1,30 @@
|
||||
# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
|
||||
# Spack Project Developers. See the top-level COPYRIGHT file for details.
|
||||
#
|
||||
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||
|
||||
|
||||
class Volk(CMakePackage):
|
||||
"""VOLK is the Vector-Optimized Library of Kernels. It is a
|
||||
library that contains kernels of hand-written SIMD code for
|
||||
different mathematical operations. Since each SIMD architecture
|
||||
can be very different and no compiler has yet come along to handle
|
||||
vectorization properly or highly efficiently, VOLK approaches the
|
||||
problem differently.
|
||||
|
||||
For each architecture or platform that a developer wishes to
|
||||
vectorize for, a new proto-kernel is added to VOLK. At runtime,
|
||||
VOLK will select the correct proto-kernel. In this way, the users
|
||||
of VOLK call a kernel for performing the operation that is
|
||||
platform/architecture agnostic. This allows us to write portable
|
||||
SIMD code."""
|
||||
|
||||
homepage = "https://github.com/gnuradio/volk"
|
||||
url = "https://github.com/gnuradio/volk/archive/v2.3.0.tar.gz"
|
||||
|
||||
maintainers = ['aweits']
|
||||
|
||||
version('2.3.0', sha256='f42c928f561b128acfe4adb21227e4a62a3f6ab8103592fc3233765ff326d5fc')
|
||||
|
||||
depends_on('python@3.4:', type=('build', 'run'))
|
||||
depends_on('py-mako@0.4.2:', type=('build', 'run'))
|
Loading…
Reference in New Issue
Block a user