]> git.ipfire.org Git - thirdparty/kmod.git/commitdiff
build: Allow to install over dirty dir
authorLucas De Marchi <lucas.de.marchi@gmail.com>
Wed, 6 Mar 2024 14:58:04 +0000 (08:58 -0600)
committerLucas De Marchi <lucas.de.marchi@gmail.com>
Thu, 7 Mar 2024 14:21:07 +0000 (08:21 -0600)
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 <emil.l.velikov@gmail.com>
Closes: https://github.com/kmod-project/kmod/issues/35
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
Link: https://lore.kernel.org/r/20240306145804.135709-1-lucas.de.marchi@gmail.com
Signed-off-by: Lucas De Marchi <lucas.de.marchi@gmail.com>
Makefile.am

index d37b56d42764493937174de7e217723a0cfcd265..2222c214f179316d0c744546c6ebee95b92310b2 100644 (file)
@@ -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