Sisyphus repositório
Última atualização: 1 outubro 2023 | SRPMs: 18631 | Visitas: 37046957
en ru br
ALT Linux repositórios
S:3.10.7.0-alt1

Group :: Engineering
RPM: gnuradio

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs e FR  Repocop 

# Unpackaged files in buildroot should terminate build
%define _unpackaged_files_terminate_build 1

%def_disable docs
%def_enable tests

%define _libexec %prefix/libexec

Name: gnuradio
Version: 3.10.7.0
Release: alt1
Summary: Software defined radio framework
License: GPLv2+
Group: Engineering
Url: http://www.gnuradio.org

Source: %name-%version.tar
Patch0: fix-gnuradio-qtgui.pc.patch

# uhd not available for i586, armh

ExcludeArch: %ix86 %arm

%add_python3_path %_datadir/%name
%add_findreq_skiplist %_datadir/%name/examples/*.grc

BuildRequires(pre): rpm-macros-cmake rpm-macros-python3
BuildRequires: rpm-build-python3 rpm-build-gir
BuildRequires: gcc-c++ cmake
BuildRequires: liborc-devel
BuildRequires: libgtk+3-gir-devel
BuildRequires: libgmpxx-devel
BuildRequires: boost-filesystem-devel
BuildRequires: boost-interprocess-devel
BuildRequires: boost-program_options-devel
BuildRequires: libgsm-devel
BuildRequires: qt5-base-devel
BuildRequires: liblog4cpp-devel
BuildRequires: mpir-devel
BuildRequires: libqwt6-qt5-devel
BuildRequires: libzeromq-cpp-devel
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(codec2)
BuildRequires: pkgconfig(comedilib)
BuildRequires: pkgconfig(fftw3f)
BuildRequires: pkgconfig(gsl)
BuildRequires: pkgconfig(jack)
BuildRequires: pkgconfig(portaudio-2.0)
#BuildRequires: pkgconfig(thrift)
BuildRequires: pkgconfig(uhd)
BuildRequires: libSDL-devel
BuildRequires: libvolk-devel
BuildRequires: python3-devel
BuildRequires: python3-module-yaml
BuildRequires: python3-module-mako
BuildRequires: python3-module-lxml
BuildRequires: python3-module-numpy
BuildRequires: python3-module-pygobject3-devel
BuildRequires: python3-module-pycairo-devel
BuildRequires: python3-module-PyQt5
BuildRequires: python3-module-click-plugins
BuildRequires: python3-module-pyqtgraph
BuildRequires: python3-module-scipy-devel
BuildRequires: pybind11-devel
BuildRequires: libsndfile-devel
BuildRequires: libunwind-devel
BuildRequires: mpir-devel
BuildRequires: libgmp-devel
BuildRequires: libnumpy-py3-devel
BuildRequires: doxygen
#BuildRequires: texlive
BuildRequires: libspdlog-devel
BuildRequires: SoapySDR-devel

%if_enabled tests
BuildRequires: pkgconfig(cppunit)
%endif #tests
%if_enabled docs
BuildRequires: doxygen python3-module-sphinx
BuildRequires: /usr/bin/latex /usr/bin/dvips tex(dvips.def)
%endif #docs
BuildRequires: desktop-file-utils xdg-utils
%add_python3_req_skip PyQt5.Qwt
%add_python3_req_skip gnuradio.ctrlport.GNURadio

Obsoletes: gnuradio-data < 3.8
Obsoletes: libgnuradio < 3.8
Obsoletes: gnuradio-examples < 3.9.2.0-alt2

%description
GNU Radio is a collection of software that when combined with minimal
hardware, allows the construction of radios where the actual waveforms
transmitted and received are defined by software. What this means is
that it turns the digital modulation schemes used in today's high
performance wireless devices into software problems.

%package docs
Summary: GNU Radio Documentation
Group: Engineering
Buildarch: noarch
Requires: %name = %EVR

%description docs
GNU Radio Documentation.

%package devel
Group: Development/C++
Summary: GNU Radio Headers
Requires: %name = %EVR
Requires: cmake boost-program_options-devel
Provides: libgnuradio-devel = %EVR

%description devel
GNU Radio Headers.

%prep
%setup
%autopatch -p1

%build
%cmake \
-DENABLE_INTERNAL_VOLK=OFF \
-DGR_PYTHON_DIR=%python3_sitelibdir \
-DPYTHON_EXECUTABLE=%__python3 \
%if_enabled tests
-DENABLE_TESTING=ON
%else
-DENABLE_TESTING=OFF
%endif #tests
%cmake_build

%install
%cmakeinstall_std

# remove verify_elf problem files

rm %buildroot%_datadir/%name/examples/audio/dial_tone
rm %buildroot%_datadir/%name/examples/qt-gui/display_qt
rm %buildroot%_datadir/%name/examples/uhd/tags_demo

# fix *.grc files permissions

find %buildroot%_datadir/ -name '*.grc' | xargs \
chmod 644

# fix shebang

find %buildroot%_datadir/%name -name '*.py' | xargs sed -i \
-e 's:/usr/bin/env python$:%__python3:'

# desktop file

desktop-file-install --dir=%buildroot%_datadir/applications \
 grc/scripts/freedesktop/gnuradio-grc.desktop
# mime
install -Dp grc/scripts/freedesktop/gnuradio-grc.xml \
 %buildroot%_datadir/mime/packages/gnuradio-grc.xml
# metainfo
install -Dp grc/scripts/freedesktop/org.gnuradio.grc.metainfo.xml \
 %buildroot%_datadir/metainfo/org.gnuradio.grc.metainfo.xml
# icons
for i in 16 24 32 48 64 128 256; do
 install -Dp grc/scripts/freedesktop/grc-icon-${i}.png \
   %buildroot%_datadir/icons/hicolor/${i}x${i}/apps/gnuradio-grc.png
done

%files
%_bindir/*
%_sysconfdir/%name
%_iconsdir/hicolor/*/apps/gnuradio-grc.png
%_desktopdir/gnuradio-grc.desktop
%_datadir/mime/packages/*
%_libdir/*.so.*
%_datadir/%name
%_docdir/%name-%version
%python3_sitelibdir/%name
%python3_sitelibdir/pmt
%if_enabled docs
%exclude %_docdir/%name-%version/xml
%exclude %_docdir/%name-%version/html
%endif #docs
%_datadir/metainfo/org.gnuradio.grc.metainfo.xml
%_man1dir/*.1.*

%if_enabled docs
%files docs
%_docdir/%name-%version/xml
%_docdir/%name-%version/html
%endif #docs

%files devel
%_libdir/*.so
%_libdir/cmake/%name
%_includedir/%name
%_includedir/pmt
%_pkgconfigdir/*.pc

%changelog

Todas as alterações você pod ver aqui

 
projeto & código: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
mantenedor atual: Michael Shigorin
mantenedor da tradução: Fernando Martini aka fmartini © 2009