diff options
Diffstat (limited to 'distro/pkg/rpm/bird.spec')
-rw-r--r-- | distro/pkg/rpm/bird.spec | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/distro/pkg/rpm/bird.spec b/distro/pkg/rpm/bird.spec new file mode 100644 index 00000000..1267cf9b --- /dev/null +++ b/distro/pkg/rpm/bird.spec @@ -0,0 +1,121 @@ +%global _hardened_build 1 + +%if "x%{?suse_version}" == "x" +# missing linuxdoc-tools and sgml-common on SUSE +%define _without_doc 1 +%endif + +Name: bird +Version: {{ version }} +Release: cznic.{{ release }}%{?dist} +Summary: BIRD Internet Routing Daemon + +License: GPLv2+ +URL: https://bird.network.cz/ +Source0: https://bird.network.cz/download/bird-%{version}.tar.gz +Source1: bird.service +Source2: bird.tmpfilesd + +BuildRequires: flex +BuildRequires: bison +BuildRequires: ncurses-devel +BuildRequires: readline-devel +BuildRequires: sed +BuildRequires: gcc +BuildRequires: make +BuildRequires: libssh-devel +%if 0%{?fedora} || (0%{?rhel} && 0%{?rhel} > 7) +BuildRequires: systemd-rpm-macros +%else +BuildRequires: systemd +%endif + +Obsoletes: bird6 < 2.0.2-1 +Provides: bird6 = %{version}-%{release} + +%description +BIRD is a dynamic IP routing daemon supporting both, IPv4 and IPv6, Border +Gateway Protocol (BGPv4), Routing Information Protocol (RIPv2, RIPng), Open +Shortest Path First protocol (OSPFv2, OSPFv3), Babel Routing Protocol (Babel), +Bidirectional Forwarding Detection (BFD), IPv6 router advertisements, static +routes, inter-table protocol, command-line interface allowing on-line control +and inspection of the status of the daemon, soft reconfiguration as well as a +powerful language for route filtering. + +%if 0%{!?_without_doc:1} +%package doc +Summary: Documentation for BIRD Internet Routing Daemon +BuildRequires: linuxdoc-tools sgml-common perl(FindBin) +BuildArch: noarch + +%description doc +Documentation for users and programmers of the BIRD Internet Routing Daemon. + +BIRD is a dynamic IP routing daemon supporting both, IPv4 and IPv6, Border +Gateway Protocol (BGPv4), Routing Information Protocol (RIPv2, RIPng), Open +Shortest Path First protocol (OSPFv2, OSPFv3), Babel Routing Protocol (Babel), +Bidirectional Forwarding Detection (BFD), IPv6 router advertisements, static +routes, inter-table protocol, command-line interface allowing on-line control +and inspection of the status of the daemon, soft reconfiguration as well as a +powerful language for route filtering. +%endif + +%prep +%setup -q + +%build +%configure --runstatedir=%{_rundir}/bird +%make_build all %{!?_without_doc:docs} + +%install +%make_install + +{% raw %} +install -d %{buildroot}{%{_localstatedir}/lib/bird,%{_rundir}/bird} +install -D -p -m 0644 %{SOURCE1} %{buildroot}%{_unitdir}/bird.service +install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_tmpfilesdir}/bird.conf +{% endraw %} + +%check +make test + +%pre +getent group bird >/dev/null || groupadd -r bird +getent passwd bird >/dev/null || \ + useradd -r -g bird -d %{_localstatedir}/lib/bird -s /sbin/nologin \ + -c "BIRD daemon user" bird +exit 0 + +%post +%systemd_post bird.service + +%preun +%systemd_preun bird.service + +%postun +%systemd_postun_with_restart bird.service + +%files +%doc NEWS README +%attr(0640,root,bird) %config(noreplace) %{_sysconfdir}/bird.conf +%{_unitdir}/bird.service +%{_tmpfilesdir}/bird.conf +%{_sbindir}/bird +%{_sbindir}/birdc +%{_sbindir}/birdcl +%dir %attr(0750,bird,bird) %{_localstatedir}/lib/bird +%dir %attr(0750,bird,bird) %{_rundir}/bird + +%if 0%{!?_without_doc:1} +%files doc +%doc NEWS README +%doc doc/bird.conf.* +%doc obj/doc/bird*.html +%doc obj/doc/bird.pdf +%doc obj/doc/prog*.html +%doc obj/doc/prog.pdf +%endif + +%changelog +* Wed Apr 07 2021 Jakub Ružička <jakub.ruzicka@nic.cz> - {{ version }}-cznic.1 +- upstream package |