Before commit e98cef6f3f8c ("make: install/uninstall tools symlinks to
kmod") it was possible to call `make install DESTDIR=<dir>` multiple
times. Use `ln -sf` so the symlink is always re-created.

It would be preferred to remove install in an empty dir, but there's
not a bad consequence of re-using the same, so let the user decide.
Fixes the following errors while installing for the second time:

        ln: failed to create symbolic link '/tmp/inst/usr/bin/insmod': File 
exists
        ln: failed to create symbolic link '/tmp/inst/usr/bin/lsmod': File 
exists
        ln: failed to create symbolic link '/tmp/inst/usr/bin/rmmod': File 
exists
        ln: failed to create symbolic link '/tmp/inst/usr/bin/depmod': File 
exists
        ln: failed to create symbolic link '/tmp/inst/usr/bin/modprobe': File 
exists
        ln: failed to create symbolic link '/tmp/inst/usr/bin/modinfo': File 
exists
        make[3]: *** [Makefile:2679: install-exec-hook] Error 1
        make[2]: *** [Makefile:2553: install-exec-am] Error 2
        make[1]: *** [Makefile:2439: install-am] Error 2
        make: *** [Makefile:1848: install-recursive] Error 1

Cc: Emil Velikov <[email protected]>
Closes: https://github.com/kmod-project/kmod/issues/35
Signed-off-by: Lucas De Marchi <[email protected]>
---
 Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Makefile.am b/Makefile.am
index d37b56d..2222c21 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -113,7 +113,7 @@ install-exec-hook:
        fi
 if BUILD_TOOLS
        for tool in insmod lsmod rmmod depmod modprobe modinfo; do \
-               $(LN_S) kmod $(DESTDIR)$(bindir)/$$tool; \
+               $(LN_S) -f kmod $(DESTDIR)$(bindir)/$$tool; \
        done
 endif
 
-- 
2.43.2


Reply via email to