+#
+# Conditional build:
+%bcond_with verify # database verification
+%bcond_without verbose # verbose build (V=1)
+
Summary: udev helper: Central Regulatory Domain Agent
+Summary(pl.UTF-8): Program pomocniczy udev: Central Regulatory Domain Agent
Name: crda
-Version: 1.1.1
-Release: 3
+Version: 3.18
+Release: 2
License: ISC
Group: Networking/Daemons
-Source0: http://wireless.kernel.org/download/crda/%{name}-%{version}.tar.bz2
-# Source0-md5: 5fc77af68b3e21736b8ef2f8b061c810
+Source0: https://www.kernel.org/pub/software/network/crda/%{name}-%{version}.tar.xz
+# Source0-md5: 0431fef3067bf503dfb464069f06163a
+Patch0: %{name}-regdb.patch
+Patch1: %{name}-destdir.patch
+Patch2: %{name}-link.patch
+URL: http://wireless.kernel.org/en/developers/Regulatory/CRDA
BuildRequires: libgcrypt-devel
-BuildRequires: libnl-devel >= 1:3.0
+BuildRequires: libnl-devel >= 1:3.2
+BuildRequires: pkgconfig
BuildRequires: python
BuildRequires: python-M2Crypto
-BuildRequires: wireless-regdb
+BuildRequires: python-modules
+%{?with_verify:BuildRequires: wireless-regdb}
+BuildRequires: tar >= 1:1.22
+BuildRequires: xz
+Requires: %{name}-libs = %{version}-%{release}
Requires: udev-core
Requires: wireless-regdb
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
CRDA acts as the udev helper for communication between the kernel and
-userspace for regulatory compliance. It relies on nl80211 for
+userspace for wireless regulatory compliance. It relies on nl80211 for
communication. CRDA is intended to be run only through udev
communication from the kernel. The user should never have to run it
manually except if debugging udev issues.
+%description -l pl.UTF-8
+CRDA działa jako program pomocniczy udev do komunikacji między jądrem
+a przestrzenią użytkownika w celu zgodności łączności bezprzewodowej z
+przepisami. Na potrzeby komunikacji polega na nl80211. CRDA jest
+przeznaczone do uruchamiania wyłącznie poprzez udev. Użytkownik nigdy
+nie powinien wywoływać go ręcznie, chyba że w celach diagnostyki udev.
+
+%package libs
+Summary: CRDA libreg shared library
+Summary(pl.UTF-8): Biblioteka współdzielona CRDA libreg
+Group: Libraries
+
+%description libs
+CRDA libreg shared library.
+
+%description libs -l pl.UTF-8
+Biblioteka współdzielona CRDA libreg.
+
+%package devel
+Summary: Header files for CRDA libreg library
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki CRDA libreg
+Group: Development/Libraries
+Requires: %{name}-libs = %{version}-%{release}
+
+%description devel
+Header files for CRDA libreg library.
+
+%description devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki CRDA libreg.
+
%prep
%setup -q
-
-sed -i -e 's#libnl-2#libnl-3#g' -e 's#-lnl-genl#-lnl-genl-3#g' Makefile
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
%build
+CFLAGS="%{rpmcflags} %{rpmcppflags}" \
%{__make} \
- V=1 \
CC="%{__cc}" \
- CFLAGS="%{rpmcflags} %{rpmcppflags} -DCONFIG_LIBNL20=1 `pkg-config --cflags libnl-3.0`" \
- REG_BIN=%{_datadir}/crda/regulatory.bin
+ %{?with_verbose:V=1} \
+%if %{with verify}
+ REG_BIN=%{_datadir}/crda/regulatory.bin \
+%else
+ all_noverify \
+%endif
%install
rm -rf $RPM_BUILD_ROOT
-
%{__make} install \
- DESTDIR=$RPM_BUILD_ROOT
+ %{?with_verbose:V=1} \
+ DESTDIR=$RPM_BUILD_ROOT \
+ LIBDIR=/%{_lib}
%clean
rm -rf $RPM_BUILD_ROOT
+%post libs -p /sbin/ldconfig
+%postun libs -p /sbin/ldconfig
+
%files
%defattr(644,root,root,755)
-%doc README
+%doc LICENSE README
%attr(755,root,root) /sbin/crda
%attr(755,root,root) /sbin/regdbdump
-%{_mandir}/man8/*
+%{_mandir}/man8/crda.8*
+%{_mandir}/man8/regdbdump.8*
/lib/udev/rules.d/85-regulatory.rules
+
+%files libs
+%defattr(644,root,root,755)
+%attr(755,root,root) /%{_lib}/libreg.so
+
+%files devel
+%defattr(644,root,root,755)
+%{_includedir}/reglib