]>
Commit | Line | Data |
---|---|---|
1 | # TODO | |
2 | # - apply http://www.caraytech.com/geodns/ | |
3 | # | |
4 | # Conditional build: | |
5 | %bcond_with dnstap # dnstap replication support | |
6 | %bcond_without geoip # GeoIP support | |
7 | %bcond_without kerberos5 # GSS-API support | |
8 | %bcond_without ssl # OpenSSL support | |
9 | %bcond_without lmdb # LMDB storage support for addzone zones | |
10 | %bcond_without doh # DNS over HTTPS support | |
11 | %bcond_with static_libs # static libraries | |
12 | %bcond_with system_tests # system tests (require root to configure localhost IPs) | |
13 | %bcond_with tests # unit tests | |
14 | %bcond_with edns_cli # ability to use edns-client-subnet in dig | |
15 | %bcond_with hip # HIP RR support | |
16 | ||
17 | %if "%{pld_release}" == "ac" | |
18 | %bcond_with epoll # enable epoll support | |
19 | # there didn't exist x86_64 2.4 kernel in PLD, so can safely enable epoll | |
20 | %ifarch %{x8664} | |
21 | %define with_epoll 1 | |
22 | %endif | |
23 | %else | |
24 | %bcond_without epoll # disable epoll support | |
25 | %endif | |
26 | ||
27 | %define ver 9.18.25 | |
28 | %if 0 | |
29 | %define pverdot .P0 | |
30 | %define pverdir -P0 | |
31 | %else | |
32 | %define pverdot %{nil} | |
33 | %define pverdir %{nil} | |
34 | %endif | |
35 | Summary: BIND - DNS name server | |
36 | Summary(de.UTF-8): BIND - DNS-Namenserver | |
37 | Summary(es.UTF-8): BIND - Servidor de nombres DNS | |
38 | Summary(fr.UTF-8): BIND - serveur de noms DNS | |
39 | Summary(pl.UTF-8): BIND - serwer nazw DNS | |
40 | Summary(pt_BR.UTF-8): BIND - Servidor de nomes DNS | |
41 | Summary(ru.UTF-8): BIND - cервер системы доменных имен (DNS) | |
42 | Summary(tr.UTF-8): DNS alan adı sunucusu | |
43 | Summary(uk.UTF-8): BIND - cервер системи доменних імен (DNS) | |
44 | Summary(zh_CN.UTF-8): Internet 域名服务器 | |
45 | Name: bind | |
46 | Version: %{ver}%{pverdot} | |
47 | Release: 1 | |
48 | Epoch: 7 | |
49 | License: MPL 2.0 | |
50 | Group: Networking/Daemons | |
51 | Source0: ftp://ftp.isc.org/isc/bind9/%{ver}%{pverdir}/%{name}-%{ver}%{pverdir}.tar.xz | |
52 | # Source0-md5: 05385c9873e499356d0461b1d13ca4f8 | |
53 | Source1: named.init | |
54 | Source2: named.sysconfig | |
55 | Source3: named.logrotate | |
56 | Source4: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2 | |
57 | # Source4-md5: 35b1dfaa12615c9802126ee833e0e7f7 | |
58 | Source6: %{name}-hip.tar.gz | |
59 | # Source6-md5: 62a8a67f51ff8db9fe815205416a1f62 | |
60 | Source7: https://www.internic.net/domain/named.root | |
61 | # Source7-md5: a551fabe906ec055e7f563276dad9c35 | |
62 | Source8: %{name}-127.0.0.zone | |
63 | Source9: %{name}-localhost.zone | |
64 | Source10: %{name}-named.conf | |
65 | Source11: %{name}.tmpfiles | |
66 | Source12: named.service | |
67 | ||
68 | Patch3: jemalloc.patch | |
69 | Patch4: %{name}-ac-libs.patch | |
70 | Patch5: %{name}-edns-client-subnet.patch | |
71 | URL: https://www.isc.org/software/bind | |
72 | BuildRequires: autoconf >= 2.60 | |
73 | BuildRequires: automake | |
74 | BuildRequires: bison | |
75 | %{?with_tests:BuildRequires: cmocka-devel >= 1.0.0} | |
76 | BuildRequires: flex | |
77 | %{?with_kerberos5:BuildRequires: heimdal-devel} | |
78 | BuildRequires: jemalloc-devel | |
79 | BuildRequires: json-c-devel >= 0.11 | |
80 | BuildRequires: libatomic-devel | |
81 | BuildRequires: libcap-devel | |
82 | BuildRequires: libidn2-devel | |
83 | # note, there is no kyua in PLD yet (work in progress) | |
84 | %{?with_tests:%{!?with_system_tests:BuildRequires: kyua}} | |
85 | BuildRequires: libtool | |
86 | BuildRequires: libuv-devel >= 1.40.0 | |
87 | # any version for hi2dns (if with_hip), 2.6.0 for XML stats | |
88 | BuildRequires: libxml2-devel >= 1:2.6.0 | |
89 | %{?with_lmdb:BuildRequires: lmdb-devel} | |
90 | %{?with_geoip:BuildRequires: libmaxminddb-devel} | |
91 | %{?with_doh:BuildRequires: nghttp2-devel >= 1.6.0} | |
92 | %{?with_ssl:BuildRequires: openssl-devel >= 1.0.0} | |
93 | BuildRequires: pkgconfig | |
94 | BuildRequires: python3-devel >= 1:3.2 | |
95 | BuildRequires: python3-sphinx_rtd_theme | |
96 | BuildRequires: readline-devel | |
97 | BuildRequires: rpm >= 4.4.9-56 | |
98 | BuildRequires: rpmbuild(macros) >= 1.647 | |
99 | BuildRequires: sphinx-pdg | |
100 | BuildRequires: tar >= 1:1.22 | |
101 | BuildRequires: xz | |
102 | BuildRequires: zlib-devel | |
103 | %if %{with dnstap} | |
104 | BuildRequires: fstrm-devel | |
105 | BuildRequires: protobuf-c-devel | |
106 | %endif | |
107 | Requires(post,preun): /sbin/chkconfig | |
108 | Requires(postun): /usr/sbin/groupdel | |
109 | Requires(postun): /usr/sbin/userdel | |
110 | Requires(pre): /bin/id | |
111 | Requires(pre): /usr/bin/getgid | |
112 | Requires(pre): /usr/sbin/groupadd | |
113 | Requires(pre): /usr/sbin/useradd | |
114 | Requires(pre): fileutils | |
115 | Requires: %{name}-libs = %{epoch}:%{version}-%{release} | |
116 | Requires: psmisc >= 20.1 | |
117 | Requires: rc-scripts >= 0.2.0 | |
118 | Requires: systemd-units >= 38 | |
119 | Requires: uname(release) >= 2.2.18 | |
120 | Provides: group(named) | |
121 | Provides: nameserver | |
122 | Provides: user(named) | |
123 | Obsoletes: caching-nameserver | |
124 | Obsoletes: openldap-schema-bind < 7:9.18.0 | |
125 | Obsoletes: python3-isc < 7:9.18.0 | |
126 | Conflicts: bind-chroot | |
127 | Conflicts: logrotate < 3.8.0 | |
128 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
129 | ||
130 | %description | |
131 | BIND (Berkeley Internet Name Domain) is an implementation of the DNS | |
132 | (Domain Name System) protocols. BIND includes a DNS server (named), | |
133 | which resolves host names to IP addresses, and a resolver library | |
134 | (routines for applications to use when interfacing with DNS). A DNS | |
135 | server allows clients to name resources or objects and share the | |
136 | information with other network machines. The named DNS server can be | |
137 | used on workstations as a caching name server, but is generally only | |
138 | needed on one machine for an entire network. Note that the | |
139 | configuration files for making BIND act as a simple caching nameserver | |
140 | are included in the caching-nameserver package. | |
141 | ||
142 | Install the bind package if you need a DNS server for your network. If | |
143 | you want bind to act a caching name server, you will also need to | |
144 | install the caching-nameserver package. | |
145 | ||
146 | %description -l de.UTF-8 | |
147 | Enthält den Namen-Server, der zum Umwandeln von Host-Namen in | |
148 | IP-Adressen und umgekehrt verwendet wird. Er kann auf Workstations als | |
149 | caching Namen-Server verwendet werden, ist aber i.d.R. nur auf einem | |
150 | Recher des Netzwerks erforderlich. | |
151 | ||
152 | %description -l es.UTF-8 | |
153 | Incluye el servidor de nombres (DNS), que se usa para traducir nombres | |
154 | para IP (y viceversa). Puede ser usado en estaciones de trabajo como | |
155 | un servidor de nombres caché, pero generalmente sólo hace falta en una | |
156 | máquina para toda la red. | |
157 | ||
158 | %description -l fr.UTF-8 | |
159 | Contient le serveur de noms named, utilisé pour définir les | |
160 | traductions nom d'hôte vers adresse IP (et vice versa). Il peut être | |
161 | utilisé sur les stations de travail comme serveur de nom en cache mais | |
162 | n'est souvent nécessaire que sur une machine pour un réseau entier. | |
163 | ||
164 | %description -l pl.UTF-8 | |
165 | Pakiet ten zawiera demona named, który służy do zmieniania nazw | |
166 | komputerów na numery IP i odwrotnie. Może być on używany na stacjach | |
167 | roboczych jako bufor odwołań do serwisu nazw (caching name server), | |
168 | ale generalnie wystarczy tylko jedna jednostka wyposażona w ten | |
169 | program na fragment sieci. | |
170 | ||
171 | %description -l pt_BR.UTF-8 | |
172 | Inclui o servidor de nomes (DNS), que é usado para traduzir nomes para | |
173 | IP (e vice-versa). Pode ser usado em estações de trabalho como um | |
174 | servidor de nomes cache, mas geralmente só é necessário em uma máquina | |
175 | para toda a rede. | |
176 | ||
177 | %description -l ru.UTF-8 | |
178 | BIND (Berkeley Internet Name Domain) является реализацией протоколов | |
179 | DNS (Domain Name System). BIND включает DNS сервер (named) и | |
180 | библиотеку "резолвера" (подпрограммы для приложений, через которые | |
181 | происходят обращения к DNS). DNS сервер named может быть использован | |
182 | на рабочих станциях как кеширующий сервер, но обычно запускается на | |
183 | одной машине в локальной сети и используется остальными машинами (этим | |
184 | достигается намного более эффективное кеширование). | |
185 | ||
186 | Конфигурационные файлы, настраивающие BIND на работу в режиме простого | |
187 | кеширующего сервера, включены в пакет caching-nameserver. | |
188 | ||
189 | %description -l tr.UTF-8 | |
190 | Bu paket, makina adını IP numarasına (ya da tersi) çevirmek için | |
191 | kullanılan alan adı sunucusunu içerir. İş istasyonlarında bir önbellek | |
192 | isim sunucusu olarak da kullanılabilir ama genellikle bütün bir ağ | |
193 | için sadece bir makina üzerinde kurulur. | |
194 | ||
195 | %description -l uk.UTF-8 | |
196 | BIND (Berkeley Internet Name Domain) є реалізацією протоколів DNS | |
197 | (Domain Name System). BIND включає DNS сервер (named) та бібліотеку | |
198 | "резолвера" (підпрограми, що забезпечують інтерфейс до DNS). DNS | |
199 | сервер named може бути використаний на робочих станціях як кешируючий | |
200 | сервер, але звичайно запускається на одній машині в локальній мережі і | |
201 | використовується іншими (цим досягається більша ефективність | |
202 | використання кешу). | |
203 | ||
204 | Конфігураційні файли, ща настроюють BIND на роботу в режимі простого | |
205 | кешируючого серверу, включені в пакет caching-nameserver. | |
206 | ||
207 | %package plugins | |
208 | Summary: Plugins for Bind DNS name server | |
209 | Summary(pl.UTF-8): Wtyczki dla serwera nazw DNS Bind | |
210 | Group: Networking/Utilities | |
211 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
212 | ||
213 | %description plugins | |
214 | Plugins for extending of query processing functionality of Bind DNS name | |
215 | server. | |
216 | ||
217 | %description plugins -l pl.UTF-8 | |
218 | Wtyczki rozszerzające funkcjonalność przetwarzania zapytań przez serwer | |
219 | nazw DNS Bind. | |
220 | ||
221 | %package utils | |
222 | Summary: DNS utils - host, dig, dnsquery, nslookup | |
223 | Summary(de.UTF-8): DNS-Utils - Host, Dig, Dnsquery, Nslookup | |
224 | Summary(es.UTF-8): Utilitarios DNS - host, dig, dnsquery y nslookup | |
225 | Summary(fr.UTF-8): Utilitaires DNS - host, dig, dnsquery, nslookup | |
226 | Summary(pl.UTF-8): Narzędzia DNS - host, dig, dnsquery, nslookup | |
227 | Summary(pt_BR.UTF-8): Utilitários DNS - host, dig, dnsquery e nslookup | |
228 | Summary(ru.UTF-8): Утилиты для посылки запросов к серверам DNS | |
229 | Summary(tr.UTF-8): DNS araçları - host, dig, dnsquery, nslookup | |
230 | Summary(uk.UTF-8): Утиліти для надсилання запитів до серверів DNS | |
231 | Summary(zh_CN.UTF-8): Internet 域名服务器实用工具 | |
232 | Group: Networking/Utilities | |
233 | Requires: %{name}-libs = %{epoch}:%{version}-%{release} | |
234 | Requires: iconv | |
235 | ||
236 | %description utils | |
237 | Bind-utils contains a collection of utilities for querying DNS (Domain | |
238 | Name Service) name servers to find out information about Internet | |
239 | hosts. These tools will provide you with the IP addresses for given | |
240 | host names, as well as other information about registered domains and | |
241 | network addresses. | |
242 | ||
243 | You should install bind-utils if you need to get information from DNS | |
244 | name servers. | |
245 | ||
246 | %description utils -l de.UTF-8 | |
247 | Dienstprogrammsammlung zum Abfragen von Namen-Servern und Hosts. Diese | |
248 | Tools bestimmen die IP-Adresse eines angegebenen Host-Namen und finden | |
249 | Informationen über registrierte Domains und Netzwerk-Adressen. | |
250 | ||
251 | %description utils -l es.UTF-8 | |
252 | Conjunto de utilitarios para consulta a servidores de nombres. Estas | |
253 | herramientas permiten la determinación de direcciones IP para nombres | |
254 | de máquinas informados y busca información sobre dominios registrados | |
255 | y direcciones de red. | |
256 | ||
257 | %description utils -l fr.UTF-8 | |
258 | Ensemble d'utilitaires pour interroger les serveurs de noms et | |
259 | rechercher des hôtes. Ces outils vous permettent de déterminer les | |
260 | adresses IP pour des noms d'hôtes donnés, et trouver des informations | |
261 | sur les noms de domaine déclarés et les adresses réseau. | |
262 | ||
263 | %description utils -l pl.UTF-8 | |
264 | Pakiet ten zawiera zbiór aplikacji umożliwiających odpytywanie | |
265 | serwerów nazw z innych domen w celu uzyskania informacji o komputerach | |
266 | i ich adresach IP. | |
267 | ||
268 | %description utils -l pt_BR.UTF-8 | |
269 | Conjunto de utilitários para consulta a servidores DNS. Estas | |
270 | ferramentas permitem a determinação de endereços IP para nomes de | |
271 | máquinas informados e busca informações sobre domínios registrados e | |
272 | endereços de rede. Você deveria instalar este pacote se necessitar | |
273 | obter informações de servidores DNS. | |
274 | ||
275 | %description utils -l ru.UTF-8 | |
276 | Набор утилит для генерации запросов к серверам имен (DNS) и поиска | |
277 | адресов машин. Эти утилиты позволяют определить IP-адрес по известному | |
278 | доменному имени (и наоборот) и другую информацию о зарегистрированных | |
279 | доменах и сетевых адресах. | |
280 | ||
281 | %description utils -l tr.UTF-8 | |
282 | Bu pakette isim sunucularını sorgulamak ve makina adreslerini çözmek | |
283 | için kullanılan araçlar bulunmaktadır. | |
284 | ||
285 | %description utils -l uk.UTF-8 | |
286 | Набір утиліт для генерації запитів до серверів імен (DNS) та пошуку | |
287 | адрес машин. Ці утиліти дозволяють отримати IP-адресу за відомим | |
288 | доменним іменем та навпаки, а також іншу інформацію про зареєстровані | |
289 | домени та адреси. | |
290 | ||
291 | %package libs | |
292 | Summary: DNS libraries | |
293 | Summary(pl.UTF-8): Biblioteki DNS | |
294 | Summary(ru.UTF-8): Библиотеки, необходимые для bind | |
295 | Summary(uk.UTF-8): Бібліотеки, необхідні для bind | |
296 | Summary(zh_CN.UTF-8): Internet 域名服务器开发库 | |
297 | Group: Libraries | |
298 | Requires: json-c >= 0.11 | |
299 | Requires: libuv >= 1.40.0 | |
300 | Requires: libxml2 >= 1:2.6.0 | |
301 | %{?with_doh:Requires: nghttp2-libs >= 1.6.0} | |
302 | ||
303 | %description libs | |
304 | The bind-libs package contains all libraries required for running BIND | |
305 | and bind utils. | |
306 | ||
307 | %description libs -l pl.UTF-8 | |
308 | Pakiet zawiera wszystkie biblioteki potrzebne do uruchomienia binda | |
309 | lub programów z pakietu bind-utils. | |
310 | ||
311 | %description libs -l ru.UTF-8 | |
312 | Библиотеки, необходимые для работы bind. | |
313 | ||
314 | %description libs -l uk.UTF-8 | |
315 | Бібліотеки, необхідні для роботи bind. | |
316 | ||
317 | %package devel | |
318 | Summary: DNS development includes | |
319 | Summary(es.UTF-8): Archivos de inclusión y bibliotecas para desarrollo DNS | |
320 | Summary(pl.UTF-8): Pliki nagłówkowe bibliotek DNS | |
321 | Summary(pt_BR.UTF-8): Todos os arquivos de cabeçalho e bibliotecas para desenvolvimento DNS | |
322 | Summary(ru.UTF-8): Хедеры и библиотеки разработчика для bind | |
323 | Summary(uk.UTF-8): Хедери та бібліотеки програміста для bind | |
324 | Group: Development/Libraries | |
325 | Requires: %{name}-libs = %{epoch}:%{version}-%{release} | |
326 | ||
327 | %description devel | |
328 | The bind-devel package contains all the include files and symlinks | |
329 | required for DNS (Domain Name Service) development for BIND. | |
330 | ||
331 | You should install bind-devel if you want to develop bind DNS | |
332 | applications. If you install bind-devel, you'll also need to install | |
333 | bind-libs. | |
334 | ||
335 | %description devel -l es.UTF-8 | |
336 | Los archivos de inclusión y bibliotecas necesarios al desarrollo DNS | |
337 | para el bind. | |
338 | ||
339 | %description devel -l pl.UTF-8 | |
340 | Pakiet zawiera pliki nagłówkowe. Jeżeli będziesz pisał programy pod | |
341 | binda, lub kompilował kod źródłowy oprogramowania korzystającego z | |
342 | tych plików nagłówkowych czy biblioteki powinieneś zainstalować ten | |
343 | pakiet. | |
344 | ||
345 | %description devel -l pt_BR.UTF-8 | |
346 | Todos os arquivos de cabeçalho e bibliotecas necessários para o | |
347 | desenvolvimento com o bind. | |
348 | ||
349 | %description devel -l ru.UTF-8 | |
350 | Все хедеры и библиотеки, необходимые для написания программ с | |
351 | использованием BIND 9.x.x. | |
352 | ||
353 | %description devel -l uk.UTF-8 | |
354 | Всі хедери та бібліотеки, необхідні для розробки програм з | |
355 | використанням BIND 9.x.x. | |
356 | ||
357 | %package static | |
358 | Summary: DNS static libs | |
359 | Summary(pl.UTF-8): Biblioteki statyczne DNS | |
360 | Summary(pt_BR.UTF-8): Bibliotecas estáticas para desenvolvimento DNS | |
361 | Summary(ru.UTF-8): Статические библиотеки разработчика для bind | |
362 | Summary(uk.UTF-8): Статичні бібліотеки програміста для bind | |
363 | Group: Development/Libraries | |
364 | Requires: %{name}-devel = %{epoch}:%{version}-%{release} | |
365 | ||
366 | %description static | |
367 | Static bind libraries. | |
368 | ||
369 | %description static -l pl.UTF-8 | |
370 | Statyczne biblioteki binda. | |
371 | ||
372 | %description static -l pt_BR.UTF-8 | |
373 | Bibliotecas estáticas para desenvolvimento DNS. | |
374 | ||
375 | %description static -l ru.UTF-8 | |
376 | Статические библиотеки, необходимые для написания программ с | |
377 | использованием BIND. | |
378 | ||
379 | %description static -l uk.UTF-8 | |
380 | Статичні бібліотеки, необхідні для розробки програм з використанням | |
381 | BIND. | |
382 | ||
383 | %prep | |
384 | %setup -q %{?with_hip:-a6} -n %{name}-%{ver}%{pverdir} | |
385 | ||
386 | %patch3 -p1 | |
387 | %patch4 -p1 | |
388 | %{?with_hip:%{__mv} bind-hip/hip_55.[ch] lib/dns/rdata/generic} | |
389 | %{?with_edns_cli:%patch5 -p0} | |
390 | ||
391 | %build | |
392 | %{__libtoolize} | |
393 | %{__aclocal} | |
394 | %{__autoconf} | |
395 | %{__automake} | |
396 | %configure \ | |
397 | CFLAGS="-D_GNU_SOURCE=1 %{rpmcflags} %{rpmcppflags}" \ | |
398 | LDFLAGS="%{rpmldflags}" \ | |
399 | %{?with_dnstap:--enable-dnstap} \ | |
400 | %{!?with_doh:--disable-doh} \ | |
401 | %{!?with_epoll:--disable-epoll --disable-devpoll} \ | |
402 | --enable-full-report \ | |
403 | --enable-largefile \ | |
404 | %{?with_static_libs:--enable-static} \ | |
405 | %{?with_kerberos5:--with-gssapi} \ | |
406 | --with-jemalloc=yes \ | |
407 | --with-libidn2 \ | |
408 | --with-libxml2 \ | |
409 | %{?with_ssl:--with-openssl} \ | |
410 | %{?with_geoip:--with-maxminddb} \ | |
411 | --with-lmdb%{!?with_lmdb:=no} \ | |
412 | --with-tuning \ | |
413 | --disable-silent-rules | |
414 | ||
415 | %{__make} | |
416 | %{__make} -C doc/arm html | |
417 | ||
418 | %{?with_hip:%{__make} -C bind-hip} | |
419 | ||
420 | %if %{with tests} | |
421 | %if %{with system_tests} | |
422 | %{__make} test-force | |
423 | %else | |
424 | sh unit/unittest.sh | |
425 | %endif | |
426 | %endif | |
427 | ||
428 | %install | |
429 | rm -rf $RPM_BUILD_ROOT | |
430 | install -d $RPM_BUILD_ROOT{%{_includedir},%{_bindir},%{_sbindir},%{_includedir}} \ | |
431 | $RPM_BUILD_ROOT/etc/{rc.d/init.d,logrotate.d,sysconfig} \ | |
432 | $RPM_BUILD_ROOT{%{_mandir}/man{1,3,5,8},%{_var}/{lib/named/{M,D,S,dev,etc},run/named,log}} \ | |
433 | $RPM_BUILD_ROOT{%{systemdunitdir},%{systemdtmpfilesdir}} | |
434 | ||
435 | %{__make} install \ | |
436 | DESTDIR=$RPM_BUILD_ROOT | |
437 | ||
438 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/bind/filter-*.la | |
439 | ||
440 | bzip2 -dc %{SOURCE4} | tar xf - -C $RPM_BUILD_ROOT%{_mandir} | |
441 | %{__rm} $RPM_BUILD_ROOT%{_mandir}/README.named-non-english-man-pages | |
442 | %{__mv} $RPM_BUILD_ROOT%{_mandir}/ja/man8/nslookup.8 $RPM_BUILD_ROOT%{_mandir}/ja/man1/nslookup.1 | |
443 | %{__sed} -i -e 's/NSLOOKUP 8/NSLOOKUP 1/' $RPM_BUILD_ROOT%{_mandir}/ja/man1/nslookup.1 | |
444 | ||
445 | install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/named | |
446 | cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/named | |
447 | cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/named | |
448 | cp -p %{SOURCE7} $RPM_BUILD_ROOT%{_var}/lib/named/root.hint | |
449 | cp -p %{SOURCE8} $RPM_BUILD_ROOT%{_var}/lib/named/M/127.0.0.zone | |
450 | cp -p %{SOURCE9} $RPM_BUILD_ROOT%{_var}/lib/named/M/localhost.zone | |
451 | cp -p %{SOURCE10} $RPM_BUILD_ROOT%{_var}/lib/named%{_sysconfdir}/named.conf | |
452 | %{__mv} $RPM_BUILD_ROOT/etc/bind.keys $RPM_BUILD_ROOT%{_var}/lib/named%{_sysconfdir}/ | |
453 | ||
454 | ln -sf --relative $RPM_BUILD_ROOT%{_var}/lib/named%{_sysconfdir}/named.conf $RPM_BUILD_ROOT/etc/named.conf | |
455 | ln -sf --relative $RPM_BUILD_ROOT%{_var}/lib/named%{_sysconfdir}/bind.keys $RPM_BUILD_ROOT/etc/bind.keys | |
456 | ln -sf --relative $RPM_BUILD_ROOT%{_var}/lib/named/named.log $RPM_BUILD_ROOT%{_var}/log/named | |
457 | ln -sf --relative $RPM_BUILD_ROOT%{_var}/lib/named/named.stats $RPM_BUILD_ROOT%{_var}/log/named.stats | |
458 | ||
459 | touch $RPM_BUILD_ROOT%{_var}/lib/named/named.{log,stats} | |
460 | ||
461 | install %{SOURCE12} $RPM_BUILD_ROOT%{systemdunitdir}/named.service | |
462 | install %{SOURCE11} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf | |
463 | ||
464 | %{?with_hip:install -p bind-hip/hi2dns $RPM_BUILD_ROOT%{_bindir}} | |
465 | ||
466 | # we don't want Makefiles in documentation... | |
467 | rm -rf _doc | |
468 | cp -a doc _doc | |
469 | %{__rm} _doc/misc/Makefile* | |
470 | ||
471 | %clean | |
472 | rm -rf $RPM_BUILD_ROOT | |
473 | ||
474 | %pre | |
475 | if [ -f %{_sysconfdir}/named.boot ]; then | |
476 | cp -f %{_sysconfdir}/named.boot /etc/named.boot.2conf | |
477 | mv -f %{_sysconfdir}/named.boot /etc/named.rpmsave | |
478 | echo >&2 "Warning: %{_sysconfdir}/named.boot saved as /etc/named.rpmsave." | |
479 | fi | |
480 | %groupadd -g 58 named | |
481 | %useradd -u 58 -g 58 -d /tmp -s /bin/false -c "BIND user" named | |
482 | ||
483 | %post | |
484 | /sbin/chkconfig --add named | |
485 | %service named restart | |
486 | %systemd_post named.service | |
487 | ||
488 | %preun | |
489 | if [ "$1" = "0" ]; then | |
490 | %service named stop | |
491 | /sbin/chkconfig --del named | |
492 | fi | |
493 | %systemd_preun named.service | |
494 | ||
495 | %postun | |
496 | if [ "$1" = "0" ]; then | |
497 | %userremove named | |
498 | %groupremove named | |
499 | fi | |
500 | %systemd_reload | |
501 | ||
502 | %post libs -p /sbin/ldconfig | |
503 | %postun libs -p /sbin/ldconfig | |
504 | ||
505 | %triggerpostun -- %{name} < 7:9.9.2.P2-2 | |
506 | %systemd_trigger named.service | |
507 | ||
508 | %files | |
509 | %defattr(644,root,root,755) | |
510 | %doc README.md %{?with_hip:bind-hip/COPYRIGHT-HIP-RR} | |
511 | %doc _doc/misc/* _doc/arm/_build/html/*.html | |
512 | ||
513 | %{systemdunitdir}/named.service | |
514 | %attr(754,root,root) /etc/rc.d/init.d/named | |
515 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/named | |
516 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/named | |
517 | %{_sysconfdir}/named.conf | |
518 | %{_sysconfdir}/bind.keys | |
519 | ||
520 | %attr(755,root,root) %{_bindir}/dnssec-* | |
521 | %attr(755,root,root) %{_bindir}/named-* | |
522 | %attr(755,root,root) %{_bindir}/nsec3hash | |
523 | %attr(755,root,root) %{_sbindir}/ddns-confgen | |
524 | %attr(755,root,root) %{_sbindir}/named | |
525 | %attr(755,root,root) %{_sbindir}/rndc | |
526 | %attr(755,root,root) %{_sbindir}/rndc-confgen | |
527 | %attr(755,root,root) %{_sbindir}/tsig-keygen | |
528 | ||
529 | %{_mandir}/man1/dnssec-*.1* | |
530 | %{_mandir}/man1/named-*.1* | |
531 | %{_mandir}/man1/nsec3hash.1* | |
532 | %{_mandir}/man5/named.conf.5* | |
533 | %{_mandir}/man5/rndc.conf.5* | |
534 | %{_mandir}/man8/ddns-confgen.8* | |
535 | %{_mandir}/man8/named.8* | |
536 | %{_mandir}/man8/rndc.8* | |
537 | %{_mandir}/man8/rndc-confgen.8* | |
538 | %{_mandir}/man8/tsig-keygen.8* | |
539 | %lang(ja) %{_mandir}/ja/man8/named* | |
540 | ||
541 | %{systemdtmpfilesdir}/%{name}.conf | |
542 | ||
543 | %attr(770,root,named) %dir %{_var}/lib/named | |
544 | %attr(770,root,named) %dir %{_var}/lib/named/D | |
545 | %attr(770,root,named) %dir %{_var}/lib/named/M | |
546 | %attr(770,root,named) %dir %{_var}/lib/named/S | |
547 | %attr(770,root,named) %dir %{_var}/lib/named/dev | |
548 | %dev(c,1,9) %attr(644,root,root) %{_var}/lib/named/dev/urandom | |
549 | %attr(750,root,named) %dir %{_var}/lib/named/etc | |
550 | %attr(640,root,named) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/named/etc/bind.keys | |
551 | %attr(640,root,named) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/named/etc/named.conf | |
552 | %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/named/M/*.zone | |
553 | %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/named/root.hint | |
554 | %attr(660,named,named) %ghost %{_var}/lib/named/named.log | |
555 | %attr(660,named,named) %ghost %{_var}/lib/named/named.stats | |
556 | ||
557 | %config(noreplace,missingok) %{_var}/log/named | |
558 | %config(noreplace,missingok) %{_var}/log/named.stats | |
559 | ||
560 | %attr(770,root,named) %dir %{_var}/run/named | |
561 | ||
562 | %files plugins | |
563 | %defattr(644,root,root,755) | |
564 | %dir %{_libdir}/bind | |
565 | %attr(755,root,root) %{_libdir}/bind/filter-a.so | |
566 | %attr(755,root,root) %{_libdir}/bind/filter-aaaa.so | |
567 | %{_mandir}/man8/filter-a.8* | |
568 | %{_mandir}/man8/filter-aaaa.8* | |
569 | ||
570 | %files utils | |
571 | %defattr(644,root,root,755) | |
572 | %attr(755,root,root) %{_bindir}/arpaname | |
573 | %attr(755,root,root) %{_bindir}/delv | |
574 | %attr(755,root,root) %{_bindir}/dig | |
575 | %attr(755,root,root) %{_bindir}/host | |
576 | %attr(755,root,root) %{_bindir}/named-rrchecker | |
577 | %attr(755,root,root) %{_bindir}/mdig | |
578 | %attr(755,root,root) %{_bindir}/nslookup | |
579 | %attr(755,root,root) %{_bindir}/nsupdate | |
580 | %{?with_hip:%attr(755,root,root) %{_bindir}/hi2dns} | |
581 | %{_mandir}/man1/arpaname.1* | |
582 | %{_mandir}/man1/delv.1* | |
583 | %{_mandir}/man1/dig.1* | |
584 | %{_mandir}/man1/host.1* | |
585 | %{_mandir}/man1/mdig.1* | |
586 | %{_mandir}/man1/named-rrchecker.1* | |
587 | %{_mandir}/man1/nslookup.1* | |
588 | %{_mandir}/man1/nsupdate.1* | |
589 | ||
590 | %lang(fi) %{_mandir}/fi/man1/host.1* | |
591 | ||
592 | %lang(fr) %{_mandir}/fr/man1/host.1* | |
593 | ||
594 | %lang(hu) %{_mandir}/hu/man1/host.1* | |
595 | ||
596 | %lang(ja) %{_mandir}/ja/man1/dig.1* | |
597 | %lang(ja) %{_mandir}/ja/man1/host.1* | |
598 | %lang(ja) %{_mandir}/ja/man1/nslookup.1* | |
599 | %lang(ja) %{_mandir}/ja/man8/nsupdate.8* | |
600 | ||
601 | %lang(pl) %{_mandir}/pl/man1/host.1* | |
602 | ||
603 | %files libs | |
604 | %defattr(644,root,root,755) | |
605 | %attr(755,root,root) %{_libdir}/libbind9-%{version}.so | |
606 | %attr(755,root,root) %{_libdir}/libdns-%{version}.so | |
607 | %attr(755,root,root) %{_libdir}/libirs-%{version}.so | |
608 | %attr(755,root,root) %{_libdir}/libisc-%{version}.so | |
609 | %attr(755,root,root) %{_libdir}/libisccc-%{version}.so | |
610 | %attr(755,root,root) %{_libdir}/libisccfg-%{version}.so | |
611 | %attr(755,root,root) %{_libdir}/libns-%{version}.so | |
612 | ||
613 | %files devel | |
614 | %defattr(644,root,root,755) | |
615 | %attr(755,root,root) %{_libdir}/libbind9.so | |
616 | %attr(755,root,root) %{_libdir}/libdns.so | |
617 | %attr(755,root,root) %{_libdir}/libirs.so | |
618 | %attr(755,root,root) %{_libdir}/libisc.so | |
619 | %attr(755,root,root) %{_libdir}/libisccc.so | |
620 | %attr(755,root,root) %{_libdir}/libisccfg.so | |
621 | %attr(755,root,root) %{_libdir}/libns.so | |
622 | %{_libdir}/libbind9.la | |
623 | %{_libdir}/libdns.la | |
624 | %{_libdir}/libirs.la | |
625 | %{_libdir}/libisc.la | |
626 | %{_libdir}/libisccc.la | |
627 | %{_libdir}/libisccfg.la | |
628 | %{_libdir}/libns.la | |
629 | %{_includedir}/bind9 | |
630 | %{_includedir}/dns | |
631 | %{_includedir}/dst | |
632 | %{_includedir}/irs | |
633 | %{_includedir}/isc | |
634 | %{_includedir}/isccc | |
635 | %{_includedir}/isccfg | |
636 | %{_includedir}/ns | |
637 | ||
638 | %if %{with static_libs} | |
639 | %files static | |
640 | %defattr(644,root,root,755) | |
641 | %{_libdir}/libbind9.a | |
642 | %{_libdir}/libdns.a | |
643 | %{_libdir}/libirs.a | |
644 | %{_libdir}/libisc.a | |
645 | %{_libdir}/libisccc.a | |
646 | %{_libdir}/libisccfg.a | |
647 | %{_libdir}/libns.a | |
648 | %endif |