Blob Blame History Raw
# Pull from git
%global git_tag release_003_003_001

# git clone git://code.ettus.com/ettus/uhd.git
# cd uhd
# git archive --format=tar --prefix=%%{name}-%%{version}/ %%{git_tag} | \
# gzip > ../%%{name}-%%{version}.tar.gz

Name:           uhd
URL:            http://code.ettus.com/redmine/ettus/projects/uhd/wiki
Version:        3.3.1
Release:        4%{?dist}
License:        GPLv3+
BuildRequires:  cmake
BuildRequires:  boost-devel libusb1-devel python-cheetah
BuildRequires:  docutils doxygen pkgconfig
Requires(pre):  shadow-utils
Requires:       tkinter
Group:          Applications/Engineering
Summary:        Universal Hardware Driver for Ettus Research products
Source0:        %{name}-%{version}.tar.gz
Source1:        %{name}-limits.conf

%description
The UHD is the universal hardware driver for Ettus Research products.
The goal of the UHD is to provide a host driver and API for current and
future Ettus Research products. It can be used standalone without GNU Radio.

%prep
%setup -q

%build
mkdir host/build
cd host/build
%cmake ../
make %{?_smp_mflags}

%check
cd host/build
make test

%install
pushd host/build
make install DESTDIR=%{buildroot}

# Fix udev rules and allow access only to users in usrp group
sed -i 's/BUS==/SUBSYSTEM==/;s/SYSFS{/ATTRS{/;s/MODE:="0666"/GROUP:="usrp", MODE:="0660"/' %{buildroot}%{_datadir}/uhd/utils/uhd-usrp.rules
mkdir -p %{buildroot}%{_sysconfdir}/udev/rules.d
mv %{buildroot}%{_datadir}/uhd/utils/uhd-usrp.rules %{buildroot}%{_sysconfdir}/udev/rules.d/10-usrp-uhd.rules

# Remove binaries for tests, examples
rm -rf %{buildroot}%{_datadir}/uhd/{tests,examples}

# Move the utils stuff to libexec dir
mkdir -p %{buildroot}%{_libexecdir}/uhd
mv %{buildroot}%{_datadir}/uhd/utils/* %{buildroot}%{_libexecdir}/uhd

popd
# Package base docs to base package
mkdir _tmpdoc
mv %{buildroot}%{_docdir}/%{name}/{AUTHORS.txt,LICENSE.txt,README.txt} _tmpdoc

install -m 644 -D %{SOURCE1} %{buildroot}%{_sysconfdir}/security/limits.d/99-usrp.conf

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

%package devel
Summary:        Development files for UHD
Group:          Applications/Engineering
Requires:       %{name} = %{version}-%{release}

%description devel
Development files for the Universal Hardware Driver (UHD).

%package doc
Summary:        Documentation files for UHD
Group:          Applications/Engineering
BuildArch:      noarch

%description doc
Documentation for the Universal Hardware Driver (UHD).

%pre
getent group usrp >/dev/null || groupadd -r usrp >/dev/null

%files
%doc _tmpdoc/*
%{_bindir}/uhd_find_devices
%{_bindir}/uhd_usrp_probe
%config(noreplace) %{_sysconfdir}/udev/rules.d/10-usrp-uhd.rules
%config(noreplace) %{_sysconfdir}/security/limits.d/*.conf
%{_libdir}/lib*.so.*
%{_libexecdir}/uhd

%files devel
%{_includedir}/*
%{_libdir}/lib*.so
%{_libdir}/pkgconfig/*.pc

%files doc
%doc %{_docdir}/%{name}/*

%changelog
* Tue Feb 28 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.3.1-4
- Rebuilt for c++ ABI breakage

* Fri Feb 10 2012 Jaroslav Škarvada <jskarvad@redhat.com> - 3.3.1-3
- Allowed UHD to boost the thread's scheduling priority
  Resolves: rhbz#781540

* Wed Jan 11 2012 Jaroslav Škarvada <jskarvad@redhat.com> - 3.3.1-2
- Minor tweaks to %%pre scriptlet
- Fixed udev rules
- Added tkinter requires
  Resolves: rhbz#769678

* Fri Dec  2 2011 Jaroslav Škarvada <jskarvad@redhat.com> - 3.3.1-1
- New version

* Thu Dec  1 2011 Jaroslav Škarvada <jskarvad@redhat.com> - 3.3.0-3
- Updated summary to be more descriptive

* Wed Nov 30 2011 Jaroslav Škarvada <jskarvad@redhat.com> - 3.3.0-2
- Fixed according to reviewer comments

* Tue Nov 01 2011 Jaroslav Škarvada <jskarvad@redhat.com> - 3.3.0-1
- Initial version