PKGBUILDs/core/nfs-utils/PKGBUILD
2019-11-19 03:49:07 +00:00

117 lines
3.8 KiB
Bash

# Maintainer: AndyRTR <andyrtr@archlinux.org>
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
# Contributor: John Proctor <jproctor@prium.net>
# Contributor: dibblethewrecker <dibblethewrecker.at.jiwe.org>
# Contributor: abelstr <abel@pinklf.eu>
# Contributor: Marco Lima <cipparello gmail com>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - set -D_FILE_OFFSET_BITS=64 in CFLAGS
# - patch to fix 32-bit FTBFS
pkgbase=nfs-utils
pkgname=('nfs-utils' 'nfsidmap')
pkgver=2.4.2
pkgrel=1
arch=('x86_64')
url='http://nfs.sourceforge.net'
makedepends=('libevent' 'sqlite' 'rpcsvc-proto')
# http://git.linux-nfs.org/?p=steved/nfs-utils.git;a=summary
source=(https://www.kernel.org/pub/linux/utils/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.{xz,sign}
0001-32-bit-fixes.patch
exports)
# https://www.kernel.org/pub/linux/utils/nfs-utils/2.1.1/sha256sums.asc
sha256sums=('4464737a03d5f73ded2ffefe19d5543ed7b1d6c541985d8acaafdc8025aa1038'
'SKIP'
'574e20ae6346b8f2314b8612194049c89e27bf3ae1f0342e1c6f1d9033df2603'
'610715ed3daedc43b2536f541c7c57e138fb31eab5d837d9a6187a7403e30154')
validpgpkeys=('E1B71E339E20A10A676F7CB69AFB1D681A125177') # Steve Dickson
prepare() {
cd "${pkgbase}"-${pkgver}
# fix hardcoded sbin path to our needs
sed -i "s|sbindir = /sbin|sbindir = /usr/bin|g" utils/*/Makefile.am
sed -i "s|sbin|bin|" utils/nfsidmap/id_resolver.conf
[[ $CARCH != "aarch64" ]] && patch -p1 -i ../0001-32-bit-fixes.patch
autoreconf -vfi
}
build() {
cd "${pkgbase}"-${pkgver}
CFLAGS+=" -D_FILE_OFFSET_BITS=64"
./configure --prefix=/usr \
--sbindir=/usr/bin \
--sysconfdir=/etc \
--enable-gss \
--without-tcp-wrappers \
--with-statedir=/var/lib/nfs \
--enable-ipv6 \
--enable-libmount-mount \
--enable-mountconfig \
--with-start-statd=/usr/bin/start-statd
make
}
check() {
cd "${pkgbase}"-${pkgver}
make -k check || /bin/true
}
package_nfs-utils() {
pkgdesc="Support programs for Network File Systems"
license=('GPL2')
backup=(etc/{exports,nfs.conf,nfsmount.conf})
depends=('rpcbind' 'nfsidmap' 'gssproxy' 'libevent' 'device-mapper')
optdepends=('sqlite: for nfsdcltrack usage'
'python: for nfsiostat and mountstats usage')
cd "${pkgbase}"-${pkgver}
make DESTDIR="$pkgdir" install
install -D -m 644 utils/mount/nfsmount.conf "$pkgdir"/etc/nfsmount.conf
install -D -m 644 nfs.conf "$pkgdir"/etc/nfs.conf
for i in systemd/{*.service,*.mount,*.target}; do
install -D -m 644 $i "$pkgdir"/usr/lib/systemd/system/$(basename $i)
done
install -d -m 755 "$pkgdir"/usr/share/doc/$pkgname
install -D -m 644 systemd/README "$pkgdir"/usr/share/doc/$pkgname/README.systemd
# docs
install -m 644 {NEWS,README} "$pkgdir"/usr/share/doc/$pkgname/
# empty exports file
install -D -m 644 ../exports "$pkgdir"/etc/exports
# config file for idmappers in newer kernels
install -D -m 644 utils/nfsidmap/id_resolver.conf "$pkgdir"/etc/request-key.d/id_resolver.conf
mkdir "$pkgdir"/etc/exports.d
mkdir -m 555 "$pkgdir"/var/lib/nfs/rpc_pipefs
mkdir "$pkgdir"/var/lib/nfs/v4recovery
# nfsidmap cleanup
rm -vrf "$pkgdir"/usr/include #/nfsid*
rm -vrf "$pkgdir"/usr/lib/libnfsidmap*
rm -vrf "$pkgdir"/usr/lib/pkgconfig #/libnfsidmap.pc
rm -v "$pkgdir"/usr/share/man/{man3/nfs4_uid_to_name*,man5/idmapd.conf*}
rm -rf "$pkgdir"/usr/share/man/man3
}
package_nfsidmap() {
pkgdesc="Library to help mapping IDs, mainly for NFSv4"
license=('GPL2')
backup=(etc/idmapd.conf)
depends=('libldap')
cd "${pkgbase}"-${pkgver}
make -C support DESTDIR="$pkgdir" install
# config file
install -D -m 644 support/nfsidmap/idmapd.conf "$pkgdir"/etc/idmapd.conf
# license
install -Dm644 support/nfsidmap/COPYING $pkgdir/usr/share/licenses/nfsidmap/LICENSE
}