Blame SPECS/lldpd.spec

Packit 68bf6e
%if 0%{?el6}
Packit 68bf6e
%bcond_with systemd
Packit 68bf6e
%global rundir /var/run/
Packit 68bf6e
%else
Packit 68bf6e
%bcond_without systemd
Packit 68bf6e
%global rundir /run/
Packit 68bf6e
%endif
Packit 68bf6e
Packit 68bf6e
%global gh_owner vincentbernat
Packit 68bf6e
Packit 68bf6e
Name:     lldpd
Packit 68bf6e
Version:  1.0.1
Packit 68bf6e
Release:  2%{?dist}
Packit 68bf6e
Summary:  ISC-licensed implementation of LLDP
Packit 68bf6e
Packit 68bf6e
License:  ISC
Packit 68bf6e
URL:      https://%{gh_owner}.github.io/%{name}/
Packit 68bf6e
Source0:  https://media.luffy.cx/files/lldpd/lldpd-%{version}.tar.gz
Packit 68bf6e
Source1:  %{name}-fedora.service
Packit 68bf6e
Source2:  %{name}-tmpfiles
Packit 68bf6e
Source3:  %{name}-fedora.sysconfig
Packit 68bf6e
Source4:  %{name}-el6.init
Packit 68bf6e
Source5:  %{name}-el7.service
Packit 68bf6e
Packit 68bf6e
BuildRequires: readline-devel
Packit 68bf6e
BuildRequires: check-devel
Packit 68bf6e
BuildRequires: net-snmp-devel
Packit 68bf6e
BuildRequires: libxml2-devel
Packit 68bf6e
# EL6 needs libevent2 as the package
Packit 68bf6e
%if 0%{?el6}
Packit 68bf6e
BuildRequires: libevent2-devel
Packit 68bf6e
%else
Packit 68bf6e
BuildRequires: libevent-devel
Packit 68bf6e
%endif
Packit 68bf6e
Packit 68bf6e
%if 0%{?with_systemd}
Packit 68bf6e
# For systemd stuff
Packit 68bf6e
BuildRequires: systemd
Packit 68bf6e
%{?systemd_requires}
Packit 68bf6e
%else
Packit 68bf6e
Requires(post): chkconfig
Packit 68bf6e
Requires(preun): chkconfig
Packit 68bf6e
# This is for /sbin/service
Packit 68bf6e
Requires(preun): initscripts
Packit 68bf6e
%endif
Packit 68bf6e
Packit 68bf6e
Requires(pre): shadow-utils
Packit 68bf6e
Packit 68bf6e
%description
Packit 68bf6e
LLDP is an industry standard protocol designed to supplant proprietary
Packit 68bf6e
Link-Layer protocols such as EDP or CDP. The goal of LLDP is to provide
Packit 68bf6e
an inter-vendor compatible mechanism to deliver Link-Layer notifications
Packit 68bf6e
to adjacent network devices.
Packit 68bf6e
Packit 68bf6e
%package devel
Packit 68bf6e
Requires: %{name}%{?_isa} = %{version}-%{release}
Packit 68bf6e
Summary: %{summary}
Packit 68bf6e
Packit 68bf6e
%description devel
Packit 68bf6e
%{name} development libraries and headers
Packit 68bf6e
Packit 68bf6e
%prep
Packit 68bf6e
%autosetup
Packit 68bf6e
Packit 68bf6e
Packit 68bf6e
%build
Packit 68bf6e
%configure --disable-static --with-snmp --disable-silent-rules \
Packit 68bf6e
  --with-privsep-user=%{name} --with-privsep-group=%{name} \
Packit 68bf6e
  --with-privsep-chroot=%{rundir}%{name}/chroot \
Packit 68bf6e
  --with-lldpd-ctl-socket=%{rundir}%{name}/%{name}.socket \
Packit 68bf6e
%if 0%{?with_systemd}
Packit 68bf6e
  --with-systemdsystemunitdir=%{_unitdir} --with-sysusersdir=no
Packit 68bf6e
%endif
Packit 68bf6e
Packit 68bf6e
make %{?_smp_mflags}
Packit 68bf6e
Packit 68bf6e
Packit 68bf6e
%install
Packit 68bf6e
%make_install
Packit 68bf6e
Packit 68bf6e
%if 0%{?with_systemd}
Packit 68bf6e
%if 0%{?fedora} >= 26
Packit 68bf6e
install -p -D -m644 %{SOURCE1} %{buildroot}%{_unitdir}/%{name}.service
Packit 68bf6e
%else
Packit 68bf6e
install -p -D -m644 %{SOURCE5} %{buildroot}%{_unitdir}/%{name}.service
Packit 68bf6e
%endif
Packit 68bf6e
install -p -D -m644 %{SOURCE2} %{buildroot}%{_tmpfilesdir}/%{name}.conf
Packit 68bf6e
%else
Packit 68bf6e
install -p -D -m755 %{SOURCE4} %{buildroot}%{_initddir}/%{name}
Packit 68bf6e
%endif
Packit 68bf6e
install -p -D -m644 %{SOURCE3} %{buildroot}/etc/sysconfig/%{name}
Packit 68bf6e
Packit 68bf6e
install -d -D -m 0755 %{buildroot}%{rundir}%{name}/chroot
Packit 68bf6e
install -d -m 0755 %{buildroot}%{_sharedstatedir}/%{name}
Packit 68bf6e
# remove the docs from buildroot
Packit 68bf6e
rm -rf %{buildroot}/usr/share/doc/%{name}
Packit 68bf6e
Packit 68bf6e
Packit 68bf6e
# don't include completion conf yet
Packit 68bf6e
rm -f %{buildroot}/usr/share/bash-completion/completions/lldpcli
Packit 68bf6e
rm -f %{buildroot}/usr/share/zsh/vendor-completions/_lldpcli
Packit 68bf6e
rm -f %{buildroot}/usr/share/zsh/site-functions/_lldpcli
Packit 68bf6e
Packit 68bf6e
# remove static libtool archive
Packit 68bf6e
rm -f %{buildroot}%{_libdir}/liblldpctl.la
Packit 68bf6e
Packit 68bf6e
%pre
Packit 68bf6e
getent group %{name} >/dev/null || groupadd -r %{name}
Packit 68bf6e
getent passwd %{name} >/dev/null || \
Packit 68bf6e
    useradd -r -g %{name} -d %{_sharedstatedir}/%{name} -s /sbin/nologin \
Packit 68bf6e
    -c "Used by the %{name} daemon" %{name}
Packit 68bf6e
exit 0
Packit 68bf6e
Packit 68bf6e
%post
Packit 68bf6e
/sbin/ldconfig
Packit 68bf6e
%if 0%{?with_systemd}
Packit 68bf6e
%systemd_post %{name}.service
Packit 68bf6e
%else
Packit 68bf6e
# This adds the proper /etc/rc*.d links for the script
Packit 68bf6e
/sbin/chkconfig --add %{name}
Packit 68bf6e
%endif
Packit 68bf6e
Packit 68bf6e
%preun
Packit 68bf6e
%if 0%{?with_systemd}
Packit 68bf6e
%systemd_preun %{name}.service
Packit 68bf6e
%else
Packit 68bf6e
if [ $1 -eq 0 ] ; then
Packit 68bf6e
    /sbin/service %{name} stop >/dev/null 2>&1
Packit 68bf6e
    /sbin/chkconfig --del %{name}
Packit 68bf6e
fi
Packit 68bf6e
%endif
Packit 68bf6e
Packit 68bf6e
%postun
Packit 68bf6e
/sbin/ldconfig
Packit 68bf6e
%if 0%{?with_systemd}
Packit 68bf6e
%systemd_postun_with_restart %{name}.service
Packit 68bf6e
%else
Packit 68bf6e
if [ "$1" -ge "1" ] ; then
Packit 68bf6e
    /sbin/service %{name} condrestart >/dev/null 2>&1 || :
Packit 68bf6e
fi
Packit 68bf6e
%endif
Packit 68bf6e
Packit 68bf6e
%files
Packit 68bf6e
%doc NEWS README.md
Packit 68bf6e
%license LICENSE
Packit 68bf6e
%{_sbindir}/lldpcli
Packit 68bf6e
%{_sbindir}/lldpctl
Packit 68bf6e
%{_sbindir}/%{name}
Packit 68bf6e
%config %{_sysconfdir}/%{name}.d
Packit 68bf6e
%config(noreplace) %{_sysconfdir}/sysconfig/%{name}
Packit 68bf6e
%{_mandir}/man8/lldpcli.8*
Packit 68bf6e
%{_mandir}/man8/lldpctl.8*
Packit 68bf6e
%{_mandir}/man8/%{name}.8*
Packit 68bf6e
%{_libdir}/liblldpctl.so.4
Packit 68bf6e
%{_libdir}/liblldpctl.so.4.8.0
Packit 68bf6e
%dir %{rundir}%{name}
Packit 68bf6e
%dir %{rundir}%{name}/chroot
Packit 68bf6e
%if 0%{?with_systemd}
Packit 68bf6e
%{_unitdir}/%{name}.service
Packit 68bf6e
%{_tmpfilesdir}/%{name}.conf
Packit 68bf6e
%else
Packit 68bf6e
%{_initddir}/%{name}
Packit 68bf6e
%endif
Packit 68bf6e
%dir %attr(-,lldpd,lldpd) %{_sharedstatedir}/%{name}
Packit 68bf6e
Packit 68bf6e
%files devel
Packit 68bf6e
%{_includedir}/lldp-const.h
Packit 68bf6e
%{_includedir}/lldpctl.h
Packit 68bf6e
%{_libdir}/liblldpctl.so
Packit 68bf6e
%{_libdir}/pkgconfig/lldpctl.pc
Packit 68bf6e
Packit 68bf6e
Packit 68bf6e
%changelog
Packit 68bf6e
* Thu Aug 09 2018 Josef Ridky <jridky@redhat.com> - 1.0.1-2
Packit 68bf6e
- Rebuild for Net-SNMP
Packit 68bf6e
Packit 68bf6e
* Tue Apr 17 2018 James Hogarth <james.hogarth@gmail.com> - 1.0.1-1
Packit 68bf6e
- Update to 1.0.1
Packit 68bf6e
Packit 68bf6e
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.8-2
Packit 68bf6e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
Packit 68bf6e
Packit 68bf6e
* Mon Aug 21 2017 James Hogarth <james.hogarth@gmail.com> - 0.9.8-1
Packit 68bf6e
- Update to 0.9.8
Packit 68bf6e
Packit 68bf6e
* Fri Aug 11 2017 Igor Gnatenko <ignatenko@redhat.com> - 0.9.7-10
Packit 68bf6e
- Rebuilt after RPM update (№ 3)
Packit 68bf6e
Packit 68bf6e
* Thu Aug 10 2017 Igor Gnatenko <ignatenko@redhat.com> - 0.9.7-9
Packit 68bf6e
- Rebuilt for RPM soname bump
Packit 68bf6e
Packit 68bf6e
* Thu Aug 10 2017 Igor Gnatenko <ignatenko@redhat.com> - 0.9.7-8
Packit 68bf6e
- Rebuilt for RPM soname bump
Packit 68bf6e
Packit 68bf6e
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.7-7
Packit 68bf6e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
Packit 68bf6e
Packit 68bf6e
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.7-6
Packit 68bf6e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
Packit 68bf6e
Packit 68bf6e
* Thu Apr 06 2017 James Hogarth <james.hogarth@gmail.com> - 0.9.7-5
Packit 68bf6e
- Older fedora needs the older syntax matching EPEL7
Packit 68bf6e
Packit 68bf6e
* Wed Apr 05 2017 James Hogarth <james.hogarth@gmail.com> - 0.9.7-4
Packit 68bf6e
- EPEL7 systemd needs an older syntax
Packit 68bf6e
Packit 68bf6e
* Wed Apr 05 2017 James Hogarth <james.hogarth@gmail.com> - 0.9.7-3
Packit 68bf6e
- Use the official release tarball rather than the github snapshot
Packit 68bf6e
- Add EPEL6 conditionals
Packit 68bf6e
Packit 68bf6e
* Wed Apr 05 2017 James Hogarth <james.hogarth@gmail.com> - 0.9.7-2
Packit 68bf6e
- Tweaks to spec requested in review
Packit 68bf6e
Packit 68bf6e
* Tue Apr 04 2017 James Hogarth <james.hogarth@gmail.com> - 0.9.7-1
Packit 68bf6e
- Initial package