mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-18 22:54:00 +00:00
108 lines
3.8 KiB
Bash
108 lines
3.8 KiB
Bash
# Maintainer: Kyle Keen <keenerd@gmail.com>
|
|
# Contributor: Dominik Heidler <dheidler@gmail.com>
|
|
# Contributor: Jonatan Sastre <jsastreh [ at ] hotmail.com>
|
|
|
|
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
|
|
# - set -Dhave_mfpu_neon=0 for v5/v6
|
|
|
|
pkgbase=gnuradio
|
|
pkgname=(gnuradio gnuradio-companion)
|
|
pkgver=3.8.0.0
|
|
pkgrel=6
|
|
pkgdesc="General purpose DSP and SDR toolkit. With drivers for usrp and fcd."
|
|
arch=('x86_64')
|
|
url="https://gnuradio.org"
|
|
license=('GPL')
|
|
depends=('fftw' 'python-numpy' 'gsl' 'blas' 'boost-libs>=1.53'
|
|
'libusbx' 'portaudio' 'libuhd' 'zeromq' 'libvolk' 'log4cpp' 'python-yaml'
|
|
'gmp' 'gsm' 'codec2' 'python-mako' 'python-click-plugins')
|
|
makedepends=('boost' 'cmake' 'python-lxml' 'glu' 'swig' 'python-gobject'
|
|
'qwt' 'python-pyqt5' 'python-cairo')
|
|
|
|
# todo
|
|
# split the gui components?
|
|
# build doxygen docs?
|
|
# gr-video-sdl ?
|
|
# icons
|
|
# add thrift?
|
|
|
|
# zeroc-ice: gr-ctrlport
|
|
# doxygen: C++ autogenerated documentation
|
|
# python-sphinx: Python autogenerated documentation
|
|
|
|
# secret release directory
|
|
#source=("http://s3-dist.gnuradio.org/gnuradio-$pkgver.tar.gz"
|
|
# neglected official release directory
|
|
#source=("https://gnuradio.org/releases/$pkgbase/$pkgbase-$pkgver.tar.gz"
|
|
source=("https://github.com/gnuradio/gnuradio/releases/download/v$pkgver/gnuradio-$pkgver.tar.gz"
|
|
"https://github.com/gnuradio/gnuradio/releases/download/v$pkgver/gnuradio-$pkgver.tar.gz.asc"
|
|
"21-fcd.rules")
|
|
validpgpkeys=('B90DDFAC56989BF62262EB812987C77CBB8ED9B2' # GNU Radio Project
|
|
'D74F9F146E7F755783583158B343B2BA293E5174') # Marcus Müller
|
|
md5sums=('85e1ed4b18c46227731d83f8c3fbe45a'
|
|
'SKIP'
|
|
'465e12c454c6a22ebec9849181af7bdc')
|
|
|
|
prepare() {
|
|
cd "$srcdir/$pkgbase-$pkgver"
|
|
sed -i -e "s|GR_PKG_LIBEXEC_DIR|GR_RUNTIME_DIR|" grc/scripts/freedesktop/CMakeLists.txt
|
|
#sed -i -e "s|/qwt$|/qwt5|" -e "s| qwt | qwt5 |" cmake/Modules/FindQwt.cmake
|
|
sed -i -e "s| sphinx-build$| sphinx-build2|" cmake/Modules/FindSphinx.cmake
|
|
}
|
|
|
|
build() {
|
|
export PYTHON=python3
|
|
[[ $CARCH == "arm" || $CARCH == "armv6h" ]] && NEON="-Dhave_mfpu_neon=0"
|
|
cd "$srcdir/$pkgbase-$pkgver"
|
|
mkdir -p build
|
|
cd build
|
|
cmake \
|
|
-DPYTHON_EXECUTABLE=$(which python3) \
|
|
-DPYTHON_INCLUDE_DIR=/usr/include/python3.8 \
|
|
-DPYTHON_LIBRARY=/usr/lib/libpython3.8.so \
|
|
-DGR_PYTHON_DIR=/usr/lib/python3.8/site-packages \
|
|
-DENABLE_INTERNAL_VOLK=OFF \
|
|
-DENABLE_GRC=ON \
|
|
-DENABLE_GR_QTGUI=ON \
|
|
-DQWT_LIBRARIES=/usr/lib/libqwt.so \
|
|
-DCMAKE_INSTALL_PREFIX=/usr -Wno-dev $NEON ../
|
|
make
|
|
}
|
|
|
|
check() {
|
|
cd "$srcdir/$pkgbase-$pkgver/build"
|
|
export PYTHON=python3
|
|
#make test
|
|
}
|
|
|
|
package_gnuradio() {
|
|
optdepends=('boost: gr_modtool'
|
|
'swig: gr_modtool'
|
|
'cmake: gr_modtool'
|
|
'pkgconfig: libuhd')
|
|
cd "$srcdir"
|
|
install -Dm644 21-fcd.rules "$pkgdir/usr/lib/udev/rules.d/21-fcd.rules"
|
|
cd "$srcdir/$pkgbase-$pkgver/grc/scripts/freedesktop"
|
|
install -Dm644 gnuradio-grc.desktop "$pkgdir/usr/share/applications/gnuradio-grc.desktop"
|
|
cd "$srcdir/$pkgbase-$pkgver/build"
|
|
make DESTDIR="$pkgdir" install
|
|
}
|
|
|
|
package_gnuradio-companion() {
|
|
pkgdesc="GUI frontend for gnuradio and SDR."
|
|
depends=('gnuradio' 'qwt' 'python-lxml'
|
|
'python-opengl' 'python-cairo' 'python-pyqt5')
|
|
# Yup, nothing in the package except dependencies,
|
|
# because more than five optdeps is too many for most people.
|
|
}
|
|
|
|
# options for armv6:
|
|
# -Dhave_mfpu_neon=0 \
|
|
# -DCMAKE_CXX_FLAGS:STRING="-march=armv6 -mfpu=vfp -mfloat-abi=hard" \
|
|
# -DCMAKE_C_FLAGS:STRING="-march=armv6 -mfpu=vfp -mfloat-abi=hard" \
|
|
|
|
# options for armv7:
|
|
# -DCMAKE_CXX_FLAGS:STRING="-march=armv7-a -mcpu=cortex-a9 -mfpu=neon -mfloat-abi=hard"
|
|
# -DCMAKE_C_FLAGS:STRING="-march=armv7-a -mcpu=cortex-a9 -mfpu=neon -mfloat-abi=hard"
|
|
# line 341 add /usr/lib/arm-linux-gnueabihf /usr/lib/arm-linux-gnueabi
|
|
|