summaryrefslogtreecommitdiff
path: root/net-fs/nfs-utils
diff options
context:
space:
mode:
Diffstat (limited to 'net-fs/nfs-utils')
-rw-r--r--net-fs/nfs-utils/Manifest3
-rw-r--r--net-fs/nfs-utils/files/nfs-utils-2.5.2-no-werror.patch68
-rw-r--r--net-fs/nfs-utils/nfs-utils-2.5.2.ebuild204
3 files changed, 275 insertions, 0 deletions
diff --git a/net-fs/nfs-utils/Manifest b/net-fs/nfs-utils/Manifest
index 755ce2ab8615..458d45dd6c67 100644
--- a/net-fs/nfs-utils/Manifest
+++ b/net-fs/nfs-utils/Manifest
@@ -9,6 +9,7 @@ AUX nfs-utils-2.4.2-Ensure-consistent-struct-stat.patch 2808 BLAKE2B 921a0e8e16d
AUX nfs-utils-2.4.2-mountd-Add-check-for-struct-file_handle.patch 1745 BLAKE2B f86feba7e005dc6766b66a15018c5b1e7c2bf192fcf41a4be6feef6ebfd56ee290b6a7fcb789ad32499ef2cb61343d84e9f248a031e949fe2a1288a059f81e47 SHA512 087c5923cb09616846629671721763d3600dd2c55b0f70fb0a7a9f60da884ed448dc1b338a0cf6245845053a8138b99132605a9abd0e90e3be9719ce37d7a0b3
AUX nfs-utils-2.4.2-mountd-Fix-compilation-for--disable-uuid.patch 1031 BLAKE2B eabcf55eada5f7dcc16a576cc49a1ed163d482906d1e0cbd6d42d18512374215455050bec38ce0e29c5b6516bed4113a476aeceea2f6ba229b8254e62905bdc3 SHA512 bf130ed8cce32849bd45957b5f4077e58fe6d98111f90746d628401b804bc9f13623aaca329967210a76e91ead254f3755906de313ad200f76bd52b835d79809
AUX nfs-utils-2.4.2-no-werror.patch 1866 BLAKE2B 6307f2dad086ea39b851085479a3503fd205946ee27ea693af996b2ff5cbbd642822afa18eba6598267914e0667f80cc84df64ad69689e2706d1121abace2f68 SHA512 861956a04ef5bcac9d9eb18e93e5257b0c35598a527f5b20e305ce6993532bc905e66610300b6c098433a81ee3eb08312b307f5cd276c530dcb4071429c0ffcc
+AUX nfs-utils-2.5.2-no-werror.patch 1907 BLAKE2B 4ef79e31a2c032b2c65cdb49670c828133f6b55b8d7cee5a43231e12060720e8a73b9947b58cb7f8416d4b487dbde77a4d0b2ad77a5ad6e28ba57350e95d7a33 SHA512 e32bdad5022e83900af32d4f4c263bacbd7049ba181464cdaf493600c470accf01765743ebe9a9586e80d2fe49ab6241becccd9cf50d939eb883ed78c86ac02e
AUX nfs.confd 930 BLAKE2B 4ef1662b31cffd78b0e96396ad74dc8b8135a9a18956fa1267639d2069893d4f218ded5809497b56d19a192e7e18408e1d1b56bd1535abed8db236bc1a1649cb SHA512 bc11b073735ee86c96b9c249ee187f4d16329c279a4e26760875059d2b5fa1d510ef3e4df5ee9dfb2a3133d755e1eb5c323d2fadc432a0cf630191ec353ac535
AUX nfs.initd 4013 BLAKE2B 3ccbafc56cb1aaf7b091ca5e895e71516a899177dbf5b74d3b8ecd7cb369ed2a3108cef8f76f6abc72272fbc1c692bc50a219025a9abc05d2ffb0e9caf2309d9 SHA512 2bfd641d1ff3b377aef81632ceba75e1e9aa0305d776ac8ca03217f253040ea3e6349d6d2d1815b91c5f6c90d076d6cb86294e41ecd19f31c288219620703ecc
AUX nfsclient.confd 592 BLAKE2B b661b726aa50f904752ec73a201a088f403a1e0f8d11181615e794da259a03b98131fff68e27645d4371564c796bb44915d6a13db9dc5a909294c4d1613c429d SHA512 f12e67728ac4e76357685e2fe38bd7f6fcd90064165758ffeca145e6962ac44d4ff9d8d57e18cc6925a6ada8e95ad8321e9fc355931a804dd455aae1e4850e92
@@ -22,7 +23,9 @@ AUX rpc.svcgssd.initd 470 BLAKE2B c610a7abc44b86ca242d59f833ffa6e42f48d1c3bf9342
DIST nfs-utils-2.4.1.tar.bz2 910791 BLAKE2B 4419eff7fca21747e0bc4969ebb8a8b863aa951984af8f23f197e7dfc4faad3770173808862b84178714ca75f021be1af96f9e4408fecd7ef97999d261f2f21b SHA512 655a115955f35177b761f821e29c752693d614f4c6c2a90d392e0ab83b615247a397cf18e8ad453a93c6dc528d1fa90cfdf8b04de6626e0f4083b10e2e54f540
DIST nfs-utils-2.4.3.tar.bz2 921710 BLAKE2B 9386a99561370e09ffe871ec38a4fc993e99332c0c6fdb0d07eb7a924cfab4634e5c5186ac1f1629deecf02557fd2d3d5d99b90d97c32d3680ca4478b5c49d9c SHA512 160c828dd7a7b3206b7f167eb99a8dfac7e1a0c8dd88c81b639c3a1f66916908b3ca11fb9a945e4cf6a474f82509ed91a8a3217623f6cb79302d3d9b760f19d9
DIST nfs-utils-2.5.1.tar.bz2 931848 BLAKE2B 84c93ef5707bd97e9e1107dcca0530a3c137cb5ad04c7533bb8aee595a53fdc72359252d009fde95b9833a61f1695db1d6b1726081e5e8efd6c528e831f9834c SHA512 36c11668a9d2a382206db3d73a3d03000cdd2be9836fcbbbd327eb38515ac0b451520f6ffdc69bc05b2b81c60ecb88d50a20a50f123b8092a5b63e1c1054a2eb
+DIST nfs-utils-2.5.2.tar.bz2 933724 BLAKE2B 691204739fa4348cea6234f1b87bd74872c94a0c175b09a08ebb4d5cefb0b04c1adfffadc82b7e9a4a45d5c86e7f2af62b275526d27482798d4c5dc296a5be09 SHA512 9e97cf5cd8be27d58e1dcd7fa563280ac8afa57d09387dddd2d6b03cbcd6dae4066ac29804b8b1624b61cb12f2aa016380c85b731113c9359a0e6887d2db0641
EBUILD nfs-utils-2.4.1-r4.ebuild 6205 BLAKE2B 6a8c7bb4e2796bbf00c8aef69243cafd7a428aae5b1c0c1e4d82418593b14272efd37e8d7561ef0a671de217e27147f73c6287a207016185054c88ae31df3f86 SHA512 68a109f63eefc855a42569867db9876bd0c49ac222bc30c1791b5e7ce88752144315553e309c613c8953dfbc8f3c58c69f067312c936574a491355349ec61f14
EBUILD nfs-utils-2.4.3.ebuild 5788 BLAKE2B fb3b87163a7337d3d8e08b87f874168a0ead5f40bfff0614366201221783e647ab8aa2dbd0e50bf5be6a948cf8b44955ae93c91a290d0d334b243854e0af8170 SHA512 f3d6b7c868ef735455f49ff495244396528bbd35134e85d42743054fe8eb8fb7fc8cd7afcf5d9a5781dfecf79832f6eb8cd5034c3fb9ec1d350b872c40760f67
EBUILD nfs-utils-2.5.1.ebuild 5788 BLAKE2B fb3b87163a7337d3d8e08b87f874168a0ead5f40bfff0614366201221783e647ab8aa2dbd0e50bf5be6a948cf8b44955ae93c91a290d0d334b243854e0af8170 SHA512 f3d6b7c868ef735455f49ff495244396528bbd35134e85d42743054fe8eb8fb7fc8cd7afcf5d9a5781dfecf79832f6eb8cd5034c3fb9ec1d350b872c40760f67
+EBUILD nfs-utils-2.5.2.ebuild 5796 BLAKE2B f0f86570e1c75607d76ad3716bb4c6e2fb13b8ab5e719571f7ea6703709ff1c1120b1d8078cfad98594f1cdb166f46e5faec8cccf973d46625c0d3cd8713091c SHA512 92ff15f9816b5f1526564148880f6627b700b1d6a253f263610b7c54ccbf741cd263499cb756c5f379d44ef393c5d304abfba8202470ae379d4a1af85d942a23
MISC metadata.xml 865 BLAKE2B b0f6be692417a8af07b26e95555c5aba8416ed9d1afa59d15bf9df313b727db2a0331500dc93ae34ee9ed4c693c3505bad2dbc405facdbca5447cf37d92340fc SHA512 df1dd59066480b5e3eb8b46091d134ea1701600c20766b259d60c8a81786f4f06edbe7441a20bb62f10b53d6d8c5d76ae073f392254caa12d3dea3b09c172973
diff --git a/net-fs/nfs-utils/files/nfs-utils-2.5.2-no-werror.patch b/net-fs/nfs-utils/files/nfs-utils-2.5.2-no-werror.patch
new file mode 100644
index 000000000000..396532a919aa
--- /dev/null
+++ b/net-fs/nfs-utils/files/nfs-utils-2.5.2-no-werror.patch
@@ -0,0 +1,68 @@
+From 6ab8c7c186bd4a547a0ca435ecabe10ee50039c5 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Thu, 22 Oct 2020 19:44:34 +0200
+Subject: [PATCH] Don't build with -Werror flags
+
+https://bugs.gentoo.org/656984
+
+Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
+---
+ configure.ac | 34 +---------------------------------
+ 1 file changed, 1 insertion(+), 33 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 50847d8a..6bc18e93 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -620,47 +620,15 @@ AC_SUBST(CPPFLAGS_FOR_BUILD)
+ AC_SUBST(LDFLAGS_FOR_BUILD)
+
+ my_am_cflags="\
+- -pipe \
+ -Wall \
+ -Wextra \
+ $rpcgen_cflags \
+- -Werror=missing-prototypes \
+- -Werror=missing-declarations \
+- -Werror=format=2 \
+- -Werror=undef \
+- -Werror=missing-include-dirs \
+- -Werror=strict-aliasing=2 \
+- -Werror=init-self \
+- -Werror=implicit-function-declaration \
+- -Werror=return-type \
+- -Werror=switch \
+- -Werror=overflow \
+- -Werror=parentheses \
+- -Werror=aggregate-return \
+- -Werror=unused-result \
+ -fno-strict-aliasing \
+ "
+
+-AC_DEFUN([CHECK_CCSUPPORT], [
+- my_save_cflags="$CFLAGS"
+- CFLAGS="-Werror $1"
+- AC_MSG_CHECKING([whether CC supports $1])
+- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
+- [AC_MSG_RESULT([yes])]
+- [$2+=$1],
+- [AC_MSG_RESULT([no])]
+- )
+- CFLAGS="$my_save_cflags"
+-])
+-
+-CHECK_CCSUPPORT([-Werror=format-overflow=2], [flg1])
+-CHECK_CCSUPPORT([-Werror=int-conversion], [flg2])
+-CHECK_CCSUPPORT([-Werror=incompatible-pointer-types], [flg3])
+-CHECK_CCSUPPORT([-Werror=misleading-indentation], [flg4])
+-CHECK_CCSUPPORT([-Wno-cast-function-type], [flg5])
+ AX_GCC_FUNC_ATTRIBUTE([format])
+
+-AC_SUBST([AM_CFLAGS], ["$my_am_cflags $flg1 $flg2 $flg3 $flg4 $flg5"])
++AC_SUBST([AM_CFLAGS], ["$my_am_cflags"])
+
+ # Make sure that $ACLOCAL_FLAGS are used during a rebuild
+ AC_SUBST([ACLOCAL_AMFLAGS], ["-I $ac_macro_dir \$(ACLOCAL_FLAGS)"])
+--
+2.29.0
+
diff --git a/net-fs/nfs-utils/nfs-utils-2.5.2.ebuild b/net-fs/nfs-utils/nfs-utils-2.5.2.ebuild
new file mode 100644
index 000000000000..e92cd918e894
--- /dev/null
+++ b/net-fs/nfs-utils/nfs-utils-2.5.2.ebuild
@@ -0,0 +1,204 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic linux-info multilib systemd
+
+DESCRIPTION="NFS client and server daemons"
+HOMEPAGE="http://linux-nfs.org/"
+
+if [[ "${PV}" = *_rc* ]] ; then
+ MY_PV="$(ver_rs 1- -)"
+ SRC_URI="http://git.linux-nfs.org/?p=steved/nfs-utils.git;a=snapshot;h=refs/tags/${PN}-${MY_PV};sf=tgz -> ${P}.tar.gz"
+ S="${WORKDIR}/${PN}-${PN}-${MY_PV}"
+else
+ SRC_URI="mirror://sourceforge/nfs/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="caps ipv6 junction 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="
+ >=dev-db/sqlite-3.3
+ dev-libs/libxml2
+ 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 )
+ 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}
+ !net-libs/libnfsidmap
+ !net-nds/portmap
+ !<sys-apps/openrc-0.13.9
+ selinux? (
+ sec-policy/selinux-rpc
+ sec-policy/selinux-rpcbind
+ )
+"
+BDEPEND="
+ net-libs/rpcsvc-proto
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.5.2-no-werror.patch
+ "${FILESDIR}"/${PN}-2.4.2-Ensure-consistent-struct-stat.patch
+)
+
+pkg_setup() {
+ linux-info_pkg_setup
+ if use nfsv4 && ! use nfsdcld && linux_config_exists && ! linux_chkconfig_present CRYPTO_MD5 ; then
+ ewarn "Your NFS server will be unable to track clients across server restarts!"
+ ewarn "Please enable the \"${HILITE}nfsdcld${NORMAL}\" USE flag to install the nfsdcltrack usermode"
+ ewarn "helper upcall program, or enable ${HILITE}CONFIG_CRYPTO_MD5${NORMAL} in your kernel to"
+ ewarn "support the legacy, in-kernel client tracker."
+ fi
+}
+
+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/
+ --with-pluginpath="${EPREFIX}"/usr/$(get_libdir)/libnfsidmap
+ --with-rpcgen
+ --with-systemd="$(systemd_get_systemunitdir)"
+ --without-gssglue
+ $(use_enable caps)
+ $(use_enable ipv6)
+ $(use_enable junction)
+ $(use_enable kerberos gss)
+ $(use_enable kerberos svcgss)
+ $(use_enable ldap)
+ $(use_enable libmount libmount-mount)
+ $(use_enable nfsdcld nfsdcltrack)
+ $(use_enable nfsv4)
+ $(use_enable nfsv41)
+ $(use_enable uuid)
+ $(use_with tcpd tcp-wrappers)
+ )
+ 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/nfs "${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
+ insinto /etc
+ doins support/nfsidmap/idmapd.conf
+
+ # 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)"
+ 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
+ for v in ${REPLACING_VERSIONS}; do
+ if ver_test "${v}" -lt 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
+ done
+ 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
+}