]> git.pld-linux.org Git - packages/unbound.git/blame - unbound.spec
- rel 5; fix build
[packages/unbound.git] / unbound.spec
CommitLineData
ca75cd40 1#
89d05c6c
JB
2# Conditional build:
3%bcond_without python # Python binding
60c650ce 4%bcond_with dnstap # dnstap replication support
2b3ec506 5%bcond_with systemd # systemd support
d970dbd1 6%bcond_without tests
89d05c6c
JB
7#
8Summary: Recursive, validating DNS resolver
9Summary(pl.UTF-8): Rekurencyjny, weryfikujący resolver DNS
ca75cd40 10Name: unbound
4b05911c 11Version: 1.6.8
96ba5edb 12Release: 5
ca75cd40 13License: BSD
89d05c6c 14Group: Applications/Network
ca75cd40 15Source0: http://www.unbound.net/downloads/%{name}-%{version}.tar.gz
4b05911c 16# Source0-md5: c9d26cef224b10705229d5072142636c
cda91157 17Source1: %{name}.init
0ddfe461
JK
18Source2: %{name}.service
19Source3: https://data.iana.org/root-anchors/icannbundle.pem
032fe745 20# Source3-md5: 24a426d59b61524623695f1b849f159b
0ddfe461 21Source4: ftp://ftp.internic.net/domain/named.cache
4b05911c 22# Source4-md5: f4a35c0015a679d1605c18d40aad7506
b53232e5 23Patch0: %{name}-default_trust_anchor.patch
f33b27d4 24Patch1: %{name}-sh.patch
05a660e9 25Patch2: %{name}-pythondir.patch
2b3ec506 26Patch3: %{name}-flex.patch
ca75cd40 27URL: http://unbound.net/
f33b27d4
JB
28BuildRequires: autoconf >= 2.56
29BuildRequires: automake
2b3ec506 30BuildRequires: bison
89d05c6c 31BuildRequires: expat-devel
2b3ec506 32BuildRequires: flex
60c650ce 33%{?with_dnstap:BuildRequires: fstrm-devel}
5ec53429 34BuildRequires: libevent-devel
f33b27d4
JB
35BuildRequires: libtool
36BuildRequires: openssl-devel >= 1.0
60c650ce 37%{?with_dnstap:BuildRequires: protobuf-c-devel}
2b3ec506
JB
38BuildRequires: rpmbuild(macros) >= 1.671
39%{?with_systemd:BuildRequires: systemd-devel}
89d05c6c
JB
40%if %{with python}
41BuildRequires: python-devel >= 1:2.4.0
42BuildRequires: swig-python
43%endif
5946fd51 44Provides: user(unbound)
2b3ec506 45Requires(post,preun): /sbin/chkconfig
5946fd51
AM
46Requires(postun): /usr/sbin/userdel
47Requires(pre): /bin/id
48Requires(pre): /usr/sbin/useradd
0ddfe461 49Requires: systemd-units >= 38
89d05c6c 50Requires: %{name}-libs = %{version}-%{release}
ca75cd40 51BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
52
53%description
54Unbound is a validating, recursive, and caching DNS resolver.
55
56The C implementation of Unbound is developed and maintained by NLnet
89d05c6c 57Labs. It is based on ideas and algorithms taken from a Java prototype
ca75cd40 58developed by Verisign labs, Nominet, Kirei and ep.net.
59
60Unbound is designed as a set of modular components, so that also
61DNSSEC (secure DNS) validation and stub-resolvers (that do not run as
62a server, but are linked into an application) are easily possible.
63
89d05c6c
JB
64%description -l pl.UTF-8
65Unbound to weryfikujący, rekurencyjny i cache'ujący resolver (kod
66rozwiązujący nazwy) DNS.
67
68Implementacja Unbound w C jest tworzona i utrzymywana przez NLnet
69Labs. Jest oparta na pomysłach i algorytmach zaczerpniętych z
70prototypu w Javie stworzonego przez Verisign Labs, Nominet, Kirei oraz
71ep.net.
72
73Unbound został zaprojektowany jako zbiór modularnych komponentów, więc
74możliwe są także weryfikacja DNSSEC (bezpieczny DNS) oraz
75resolvery-zaślepki (nie działające jako serwer, ale wbudowane w
76aplikację).
77
78%package libs
79Summary: Unbound shared library
80Summary(pl.UTF-8): Biblioteka współdzielona Unbound
81Group: Libraries
82Conflicts: unbound < 1.4.18-1
83
84%description libs
85Unbound shared library.
86
87%description libs -l pl.UTF-8
88Biblioteka współdzielona Unbound.
89
ca75cd40 90%package devel
91Summary: Header files for unbound library
92Summary(pl.UTF-8): Pliki nagłówkowe biblioteki unbound
93Group: Development/Libraries
89d05c6c 94Requires: %{name}-libs = %{version}-%{release}
89d05c6c 95Requires: openssl-devel
ca75cd40 96
97%description devel
98Header files for unbound library.
99
100%description devel -l pl.UTF-8
101Pliki nagłówkowe biblioteki unbound.
102
103%package static
104Summary: Static unbound library
105Summary(pl.UTF-8): Statyczna biblioteka unbound
106Group: Development/Libraries
107Requires: %{name}-devel = %{version}-%{release}
108
109%description static
110Static unbound library.
111
112%description static -l pl.UTF-8
113Statyczna biblioteka unbound.
114
89d05c6c
JB
115%package -n python-unbound
116Summary: Python interface to unbound library
117Summary(pl.UTF-8): Pythonowy interfejs do biblioteki unbound
118Group: Python/Libraries
119Requires: %{name}-libs = %{version}-%{release}
120
121%description -n python-unbound
122Python interface to unbound library.
123
124%description -n python-unbound -l pl.UTF-8
125Pythonowy interfejs do biblioteki unbound.
126
ca75cd40 127%prep
128%setup -q
b53232e5 129%patch0 -p1
f33b27d4 130%patch1 -p1
05a660e9 131%patch2 -p1
2b3ec506 132%patch3 -p1
ca75cd40 133
134%build
f33b27d4
JB
135%{__libtoolize}
136%{__aclocal}
137%{__autoconf}
138%{__autoheader}
89d05c6c 139%configure \
60c650ce 140 %{?with_dnstap:--enable-dnstap} \
2b3ec506 141 %{?with_systemd:--enable-systemd} \
e5f6e160
JK
142 %{__with_without python pyunbound} \
143 %{__with_without python pythonmodule} \
0ddfe461 144 --with-pidfile=/run/%{name}.pid \
267353b4 145 --with-chroot-dir="" \
0ddfe461
JK
146 --with-conf-file=%{_sysconfdir}/%{name}/%{name}.conf \
147 --with-rootkey-file=/var/lib/%{name}/root.key \
148 --with-rootcert-file=%{_sysconfdir}/%{name}/icannbundle.pem
149
ca75cd40 150%{__make}
151
152%install
153rm -rf $RPM_BUILD_ROOT
0ddfe461 154install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{systemdunitdir},/var/lib/%{name}}
ca75cd40 155
156%{__make} install \
157 DESTDIR=$RPM_BUILD_ROOT
158
0ddfe461
JK
159install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
160install %{SOURCE2} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}.service
161install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/icannbundle.pem
162install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/named.cache
163
164touch $RPM_BUILD_ROOT/var/lib/%{name}/root.key
165
89d05c6c 166%if %{with python}
42c66384 167%{__rm} $RPM_BUILD_ROOT%{py_sitedir}/_unbound.la
89d05c6c
JB
168%py_comp $RPM_BUILD_ROOT%{py_sitedir}
169%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
170%py_postclean
171%endif
172
d970dbd1
AM
173%if %{with tests}
174%{__make} check
175%endif
176
ca75cd40 177%clean
178rm -rf $RPM_BUILD_ROOT
179
ca75cd40 180%post
181/sbin/chkconfig --add %{name}
0ddfe461 182%systemd_post %{name}.service
ca75cd40 183%service %{name} restart
184
5c77fe31
AM
185%pre
186%useradd -u 196 -g 99 -d /tmp -s /bin/false -c "unbound user" unbound
187
ca75cd40 188%preun
189if [ "$1" = "0" ]; then
190 %service -q %{name} stop
191 /sbin/chkconfig --del %{name}
192fi
0ddfe461 193%systemd_preun %{name}.service
ca75cd40 194
5c77fe31
AM
195%postun
196if [ "$1" = "0" ]; then
197 %userremove unbound
198fi
0ddfe461
JK
199%systemd_reload
200
201%triggerpostun -- %{name} < 1.4.22-1
202%systemd_trigger %{name}.service
5c77fe31 203
89d05c6c
JB
204%post libs -p /sbin/ldconfig
205%postun libs -p /sbin/ldconfig
206
ca75cd40 207%files
208%defattr(644,root,root,755)
89d05c6c 209%doc doc/{CREDITS,Changelog,FEATURES,LICENSE,README,TODO,control_proto_spec.txt,example.conf,ietf67-design-02.pdf,requirements.txt}
cda91157 210%attr(754,root,root) /etc/rc.d/init.d/unbound
0ddfe461 211%{systemdunitdir}/%{name}.service
783ab43a 212%dir %{_sysconfdir}/%{name}
213%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/unbound.conf
0ddfe461
JK
214%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/named.cache
215%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/icannbundle.pem
ca75cd40 216%attr(755,root,root) %{_sbindir}/unbound
511c7cae 217%attr(755,root,root) %{_sbindir}/unbound-anchor
ca75cd40 218%attr(755,root,root) %{_sbindir}/unbound-checkconf
5ec53429 219%attr(755,root,root) %{_sbindir}/unbound-control*
ca75cd40 220%attr(755,root,root) %{_sbindir}/unbound-host
221%{_mandir}/man1/unbound-host.1*
222%{_mandir}/man5/unbound.conf.5*
223%{_mandir}/man8/unbound-checkconf.8*
224%{_mandir}/man8/unbound.8*
511c7cae 225%{_mandir}/man8/unbound-anchor.8*
379d3e5e 226%{_mandir}/man8/unbound-control*.8*
0ddfe461
JK
227%dir %attr(755,unbound,nobody) /var/lib/%{name}
228%ghost /var/lib/%{name}/root.key
ca75cd40 229
89d05c6c
JB
230%files libs
231%defattr(644,root,root,755)
232%attr(755,root,root) %{_libdir}/libunbound.so.*.*.*
233%attr(755,root,root) %ghost %{_libdir}/libunbound.so.2
234
ca75cd40 235%files devel
cda91157 236%defattr(644,root,root,755)
89d05c6c 237%attr(755,root,root) %{_libdir}/libunbound.so
ca75cd40 238%{_libdir}/libunbound.la
89d05c6c 239%{_includedir}/unbound.h
ca75cd40 240%{_mandir}/man3/libunbound.3*
44b158d7 241%{_mandir}/man3/ub_*.3*
ca75cd40 242
243%files static
cda91157 244%defattr(644,root,root,755)
ca75cd40 245%{_libdir}/libunbound.a
89d05c6c
JB
246
247%if %{with python}
248%files -n python-unbound
249%defattr(644,root,root,755)
250%attr(755,root,root) %{py_sitedir}/_unbound.so*
251%{py_sitedir}/unbound.py[co]
d1474b1b 252%{py_sitedir}/unboundmodule.py[co]
89d05c6c 253%endif
This page took 0.082783 seconds and 4 git commands to generate.