net-fs/nfs-utils: Added snapshot release

Fixes "nfsidmap.h: No such file or directory" error (bug #636818) and restores
ABI compat with pre-merge libnfsidmap.

Doing a snapshot release because of patch size.

Closes: https://bugs.gentoo.org/636818
Package-Manager: Portage-2.3.16, Repoman-2.3.6
This commit is contained in:
Thomas Deutschmann
2017-11-25 16:08:01 +01:00
parent 45fdfaf654
commit 5d41ae904f
2 changed files with 186 additions and 1 deletions

View File

@@ -1,5 +1,6 @@
DIST nfs-utils-1.3.4.tar.bz2 814545 SHA256 c529c82a82320daae811f3d3a143f83d2714d7e7a43beadd42fcd6022c17d590 SHA512 765c0bc55a9a0bdb2c25d8fb7189a9054fb9f2dd51726eda29f44e5d5c423e245b02307dfcfab9239276d8f44869a72732416f6e9ef5a1f80753d9243ba1b38c WHIRLPOOL 6dc556ef7d00a583c222eb62a600b0d83c6f91ad65d89ca14e1fb3c8aaacf4fbae492e6f0ca3fb0821e2b666f0806ad5fddec041a1124b86b9941540cdfb08b4
DIST nfs-utils-2.1.1.tar.bz2 820083 SHA256 0a28416948516c26f3bfe90425b0de09b79364dc1f508bf1dda8de66e1edbb09 SHA512 ed358280b7e124154632040bf747f6e4c3c6e4156bf90e82ff6915b1488f1c0dd65251a3a0f9b7ca96b9664d64e24b379828da9b524e64a3c769a44f4c930448 WHIRLPOOL bb28ae312b64c3493a1393a5b41eda457367594a71e230379ec04ffea3eb29d60ab8254e4981b0aa9cbe778dc1fbe9b08dc8615184a35cdb22bf4e5e04e56a6c
DIST nfs-utils-2.1.2_rc6.tar.gz 476695 SHA256 a88b499210eec4fb41414f9ba653570d1845981e414f5de6ae90ecaf14205977 SHA512 d7c054074e2ea4370a5e47922785fa2a0cf595623d0222cb16f910c4946ed7f3d6f093b471557ce139c85ad0dd321bed0222f5c5aa5b7bca04b31d422eb35f75 WHIRLPOOL 6dfec79baa7b37f57a162296b7e5acb07da9144d677cf1f7ec515fc220a844d9a0d7e935ac0f4b9a1db9eaa2816d5d1ea089141f11f6ae9e6ec8bd77d24be0b5
DIST nfs-utils-2.2.1.tar.bz2 853812 SHA256 0d819d8da358bea6e005e1a6cf0f6fa0c5507a78747d36bc87a0182e6af14291 SHA512 05e2aa4f413a4a4927995847211680baf87f956a435d0d903dd7b6239f72e66a15a089758d41874c05c2137e0626d72c1714010c2a9ce854943fef7798db9a24 WHIRLPOOL 8cd39c83e0a761c3cc846f81184ec6cbe68289b2648c5605ba68a31379f86afafe67f6808f348b30875730a1ee1656d65738b74dd0863a70b48250a3d325f1fc
DIST nfs-utils-2.2.1.tar.bz2 853812 BLAKE2B bc973f8fe781f7658161d0d5895bc32ffeeab7a06276aed827926304f8e3b82287804aaa7e49c458d9b69992193c6c733fb6ae359063c076cfd15bd21185c432 SHA512 05e2aa4f413a4a4927995847211680baf87f956a435d0d903dd7b6239f72e66a15a089758d41874c05c2137e0626d72c1714010c2a9ce854943fef7798db9a24
DIST nfs-utils-2.2.2_rc1.tar.gz 509381 SHA256 5ed5c50ef20c49a9b96c99bd288d25dc94ecbdb4b314f5d885576692e89345bc SHA512 5cc9a19e1ebf1831f1914419c0e7f12ff12037caa35e5866dfba8bf30c5355dcf2e039928b9b336c6755df856549ccac6ea646d61b57c68f96fd586d21a27f1a WHIRLPOOL 407b721b43308b96ae48553169dfeafb2844dedbce3060860549d85322aea074539bac82bb5579a17d74b2fcc212156d1450feb8a5340570f3d33c763b8fed29
DIST nfs-utils-2.2.2_rc1_p20171107.tar.gz 509543 BLAKE2B 44c5bf63b16b7727f6cdba0d1051929f6e132b87fcb8e9e18a0ad699dfeec1b26f9988fc7b5db5dbcc1dd3c04f1dd30fa0f89616fe86cbfd4dbb36f0d8aed08b SHA512 27e38fe3ff2d94aa45a526343c88c781b39db4f85b2fd50b632516be609f7a05dced115e26f73176ba28409cd38a3c7db6ddb8370ab75071150b1cf3fba46e43

View File

@@ -0,0 +1,184 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit autotools flag-o-matic multilib systemd
DESCRIPTION="NFS client and server daemons"
HOMEPAGE="http://linux-nfs.org/"
MY_COMMIT="8d9bf479441d9d7a44a86b69026a7e9d431d3ade"
SRC_URI="http://git.linux-nfs.org/?p=steved/nfs-utils.git;a=snapshot;h=${MY_COMMIT};sf=tgz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-${MY_COMMIT:0:7}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
LICENSE="GPL-2"
SLOT="0"
IUSE="caps ipv6 kerberos ldap +libmount nfsdcld +nfsidmap +nfsv4 nfsv41 selinux tcpd +uuid"
REQUIRED_USE="kerberos? ( nfsv4 )"
RESTRICT="test" #315573
# kth-krb doesn't provide the right include
# files, and nfs-utils doesn't build against heimdal either,
# so don't depend on virtual/krb.
# (04 Feb 2005 agriffis)
DEPEND_COMMON="
net-libs/libtirpc:=
>=net-nds/rpcbind-0.2.4
sys-libs/e2fsprogs-libs
caps? ( sys-libs/libcap )
ldap? ( net-nds/openldap )
libmount? ( sys-apps/util-linux )
nfsdcld? ( >=dev-db/sqlite-3.3 )
nfsv4? (
dev-libs/libevent:=
>=sys-apps/keyutils-1.5.9
kerberos? (
>=net-libs/libtirpc-0.2.4-r1[kerberos]
app-crypt/mit-krb5
)
)
nfsv41? (
sys-fs/lvm2
)
tcpd? ( sys-apps/tcp-wrappers )
uuid? ( sys-apps/util-linux )"
RDEPEND="${DEPEND_COMMON}
!net-libs/libnfsidmap
!net-nds/portmap
!<sys-apps/openrc-0.13.9
selinux? (
sec-policy/selinux-rpc
sec-policy/selinux-rpcbind
)
"
DEPEND="${DEPEND_COMMON}
virtual/pkgconfig"
PATCHES=(
"${FILESDIR}"/${PN}-1.1.4-mtab-sym.patch
"${FILESDIR}"/${PN}-1.2.8-cross-build.patch
)
src_prepare() {
default
sed \
-e "/^sbindir/s:= := \"${EPREFIX}\":g" \
-i utils/*/Makefile.am || die
eautoreconf
}
src_configure() {
export libsqlite3_cv_is_recent=yes # Our DEPEND forces this.
export ac_cv_header_keyutils_h=$(usex nfsidmap)
local myeconfargs=(
--with-statedir="${EPREFIX}"/var/lib/nfs
--enable-tirpc
--with-tirpcinclude="${EPREFIX}"/usr/include/tirpc/
$(use_enable libmount libmount-mount)
$(use_with tcpd tcp-wrappers)
$(use_enable nfsdcld nfsdcltrack)
$(use_enable nfsv4)
$(use_enable nfsv41)
$(use_enable ipv6)
$(use_enable caps)
$(use_enable uuid)
$(use_enable kerberos gss)
$(use_enable kerberos svcgss)
--without-gssglue
)
econf "${myeconfargs[@]}"
}
src_compile(){
# remove compiled files bundled in the tarball
emake clean
default
}
src_install() {
default
rm linux-nfs/Makefile* || die
dodoc -r linux-nfs README
# Don't overwrite existing xtab/etab, install the original
# versions somewhere safe... more info in pkg_postinst
keepdir /var/lib/nfs/{,sm,sm.bak}
mv "${ED%/}"/var/lib "${ED%/}"/usr/$(get_libdir) || die
# Install some client-side binaries in /sbin
dodir /sbin
mv "${ED%/}"/usr/sbin/rpc.statd "${ED%/}"/sbin/ || die
if use nfsv4 && use nfsidmap ; then
# Install a config file for idmappers in newer kernels. #415625
insinto /etc/request-key.d
echo 'create id_resolver * * /usr/sbin/nfsidmap -t 600 %k %d' > id_resolver.conf
doins id_resolver.conf
fi
insinto /etc
doins "${FILESDIR}"/exports
keepdir /etc/exports.d
local f list=() opt_need=""
if use nfsv4 ; then
opt_need="rpc.idmapd"
list+=( rpc.idmapd rpc.pipefs )
use kerberos && list+=( rpc.gssd rpc.svcgssd )
fi
for f in nfs nfsclient rpc.statd "${list[@]}" ; do
newinitd "${FILESDIR}"/${f}.initd ${f}
done
newinitd "${FILESDIR}"/nfsmount.initd-1.3.1 nfsmount # Nuke after 2015/08/01
for f in nfs nfsclient ; do
newconfd "${FILESDIR}"/${f}.confd ${f}
done
sed -i \
-e "/^NFS_NEEDED_SERVICES=/s:=.*:=\"${opt_need}\":" \
"${ED%/}"/etc/conf.d/nfs || die #234132
local systemd_systemunitdir="$(systemd_get_systemunitdir)"
systemd_dounit systemd/*.{mount,service,target}
if ! use nfsv4 || ! use kerberos ; then
rm "${ED%/}${systemd_systemunitdir}"/rpc-{gssd,svcgssd}.service || die
fi
if ! use nfsv41 ; then
rm "${ED%/}${systemd_systemunitdir}"/nfs-blkmap.* || die
fi
sed -i \
-e 's:/usr/sbin/rpc.statd:/sbin/rpc.statd:' \
"${ED%/}${systemd_systemunitdir}"/* || die
keepdir /var/lib/nfs #368505
keepdir /var/lib/nfs/v4recovery #603628
}
pkg_postinst() {
# Install default xtab and friends if there's none existing. In
# src_install we put them in /usr/lib/nfs for safe-keeping, but
# the daemons actually use the files in /var/lib/nfs. #30486
local f
for f in "${EROOT%/}"/usr/$(get_libdir)/nfs/*; do
[[ -e ${EROOT%/}/var/lib/nfs/${f##*/} ]] && continue
einfo "Copying default ${f##*/} from ${EPREFIX}/usr/$(get_libdir)/nfs to ${EPREFIX}/var/lib/nfs"
cp -pPR "${f}" "${EROOT%/}"/var/lib/nfs/
done
if systemd_is_booted; then
if [[ ${REPLACING_VERSIONS} < 1.3.0 ]]; then
ewarn "We have switched to upstream systemd unit files. Since"
ewarn "they got renamed, you should probably enable the new ones."
ewarn "You can run 'equery files nfs-utils | grep systemd'"
ewarn "to know what services you need to enable now."
fi
else
ewarn "If you use OpenRC, the nfsmount service has been replaced with nfsclient."
ewarn "If you were using nfsmount, please add nfsclient and netmount to the"
ewarn "same runlevel as nfsmount."
fi
}