diff --git a/rules/nfs-utils/default.bash b/rules/nfs-utils/default.bash index b689c77..e232d94 100644 --- a/rules/nfs-utils/default.bash +++ b/rules/nfs-utils/default.bash @@ -23,6 +23,16 @@ requires=\ 'libtirpc/default' ) +post_unpack() +{ + patches=$(ls "$pkg_dir/patches/$version"/*.patch) + + cd ../nfs-utils-$version + if [ -n "$patches" ]; then + cat $patches | patch -p1 + fi +} + configure() { "../nfs-utils-$version/configure" \ @@ -48,9 +58,10 @@ target_install() { $cmd_target_strip -v "utils/mount/mount.nfs" -o "$cfg_dir_rootfs/usr/bin/mount.nfs" && ln -fs mount.nfs "$cfg_dir_rootfs/usr/bin/unmount.nfs" && - $cmd_target_strip -v "utils/exportfs/exportfs" -o "$cfg_dir_rootfs/usr/bin/exportfs" && - $cmd_target_strip -v "utils/mountd/mountd" -o "$cfg_dir_rootfs/usr/bin/rpc.mountd" && - $cmd_target_strip -v "utils/nfsd/nfsd" -o "$cfg_dir_rootfs/usr/bin/rpc.nfsd" && - $cmd_target_strip -v "utils/statd/statd" -o "$cfg_dir_rootfs/usr/bin/rpc.statd" && - touch "$cfg_dir_rootfs/etc/exports" + $cmd_target_strip -v "utils/exportfs/exportfs" -o "$cfg_dir_rootfs/usr/bin/exportfs" && + $cmd_target_strip -v "utils/mountd/mountd" -o "$cfg_dir_rootfs/usr/bin/rpc.mountd" && + $cmd_target_strip -v "utils/nfsd/nfsd" -o "$cfg_dir_rootfs/usr/bin/rpc.nfsd" && + $cmd_target_strip -v "utils/statd/statd" -o "$cfg_dir_rootfs/usr/bin/rpc.statd" && + $cmd_target_strip -v "utils/statd/sm-notify" -o "$cfg_dir_rootfs/usr/sbin/sm-notify" && + touch "$cfg_dir_rootfs/etc/exports" } diff --git a/rules/nfs-utils/patches/1.3.2/00-statd-fix-daemon-mode.patch b/rules/nfs-utils/patches/1.3.2/00-statd-fix-daemon-mode.patch new file mode 100644 index 0000000..225f054 --- /dev/null +++ b/rules/nfs-utils/patches/1.3.2/00-statd-fix-daemon-mode.patch @@ -0,0 +1,12 @@ +diff -Nru nfs-utils-1.3.2/utils/statd/statd.c nfs-utils-1.3.2.rasm/utils/statd/statd.c +--- nfs-utils-1.3.2/utils/statd/statd.c 2015-01-30 20:42:15.000000000 +0000 ++++ nfs-utils-1.3.2.rasm/utils/statd/statd.c 2015-09-09 16:06:03.761780966 +0100 +@@ -393,7 +393,7 @@ + simulator (--argc, ++argv); /* simulator() does exit() */ + #endif + +- daemon_init(!(run_mode & MODE_NODAEMON)); ++ daemon_init((run_mode & MODE_NODAEMON)); + + if (run_mode & MODE_LOG_STDERR) { + xlog_syslog(0);