[PATH 1/2] cifs-utils: Respect DESTDIR when installing smb3 stuff

Mikhail Novosyolov m.novosyolov at rosalinux.ru
Fri Jan 24 22:11:12 UTC 2020


When make install is run during package building, DESTDIR parameter is passed, e.g.:
$ rpm --eval %makeinstall_std
make DESTDIR=/root/rpmbuild/BUILDROOT/%{name}-%{version}-%{release}-rosa2016.1.x86_64-buildroot install

Without DESTDIR build scripts tried to create symlinks outside of the build root:
make[3]: Entering directory '/tmp/abf/rpmbuild/BUILD/cifs-utils-6.10'
(cd /sbin && ln -sf mount.cifs mount.smb3)
ln: failed to create symbolic link 'mount.smb3': Permission denied

The same fix was introduced in Arch Linux package when updating from 6.9 to 6.10:
https://git.archlinux.org/svntogit/packages.git/commit/trunk/PKGBUILD?h=packages/cifs-utils&id=c75b246a762ea9b90db404dfebc6d35d5b16972f
---
 Makefile.am | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index fe9cd34..09ef293 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -119,11 +119,11 @@ endif
 SUBDIRS = contrib
 
 install-exec-hook:
-    (cd $(ROOTSBINDIR) && ln -sf mount.cifs mount.smb3)
+    (cd $(DESTDIR)$(ROOTSBINDIR) && ln -sf mount.cifs mount.smb3)
 
 install-data-hook:
-    (cd $(man8dir) && ln -sf mount.cifs.8 mount.smb3.8)
+    (cd $(DESTDIR)$(man8dir) && ln -sf mount.cifs.8 mount.smb3.8)
 
 uninstall-hook:
-    (cd $(ROOTSBINDIR) && rm -f $(ROOTSBINDIR)/mount.smb3)
-    (cd $(man8dir) && rm -f $(man8dir)/mount.smb3.8)
+    (cd $(DESTDIR)$(ROOTSBINDIR) && rm -f $(ROOTSBINDIR)/mount.smb3)
+    (cd $(DESTDIR)$(man8dir) && rm -f $(DESTDIR)$(man8dir)/mount.smb3.8)




More information about the samba-technical mailing list