]> git.pld-linux.org Git - packages/bind.git/blob - bind.spec
- tabs in preamble
[packages/bind.git] / bind.spec
1 #
2 # Conditional build:
3 %bcond_without  ssl             # build without OpenSSL support
4 %bcond_without  ipv6            # build without IPv6 support
5 %bcond_without  ldap            # build without LDAP support
6 %bcond_without  static_libs     # build without static libraries
7 #
8 Summary:        BIND - DNS name server
9 Summary(de.UTF-8):      BIND - DNS-Namenserver
10 Summary(es.UTF-8):      BIND - Servidor de nombres DNS
11 Summary(fr.UTF-8):      BIND - serveur de noms DNS
12 Summary(pl.UTF-8):      BIND - serwer nazw DNS
13 Summary(pt_BR.UTF-8):   BIND - Servidor de nomes DNS
14 Summary(ru.UTF-8):      BIND - cервер системы доменных имен (DNS)
15 Summary(tr.UTF-8):      DNS alan adı sunucusu
16 Summary(uk.UTF-8):      BIND - cервер системи доменних імен (DNS)
17 Summary(zh_CN.UTF-8):   Internet 域名服务器
18 Name:           bind
19 Version:        9.3.4
20 Release:        2
21 Epoch:          6
22 License:        BSD-like
23 Group:          Networking/Daemons
24 Source0:        ftp://ftp.isc.org/isc/bind9/%{version}/%{name}-%{version}.tar.gz
25 # Source0-md5:  df5417e7e7cf017fa28b65d0a3d6e999
26 Source1:        %{name}-conf.tar.gz
27 # Source1-md5:  8ee77729f806fcd548fe0cceb34b4a06
28 Source2:        named.init
29 Source3:        named.sysconfig
30 Source4:        named.logrotate
31 Source5:        http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
32 # Source5-md5:  35b1dfaa12615c9802126ee833e0e7f7
33 Source6:        http://www.venaas.no/ldap/bind-sdb/dnszone-schema.txt
34 # Source6-md5:  49fe799c6eca54ae227b22d57ebc1145
35 Patch0:         %{name}-time.patch
36 Patch1:         %{name}-autoconf.patch
37 Patch2:         %{name}-includedir-libbind.patch
38 Patch3:         %{name}-link.patch
39 Patch4:         %{name}-pmake.patch
40 Patch5:         %{name}-sdb-ldap.patch
41 Patch6:         %{name}-noinet6.patch
42 Patch7:         %{name}-idn.patch
43 URL:            http://www.isc.org/products/BIND/bind9.html
44 BuildRequires:  autoconf
45 BuildRequires:  automake
46 BuildRequires:  bison
47 BuildRequires:  flex
48 BuildRequires:  idnkit-devel
49 BuildRequires:  libtool
50 %{?with_ldap:BuildRequires:     openldap-devel}
51 %{?with_ssl:BuildRequires:      openssl-devel >= 0.9.7d}
52 BuildRequires:  rpmbuild(macros) >= 1.268
53 Requires(post,preun):   /sbin/chkconfig
54 Requires(postun):       /usr/sbin/groupdel
55 Requires(postun):       /usr/sbin/userdel
56 Requires(pre):  /bin/id
57 Requires(pre):  /usr/bin/getgid
58 Requires(pre):  /usr/sbin/groupadd
59 Requires(pre):  /usr/sbin/useradd
60 Requires(pre):  fileutils
61 Requires:       %{name}-libs = %{epoch}:%{version}-%{release}
62 Requires:       psmisc >= 20.1
63 Requires:       rc-scripts >= 0.2.0
64 Provides:       group(named)
65 Provides:       nameserver
66 Provides:       user(named)
67 Obsoletes:      caching-nameserver
68 Obsoletes:      nameserver
69 Conflicts:      %{name}-chroot
70 Conflicts:      kernel < 2.2.18
71 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
72
73 %description
74 BIND (Berkeley Internet Name Domain) is an implementation of the DNS
75 (Domain Name System) protocols. BIND includes a DNS server (named),
76 which resolves host names to IP addresses, and a resolver library
77 (routines for applications to use when interfacing with DNS). A DNS
78 server allows clients to name resources or objects and share the
79 information with other network machines. The named DNS server can be
80 used on workstations as a caching name server, but is generally only
81 needed on one machine for an entire network. Note that the
82 configuration files for making BIND act as a simple caching nameserver
83 are included in the caching-nameserver package.
84
85 Install the bind package if you need a DNS server for your network. If
86 you want bind to act a caching name server, you will also need to
87 install the caching-nameserver package.
88
89 %description -l de.UTF-8
90 Enthält den Namen-Server, der zum Umwandeln von Host-Namen in
91 IP-Adressen und umgekehrt verwendet wird. Er kann auf Workstations als
92 caching Namen-Server verwendet werden, ist aber i.d.R. nur auf einem
93 Recher des Netzwerks erforderlich.
94
95 %description -l es.UTF-8
96 Incluye el servidor de nombres (DNS), que se usa para traducir nombres
97 para IP (y viceversa). Puede ser usado en estaciones de trabajo como
98 un servidor de nombres caché, pero generalmente sólo hace falta en una
99 máquina para toda la red.
100
101 %description -l fr.UTF-8
102 Contient le serveur de noms named, utilisé pour définir les
103 traductions nom d'hôte vers adresse IP (et vice versa). Il peut être
104 utilisé sur les stations de travail comme serveur de nom en cache mais
105 n'est souvent nécessaire que sur une machine pour un réseau entier.
106
107 %description -l pl.UTF-8
108 Pakiet ten zawiera demona named, który służy do zmieniania nazw
109 komputerów na numery IP i odwrotnie. Może być on używany na stacjach
110 roboczych jako bufor odwołań do serwisu nazw (caching name server),
111 ale generalnie wystarczy tylko jedna jednostka wyposażona w ten
112 program na fragment sieci.
113
114 %description -l pt_BR.UTF-8
115 Inclui o servidor de nomes (DNS), que é usado para traduzir nomes para
116 IP (e vice-versa). Pode ser usado em estações de trabalho como um
117 servidor de nomes cache, mas geralmente só é necessário em uma máquina
118 para toda a rede.
119
120 %description -l ru.UTF-8
121 BIND (Berkeley Internet Name Domain) является реализацией протоколов
122 DNS (Domain Name System). BIND включает DNS сервер (named) и
123 библиотеку "резолвера" (подпрограммы для приложений, через которые
124 происходят обращения к DNS). DNS сервер named может быть использован
125 на рабочих станциях как кеширующий сервер, но обычно запускается на
126 одной машине в локальной сети и используется остальными машинами (этим
127 достигается намного более эффективное кеширование).
128
129 Конфигурационные файлы, настраивающие BIND на работу в режиме простого
130 кеширующего сервера, включены в пакет caching-nameserver.
131
132 %description -l tr.UTF-8
133 Bu paket, makina adını IP numarasına (ya da tersi) çevirmek için
134 kullanılan alan adı sunucusunu içerir. İş istasyonlarında bir önbellek
135 isim sunucusu olarak da kullanılabilir ama genellikle bütün bir ağ
136 için sadece bir makina üzerinde kurulur.
137
138 %description -l uk.UTF-8
139 BIND (Berkeley Internet Name Domain) є реалізацією протоколів DNS
140 (Domain Name System). BIND включає DNS сервер (named) та бібліотеку
141 "резолвера" (підпрограми, що забезпечують інтерфейс до DNS). DNS
142 сервер named може бути використаний на робочих станціях як кешируючий
143 сервер, але звичайно запускається на одній машині в локальній мережі і
144 використовується іншими (цим досягається більша ефективність
145 використання кешу).
146
147 Конфігураційні файли, ща настроюють BIND на роботу в режимі простого
148 кешируючого серверу, включені в пакет caching-nameserver.
149
150 %package utils
151 Summary:        DNS utils - host, dig, dnsquery, nslookup
152 Summary(de.UTF-8):      DNS-Utils - Host, Dig, Dnsquery, Nslookup
153 Summary(es.UTF-8):      Utilitarios DNS - host, dig, dnsquery y nslookup
154 Summary(fr.UTF-8):      Utilitaires DNS - host, dig, dnsquery, nslookup
155 Summary(pl.UTF-8):      Narzędzia DNS - host, dig, dnsquery, nslookup
156 Summary(pt_BR.UTF-8):   Utilitários DNS - host, dig, dnsquery e nslookup
157 Summary(ru.UTF-8):      Утилиты для посылки запросов к серверам DNS
158 Summary(tr.UTF-8):      DNS araçları - host, dig, dnsquery, nslookup
159 Summary(uk.UTF-8):      Утиліти для надсилання запитів до серверів DNS
160 Summary(zh_CN.UTF-8):   Internet 域名服务器实用工具
161 Group:          Networking/Utilities
162 Requires:       %{name}-libs = %{epoch}:%{version}-%{release}
163 Requires:       iconv
164
165 %description utils
166 Bind-utils contains a collection of utilities for querying DNS (Domain
167 Name Service) name servers to find out information about Internet
168 hosts. These tools will provide you with the IP addresses for given
169 host names, as well as other information about registered domains and
170 network addresses.
171
172 You should install bind-utils if you need to get information from DNS
173 name servers.
174
175 %description utils -l de.UTF-8
176 Dienstprogrammsammlung zum Abfragen von Namen-Servern und Hosts. Diese
177 Tools bestimmen die IP-Adresse eines angegebenen Host-Namen und finden
178 Informationen über registrierte Domains und Netzwerk-Adressen.
179
180 %description utils -l es.UTF-8
181 Conjunto de utilitarios para consulta a servidores de nombres. Estas
182 herramientas permiten la determinación de direcciones IP para nombres
183 de máquinas informados y busca información sobre dominios registrados
184 y direcciones de red.
185
186 %description utils -l fr.UTF-8
187 Ensemble d'utilitaires pour interroger les serveurs de noms et
188 rechercher des hôtes. Ces outils vous permettent de déterminer les
189 adresses IP pour des noms d'hôtes donnés, et trouver des informations
190 sur les noms de domaine déclarés et les adresses réseau.
191
192 %description utils -l pl.UTF-8
193 Pakiet ten zawiera zbiór aplikacji umożliwiających odpytywanie
194 serwerów nazw z innych domen w celu uzyskania informacji o komputerach
195 i ich adresach IP.
196
197 %description utils -l pt_BR.UTF-8
198 Conjunto de utilitários para consulta a servidores DNS. Estas
199 ferramentas permitem a determinação de endereços IP para nomes de
200 máquinas informados e busca informações sobre domínios registrados e
201 endereços de rede. Você deveria instalar este pacote se necessitar
202 obter informações de servidores DNS.
203
204 %description utils -l ru.UTF-8
205 Набор утилит для генерации запросов к серверам имен (DNS) и поиска
206 адресов машин. Эти утилиты позволяют определить IP-адрес по известному
207 доменному имени (и наоборот) и другую информацию о зарегистрированных
208 доменах и сетевых адресах.
209
210 %description utils -l tr.UTF-8
211 Bu pakette isim sunucularını sorgulamak ve makina adreslerini çözmek
212 için kullanılan araçlar bulunmaktadır.
213
214 %description utils -l uk.UTF-8
215 Набір утиліт для генерації запитів до серверів імен (DNS) та пошуку
216 адрес машин. Ці утиліти дозволяють отримати IP-адресу за відомим
217 доменним іменем та навпаки, а також іншу інформацію про зареєстровані
218 домени та адреси.
219
220 %package libs
221 Summary:        DNS libraries
222 Summary(pl.UTF-8):      Biblioteki DNS
223 Summary(ru.UTF-8):      Библиотеки, необходимые для bind
224 Summary(uk.UTF-8):      Бібліотеки, необхідні для bind
225 Summary(zh_CN.UTF-8):   Internet 域名服务器开发库
226 Group:          Libraries
227
228 %description libs
229 The bind-libs package contains all libraries required for running BIND
230 and bind utils.
231
232 %description libs -l pl.UTF-8
233 Pakiet zawiera wszystkie biblioteki potrzebne do uruchomienia binda
234 lub programów z pakietu bind-utils.
235
236 %description libs -l ru.UTF-8
237 Библиотеки, необходимые для работы bind.
238
239 %description libs -l uk.UTF-8
240 Бібліотеки, необхідні для роботи bind.
241
242 %package devel
243 Summary:        DNS development includes
244 Summary(es.UTF-8):      Archivos de inclusión y bibliotecas para desarrollo DNS
245 Summary(pl.UTF-8):      Pliki nagłówkowe bibliotek DNS
246 Summary(pt_BR.UTF-8):   Todos os arquivos de cabeçalho e bibliotecas para desenvolvimento DNS
247 Summary(ru.UTF-8):      Хедеры и библиотеки разработчика для bind
248 Summary(uk.UTF-8):      Хедери та бібліотеки програміста для bind
249 Group:          Development/Libraries
250 Requires:       %{name}-libs = %{epoch}:%{version}-%{release}
251
252 %description devel
253 The bind-devel package contains all the include files and symlinks
254 required for DNS (Domain Name Service) development for BIND.
255
256 You should install bind-devel if you want to develop bind DNS
257 applications. If you install bind-devel, you'll also need to install
258 bind-libs.
259
260 %description devel -l es.UTF-8
261 Los archivos de inclusión y bibliotecas necesarios al desarrollo DNS
262 para el bind.
263
264 %description devel -l pl.UTF-8
265 Pakiet zawiera pliki nagłówkowe. Jeżeli będziesz pisał programy pod
266 binda, lub kompilował kod źródłowy oprogramowania korzystającego z
267 tych plików nagłówkowych czy biblioteki powinieneś zainstalować ten
268 pakiet.
269
270 %description devel -l pt_BR.UTF-8
271 Todos os arquivos de cabeçalho e bibliotecas necessários para o
272 desenvolvimento com o bind.
273
274 %description devel -l ru.UTF-8
275 Все хедеры и библиотеки, необходимые для написания программ с
276 использованием BIND 9.x.x.
277
278 %description devel -l uk.UTF-8
279 Всі хедери та бібліотеки, необхідні для розробки програм з
280 використанням BIND 9.x.x.
281
282 %package static
283 Summary:        DNS static libs
284 Summary(pl.UTF-8):      Biblioteki statyczne DNS
285 Summary(pt_BR.UTF-8):   Bibliotecas estáticas para desenvolvimento DNS
286 Summary(ru.UTF-8):      Статические библиотеки разработчика для bind
287 Summary(uk.UTF-8):      Статичні бібліотеки програміста для bind
288 Group:          Development/Libraries
289 Requires:       %{name}-devel = %{epoch}:%{version}-%{release}
290
291 %description static
292 Static bind libraries.
293
294 %description static -l pl.UTF-8
295 Statyczne biblioteki binda.
296
297 %description static -l pt_BR.UTF-8
298 Bibliotecas estáticas para desenvolvimento DNS.
299
300 %description static -l ru.UTF-8
301 Статические библиотеки, необходимые для написания программ с
302 использованием BIND.
303
304 %description static -l uk.UTF-8
305 Статичні бібліотеки, необхідні для розробки програм з використанням
306 BIND.
307
308 %prep
309 %setup -q -a1
310 %patch0 -p1
311 %patch1 -p1
312 %patch2 -p1
313 %patch3 -p1
314 %patch4 -p1
315 %{?with_ldap:%patch5 -p1}
316 %patch6 -p1
317 %patch7 -p1
318
319 %build
320 %{__libtoolize}
321 %{__aclocal}
322 %{__autoconf}
323 cd lib/bind
324 %{__libtoolize}
325 %{__aclocal}
326 %{__autoconf}
327 cd ../..
328 %configure \
329         --with-idn \
330         --with-libtool \
331         %{?with_ssl:--with-openssl=%{_prefix}} \
332         %{?with_ipv6:--enable-ipv6} \
333         --enable-libbind \
334         %{!?with_static_libs:--enable-static=no} \
335         --enable-threads \
336         --disable-getifaddrs
337
338 %{__make}
339
340 %install
341 rm -rf $RPM_BUILD_ROOT
342 install -d $RPM_BUILD_ROOT{%{_includedir},%{_bindir},%{_sbindir},%{_includedir}} \
343         $RPM_BUILD_ROOT/etc/{rc.d/init.d,logrotate.d,sysconfig} \
344         $RPM_BUILD_ROOT{%{_mandir}/man{1,3,5,8},%{_var}/{lib/named/{M,D,S,dev,etc},run,log}}
345
346 %{__make} install \
347         DESTDIR=$RPM_BUILD_ROOT
348
349 rm -f doc/rfc/rfc*
350
351 bzip2 -dc %{SOURCE5} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
352 mv $RPM_BUILD_ROOT%{_mandir}/ja/man8/nslookup.8 $RPM_BUILD_ROOT%{_mandir}/ja/man1/nslookup.1
353 %{__perl} -pi -e 's/NSLOOKUP 8/NSLOOKUP 1/' $RPM_BUILD_ROOT%{_mandir}/ja/man1/nslookup.1
354
355 install conf-pld/*.zone                 $RPM_BUILD_ROOT%{_var}/lib/named/M
356 install conf-pld/*.hint                 $RPM_BUILD_ROOT%{_var}/lib/named
357 install conf-pld/*.conf                 $RPM_BUILD_ROOT%{_var}/lib/named%{_sysconfdir}
358 install bin/tests/named.conf            EXAMPLE-CONFIG-named
359 install bin/tests/ndc.conf              EXAMPLE-CONFIG-ndc
360 install %{SOURCE2}                      $RPM_BUILD_ROOT/etc/rc.d/init.d/named
361 install %{SOURCE3}                      $RPM_BUILD_ROOT/etc/sysconfig/named
362 install %{SOURCE4}                      $RPM_BUILD_ROOT/etc/logrotate.d/named
363
364 ln -sf %{_var}/lib/named%{_sysconfdir}/named.conf $RPM_BUILD_ROOT/etc/named.conf
365 ln -sf %{_var}/lib/named/named.log      $RPM_BUILD_ROOT%{_var}/log/named
366 ln -sf %{_var}/lib/named/named.stats    $RPM_BUILD_ROOT%{_var}/log/named.stats
367
368 touch $RPM_BUILD_ROOT%{_var}/lib/named/{named.{log,stats},dev/{random,null}}
369
370 %{?with_ldap:install -d $RPM_BUILD_ROOT%{_datadir}/openldap/schema}
371 %{?with_ldap:install %{SOURCE6} $RPM_BUILD_ROOT%{_datadir}/openldap/schema/dnszone.schema}
372
373 # we don't want Makefiles in documentation...
374 # FIXME: breaks re-entrant install
375 rm -f doc/misc/Makefile*
376
377 %clean
378 rm -rf $RPM_BUILD_ROOT
379
380 %pre
381 if [ -f %{_sysconfdir}/named.boot ]; then
382         cp -f %{_sysconfdir}/named.boot /etc/named.boot.2conf
383         mv -f %{_sysconfdir}/named.boot /etc/named.rpmsave
384         echo "Warning: %{_sysconfdir}/named.boot saved as /etc/named.rpmsave." 1>&2
385 fi
386 %groupadd -g 58 named
387 %useradd -u 58 -g 58 -d /tmp -s /bin/false -c "BIND user" named
388
389 %post
390 if [ "$1" = 1 ]; then
391         mknod -m 660 %{_var}/lib/named/dev/null c 1 3 2>/dev/null
392         chown root:named %{_var}/lib/named/dev/null 2>/dev/null
393         mknod -m 640 %{_var}/lib/named/dev/null c 1 8 2>/dev/null
394         chown root:named %{_var}/lib/named/dev/random 2>/dev/null
395         if [ ! -c %{_var}/lib/named/dev/null ] || [ ! -c %{_var}/lib/named/dev/random ]; then
396 %banner -e %{name}-devs <<-EOF
397 Device nodes were not created!!!
398
399 Please read PLD Linux Vserver FAQ if you're installing %{name} inside
400 vserver: <http://www.pld-linux.org/Vserver>.
401 EOF
402         fi #'
403 fi
404 /sbin/chkconfig --add named
405 %service named restart
406
407 %preun
408 if [ "$1" = "0" ]; then
409         %service named stop
410         /sbin/chkconfig --del named
411 fi
412
413 %postun
414 if [ "$1" = "0" ]; then
415         %userremove named
416         %groupremove named
417 fi
418
419 %post   libs -p /sbin/ldconfig
420 %postun libs -p /sbin/ldconfig
421
422 %files
423 %defattr(644,root,root,755)
424 %doc README EXAMPLE-CONFIG-* FAQ doc/misc/* doc/arm/*.html doc/rfc/index %{?with_ldap:doc/*.sdb-ldap}
425
426 %attr(754,root,root) /etc/rc.d/init.d/named
427 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/named
428 %attr(640,root,named) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/named.conf
429 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/named
430
431 %attr(755,root,root) %{_sbindir}/*
432
433 %{?with_ldap:%{_datadir}/openldap/schema/*.schema}
434
435 %{_mandir}/man8/dns*
436 %{_mandir}/man8/lwres*
437 %{_mandir}/man8/named*
438 %{_mandir}/man8/rndc*
439 %{_mandir}/man5/rndc*
440 %{_mandir}/man5/named.conf*
441 %lang(ja) %{_mandir}/ja/man8/named*
442
443 %attr(770,root,named) %dir %{_var}/lib/named
444 %attr(770,root,named) %dir %{_var}/lib/named/D
445 %attr(750,root,named) %dir %{_var}/lib/named/M
446 %attr(770,root,named) %dir %{_var}/lib/named/S
447 %attr(750,root,named) %dir %{_var}/lib/named%{_sysconfdir}
448
449 %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/named/M/*
450 %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/named/root.*
451 %attr(640,root,named) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/named%{_sysconfdir}/*
452 %attr(660,named,named) %config(noreplace,missingok) %verify(not md5 mtime size) %{_var}/log/named*
453 %attr(660,named,named) %ghost  %{_var}/lib/named/named.log
454 %attr(660,named,named) %ghost  %{_var}/lib/named/named.stats
455
456 # devices for chrooted bind
457 %attr(750,root,named) %dir %{_var}/lib/named/dev
458 %ghost %attr(660,root,named) %{_var}/lib/named/dev/null
459 %ghost %attr(640,root,named) %{_var}/lib/named/dev/random
460
461 %files utils
462 %defattr(644,root,root,755)
463 %attr(755,root,root) %{_bindir}/dig
464 %attr(755,root,root) %{_bindir}/host
465 %attr(755,root,root) %{_bindir}/nslookup
466 %attr(755,root,root) %{_bindir}/nsupdate
467 %{_mandir}/man1/dig.1*
468 %{_mandir}/man1/host.1*
469 %{_mandir}/man1/nslookup.1*
470 %{_mandir}/man8/nsupdate.8*
471
472 %lang(fi) %{_mandir}/fi/man1/host.1*
473
474 %lang(fr) %{_mandir}/fr/man1/host.1*
475
476 %lang(hu) %{_mandir}/hu/man1/host.1*
477
478 %lang(ja) %{_mandir}/ja/man1/dig.1*
479 %lang(ja) %{_mandir}/ja/man1/host.1*
480 %lang(ja) %{_mandir}/ja/man1/nslookup.1*
481 %lang(ja) %{_mandir}/ja/man8/nsupdate.8*
482
483 %lang(pl) %{_mandir}/pl/man1/host.1*
484
485 %files libs
486 %defattr(644,root,root,755)
487 %attr(755,root,root) %{_libdir}/*.so.*.*
488
489 %files devel
490 %defattr(644,root,root,755)
491 %attr(755,root,root) %{_bindir}/*.sh
492 %attr(755,root,root) %{_libdir}/*.so
493 %{_libdir}/*.la
494 %{_includedir}/*
495 %{_mandir}/man3/*
496
497 %if %{with static_libs}
498 %files static
499 %defattr(644,root,root,755)
500 %{_libdir}/*.a
501 %endif
This page took 0.076961 seconds and 4 git commands to generate.