c213227f60
Update to rpcbind 0.2.2 and port most patches to it. 6 are still missing. - Split off 0003-systemd-no-dualmode.patch from 0001-systemd-enhancements.patch for easier upstream submission. - Split off 0004-systemd-sd_notify.patch from 0001-systemd-enhancements.patch for easier upstream submission. - Rename 0001-systemd-enhancements.patch to 0001-systemd-unit-files.patch - Update to latest rpcbind 0.2.2 upstream release. - Following patches are upstream: - 0001-Fix-building-one-systems-w-out-nss.h.patch - 0002-Rename-configure.in-to-configure.ac.patch - 0003-rpcbind-rpcuser-not-being-set-in-Makefile.am.patch - 0004-Silence-a-warning-about-setgroups-being-implicitly-d.patch - Adjust following patches: - 0005-Remove-obsolete-function-in6_fillscopeid.patch - 0006-In-init_transport-move-creation-of-COTS-sockets-clos.patch - 0018-configure-check-for-nss.h.patch - Obsolete patches: - 0015-When-using-systemd-activation-make-rpcbind-notify-sy.patch - 0016-Notify-systemd-unconditionally.patch - 0012-Support-systemd-activation.patch - 0013-socket-activation-Fix-rpcbind.service-to-use-separat.patch - 0017-Pull-the-sysconfig-file-into-rpcbind.service-and-use.patch - 0025-rpcinfo-warmstat_no-warning-about-missing-file.patch - 0026-systemd-no-default-dep - 0027-socket-before-service.patch - 0028-rpcbind-after-var-run.patch - 0029-rpcbind-sd-notify-stupid-errmsg.patch - New patches: - 0001-systemd-enhancements.patch - 0002-rpcinfo_warmstart-no_warning_about_missing_file.patch OBS-URL: https://build.opensuse.org/request/show/264790 OBS-URL: https://build.opensuse.org/package/show/network/rpcbind?expand=0&rev=51
156 lines
5.0 KiB
RPMSpec
156 lines
5.0 KiB
RPMSpec
#
|
|
# spec file for package rpcbind
|
|
#
|
|
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
Name: rpcbind
|
|
Version: 0.2.2
|
|
Release: 0
|
|
Summary: Transport independent RPC portmapper
|
|
License: BSD-4-Clause
|
|
Group: Productivity/Networking/System
|
|
Url: git://git.infradead.org/users/steved/rpcbind.git
|
|
Source: %{name}-%{version}.tar.bz2
|
|
Source2: sysconfig.rpcbind
|
|
Source3: rpcbind.xml
|
|
Source4: pmap_set.c
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
BuildRequires: libtirpc-devel
|
|
BuildRequires: libtool
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: tcpd-devel
|
|
BuildRequires: pkgconfig(libsystemd-daemon)
|
|
PreReq: %fillup_prereq
|
|
Requires(pre): /usr/sbin/useradd
|
|
Patch1: 0001-systemd-unit-files.patch
|
|
Patch2: 0002-rpcinfo_warmstart-no_warning_about_missing_file.patch
|
|
Patch3: 0003-systemd-no-dualmode.patch
|
|
Patch4: 0004-systemd-sd_notify.patch
|
|
Patch5: 0005-Remove-obsolete-function-in6_fillscopeid.patch
|
|
Patch6: 0006-In-init_transport-move-creation-of-COTS-sockets-clos.patch
|
|
Patch7: 0007-The-use-of-AI_NUMERICHOST-in-init_transport-is-broke.patch
|
|
Patch8: 0008-First-part-of-init_transport-refactoring.patch
|
|
Patch9: 0009-init_transport-move-the-registration-code-into-a-sep.patch
|
|
Patch10: 0010-Fix-the-behavior-when-specifying-the-h-option.patch
|
|
Patch11: 0011-Clean-up-the-way-we-handle-the-h-option-in-init_tran.patch
|
|
Patch14: 0014-When-using-systemd-redirect-syslog-calls-to-the-syst.patch
|
|
Patch18: 0018-configure-check-for-nss.h.patch
|
|
Patch19: 0019-rpcinfo-ip_ping-clean-up-client-ping-create-destroy.patch
|
|
Patch20: 0020-rpcinfo-introduce-new-helper-function-ip_getclient.patch
|
|
Patch21: 0021-rpcinfo-make-t-u-options-support-IPv6-addresses-too.patch
|
|
Patch22: 0022-rpcinfo-remove-obsolete-function-clnt_com_create.patch
|
|
Patch23: 0023-Make-rpcinfo-p-support-IPv6-addresses-too.patch
|
|
Patch24: 0024-rpcinfo-remove-obsolete-function-get_inet_address.patch
|
|
|
|
%define statefile /var/lib/portmap.state
|
|
%{?systemd_requires}
|
|
Provides: portmap
|
|
|
|
%description
|
|
Rpcbind is a replacement for portmap. Whereas portmap supports only UDP
|
|
and TCP transports over INET (IPv4), rpcbind can be configured to work
|
|
on various transports supported by the TI-RPC. This includes TCP and
|
|
UDP over IPv6. Moreover, rpcbind provides additional functions in
|
|
regards to portmap.
|
|
|
|
%prep
|
|
%setup -q
|
|
cp %{SOURCE4} .
|
|
%patch1 -p1
|
|
%patch2 -p1
|
|
%patch3 -p1
|
|
%patch4 -p1
|
|
%patch5 -p1
|
|
%patch6 -p1
|
|
%patch7 -p1
|
|
#%patch8 -p1
|
|
#%patch9 -p1
|
|
#%patch10 -p1
|
|
#%patch11 -p1
|
|
#%patch14 -p1
|
|
%patch18 -p1
|
|
%patch19 -p1
|
|
%patch20 -p1
|
|
%patch21 -p1
|
|
%patch22 -p1
|
|
%patch23 -p1
|
|
#%patch24 -p0
|
|
|
|
%build
|
|
autoreconf -fiv
|
|
export CFLAGS="$RPM_OPT_FLAGS -fpie"
|
|
export LDFLAGS="-pie -Wl,-z,relro,-z,now"
|
|
%configure \
|
|
--bindir=/sbin \
|
|
--enable-libwrap \
|
|
--enable-warmstarts \
|
|
--disable-debug \
|
|
--with-statedir=%{_localstatedir}/lib/rpcbind \
|
|
--with-rpcuser=rpc
|
|
|
|
%{__make} %{?jobs:-j%jobs}
|
|
%{__cc} -pie -fpie -fwhole-program -Wl,-z,relro,-z,now %{optflags} pmap_set.c -o pmap_set
|
|
|
|
%install
|
|
make install DESTDIR=$RPM_BUILD_ROOT
|
|
mkdir -p $RPM_BUILD_ROOT%_localstatedir/lib/rpcbind
|
|
# fillup template
|
|
mkdir -p $RPM_BUILD_ROOT/var/adm/fillup-templates
|
|
install -m 644 %{SOURCE2} $RPM_BUILD_ROOT/var/adm/fillup-templates/
|
|
mkdir -p $RPM_BUILD_ROOT%_datadir/omc/svcinfo.d
|
|
install -m 644 %{SOURCE3} $RPM_BUILD_ROOT%_datadir/omc/svcinfo.d/
|
|
#
|
|
install -m 755 pmap_set $RPM_BUILD_ROOT/sbin/pmap_set2
|
|
# create symlink for rcrpcbind
|
|
mkdir -p $RPM_BUILD_ROOT%{_sbindir}
|
|
ln -s /sbin/service $RPM_BUILD_ROOT%{_sbindir}/rcrpcbind
|
|
|
|
%clean
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
|
%pre
|
|
%service_add_pre %{name}.service %{name}.socket
|
|
|
|
# Add "rpc" user
|
|
getent passwd rpc >/dev/null || /usr/sbin/useradd -r -g nogroup -d /var/lib/empty -s /sbin/nologin -c "user for rpcbind" rpc
|
|
exit 0
|
|
|
|
%preun
|
|
%service_del_preun %{name}.service %{name}.socket
|
|
|
|
%post
|
|
%{fillup_only -n rpcbind}
|
|
%service_add_post %{name}.service %{name}.socket
|
|
|
|
%postun
|
|
%service_del_postun %{name}.service %{name}.socket
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
%doc AUTHORS ChangeLog COPYING NEWS README
|
|
/sbin/pmap_set2
|
|
/sbin/rpcbind
|
|
/sbin/rpcinfo
|
|
%{_sbindir}/rcrpcbind
|
|
%{_mandir}/*/*
|
|
%attr(-,rpc,root) %{_localstatedir}/lib/rpcbind
|
|
/var/adm/fillup-templates/sysconfig.rpcbind
|
|
%{_datadir}/omc/svcinfo.d/rpcbind.xml
|
|
%{_unitdir}/%{name}.service
|
|
%{_unitdir}/%{name}.socket
|
|
|
|
%changelog
|