]> git.pld-linux.org Git - packages/dnsmasq.git/blob - dnsmasq.spec
f87eeacaf1c9d8d05375c96ff41fe77f6f943656
[packages/dnsmasq.git] / dnsmasq.spec
1 # TODO:
2 # - subpackage DNSmasq webmin module (contrib/webmin)
3 #
4 # Conditional build:
5 %bcond_without  dbus            # DBus interface
6 %bcond_without  idn             # IDN via libidn2
7 %bcond_without  conntrack       # conntrack support
8 %bcond_with     lua             # Lua support
9
10 Summary:        A lightweight caching server (DNS, DHCP)
11 Summary(pl.UTF-8):      Lekki buforujący serwer nazw (DNS) i DHCP
12 Name:           dnsmasq
13 Version:        2.82
14 Release:        1
15 License:        GPL v2
16 Group:          Networking/Daemons
17 # TODO: http://thekelleys.org.uk/dnsmasq/%{name}-%{version}.tar.xz
18 Source0:        http://thekelleys.org.uk/dnsmasq/%{name}-%{version}.tar.gz
19 # Source0-md5:  3c710dee3edba510ed11a6e3d9e0d9cb
20 Source1:        %{name}.init
21 Source2:        %{name}.sysconfig
22 Source3:        %{name}.service
23 URL:            http://www.thekelleys.org.uk/dnsmasq/doc.html
24 %{?with_dbus:BuildRequires:     dbus-devel}
25 BuildRequires:  gettext-tools
26 BuildRequires:  gmp-devel
27 %{?with_idn:BuildRequires:      libidn2-devel}
28 %{?with_conntrack:BuildRequires:        libnetfilter_conntrack-devel}
29 %{?with_lua:BuildRequires:      lua52-devel}
30 BuildRequires:  nettle-devel
31 BuildRequires:  pkgconfig
32 BuildRequires:  rpmbuild(macros) >= 1.671
33 Requires(post,preun):   /sbin/chkconfig
34 Requires(post,preun,postun):    systemd-units >= 38
35 Requires:       systemd-units >= 38
36 Requires:       rc-scripts
37 Provides:       caching-nameserver
38 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
39
40 %define         copts   -DHAVE_DNSSEC%{?with_dbus: -DHAVE_DBUS}%{?with_idn: -DHAVE_LIBIDN2}%{?with_conntrack: -DHAVE_CONNTRACK}%{?with_lua: -DHAVE_LUASCRIPT}
41
42 %description
43 Dnsmasq is a lightweight, easy to configure DNS forwarder and DHCP
44 server. It is designed to provide DNS and, optionally, DHCP, to a
45 small network. It can serve the names of local machines which are not
46 in the global DNS. The DHCP server integrates with the DNS server and
47 allows machines with DHCP-allocated addresses to appear in the DNS
48 with names configured either in each host or in a central
49 configuration file. Dnsmasq supports static and dynamic DHCP leases
50 and BOOTP for network booting of diskless machines.
51
52 Dnsmasq is targeted at home networks using NAT and connected to the
53 Internet via a modem, cable-modem or ADSL connection but would be a
54 good choice for any small network where low resource use and ease of
55 configuration are important.
56
57 %description -l pl.UTF-8
58 dnsmasq jest lekkim, łatwym w konfiguracji forwarderem DNS i serwerem
59 DHCP zaprojektowanym do serwowania usługi DNS i opcjonalnie DHCP dla
60 małych sieci. Może on serwować także nazwy dla lokalnych maszyn nie
61 znajdujących się w globalnym DNS-ie. Serwer DHCP integruje się z
62 serwerem DNS, umożliwiając maszynom o adresach przydzielonych przez
63 DHCP pojawienie się w DNS-ie z nazwami konfigurowanymi dla każdego
64 hosta lub w centralnym pliku konfiguracyjnym. dnsmasq obsługuje
65 statyczne i dynamiczne dzierżawy DHCP oraz BOOTP do uruchamiania z
66 sieci maszyn bezdyskowych.
67
68 dnsmasq jest przeznaczony głównie dla sieci domowych używających NAT-u
69 i podłączonych do Internetu przez modem, modem kablowy lub łącze ADSL,
70 ale jest dobrym wyborem dla dowolnej małej sieci, gdzie ważne jest
71 małe wykorzystanie zasobów i łatwa konfiguracja.
72
73 %prep
74 %setup -q
75
76 %build
77 %{__make} all-i18n \
78         CC="%{__cc}" \
79         CFLAGS="%{rpmcppflags} %{rpmcflags} -DHAVE_ISC_READER" \
80         LDFLAGS="%{rpmldflags}" \
81         COPTS="%{copts}" \
82         PREFIX=%{_prefix}
83
84 %install
85 rm -rf $RPM_BUILD_ROOT
86 install -d $RPM_BUILD_ROOT{%{_sbindir},/etc/dbus-1/system.d,/etc/sysconfig,/etc/rc.d/init.d} \
87         $RPM_BUILD_ROOT{%{systemdunitdir},%{_mandir}/man8,%{_datadir}/dnsmasq}
88
89 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/dnsmasq
90 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/dnsmasq
91 install dnsmasq.conf.example $RPM_BUILD_ROOT%{_sysconfdir}/dnsmasq.conf
92
93 install contrib/port-forward/dnsmasq-portforward $RPM_BUILD_ROOT%{_sbindir}
94 install contrib/port-forward/portforward $RPM_BUILD_ROOT%{_sysconfdir}
95
96 install %{SOURCE3} $RPM_BUILD_ROOT%{systemdunitdir}/dnsmasq.service
97
98 install -p trust-anchors.conf $RPM_BUILD_ROOT%{_datadir}/dnsmasq
99
100 %{__make} install-i18n \
101         COPTS="%{copts}" \
102         DESTDIR=$RPM_BUILD_ROOT \
103         PREFIX=%{_prefix}
104
105 %{__mv} $RPM_BUILD_ROOT%{_datadir}/locale/{no,nb}
106
107 %if %{with dbus}
108 cp -p dbus/dnsmasq.conf $RPM_BUILD_ROOT/etc/dbus-1/system.d/dnsmasq.conf
109 %endif
110
111 %find_lang %{name}
112
113 %clean
114 rm -rf $RPM_BUILD_ROOT
115
116 %post
117 /sbin/chkconfig --add dnsmasq
118 %service dnsmasq restart
119 %systemd_post dnsmasq.service
120
121 %preun
122 if [ "$1" = "0" ]; then
123         %service dnsmasq stop
124         /sbin/chkconfig --del dnsmasq
125 fi
126 %systemd_preun dnsmasq.service
127
128 %postun
129 %systemd_reload
130
131 %triggerpostun -- dnsmasq < 2.68-1.1
132 if [ -f /etc/sysconfig/dnsmasq ]; then
133         __OPT=
134         . /etc/sysconfig/dnsmasq
135         [ -n "$MAILHOSTNAME" ] &&  __OPT="-m $MAILHOSTNAME"
136         [ -n "$RESOLV_CONF" ] && __OPT="$__OPT -r $RESOLV_CONF"
137         [ -n "$DHCP_LEASE" ] && __OPT="$__OPT -l $DHCP_LEASE"
138         [ -n "$DOMAIN_SUFFIX" ] && __OPT="$__OPT -s $DOMAIN_SUFFIX"
139         [ -n "$INTERFACE" ] && __OPT="$__OPT -i $INTERFACE"
140         if [ -n "$__OPT" ]; then
141                 %{__cp} -f /etc/sysconfig/dnsmasq{,.rpmsave}
142                 echo >>/etc/sysconfig/dnsmasq
143                 echo "# Added by rpm trigger" >>/etc/sysconfig/dnsmasq
144                 echo "OPTIONS=\"$OPTIONS $__OPT\"" >>/etc/sysconfig/dnsmasq
145         fi
146 fi
147 %systemd_trigger dnsmasq.service
148
149 %files -f %{name}.lang
150 %defattr(644,root,root,755)
151 %doc CHANGELOG FAQ *.html contrib/{dnslist,dynamic-dnsmasq}
152 %{?with_dbus:%config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/system.d/dnsmasq.conf}
153 %attr(754,root,root) /etc/rc.d/init.d/dnsmasq
154 %{systemdunitdir}/dnsmasq.service
155 %attr(755,root,root) %{_sbindir}/dnsmasq
156 %attr(755,root,root) %{_sbindir}/dnsmasq-portforward
157 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/dnsmasq
158 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/dnsmasq.conf
159 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/portforward
160 %{_mandir}/man8/dnsmasq.8*
161 %lang(es) %{_mandir}/es/man8/dnsmasq.8*
162 %lang(fr) %{_mandir}/fr/man8/dnsmasq.8*
163 %dir %{_datadir}/dnsmasq
164 %{_datadir}/dnsmasq/trust-anchors.conf
This page took 0.029438 seconds and 2 git commands to generate.