package/vim: fix reinstallation with a patch
In commit 67e84345c156170fa01103289f1d255a74ad830d ("package/vim: fix
reinstallation"), we fixed the reinstallation of vim for the target
package by removing symlinks before calling "make installlinks".
However, this didn't fix the same problem for the host-vim package.
So instead, this commit adds a patch, accepted upstream, that uses "ln
-sf" instead of "ln -s" to create the symlinks, allowing them to be
overwriten on reinstallation.
Fixes:
ln: failed to create symbolic link 'view': File exists
on reinstallation of host-vim.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit ee656a4486cecc24dc424e4de62ca6c185432d0b)
Signed-off-by: Thomas Perale <thomas.perale@mind.be>
This commit is contained in:
committed by
Thomas Perale
parent
c24744dcbc
commit
6d92d9ae99
78
package/vim/0001-src-Makefile-create-links-with-ln-sf.patch
Normal file
78
package/vim/0001-src-Makefile-create-links-with-ln-sf.patch
Normal file
@@ -0,0 +1,78 @@
|
||||
From 5686ef63f81fcac2ca6ec6e7160829b295ad4e79 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
Date: Sun, 28 Dec 2025 15:01:38 +0100
|
||||
Subject: [PATCH] src/Makefile: create links with ln -sf
|
||||
|
||||
Running "make installlinks" twice towards the same destination
|
||||
directory will fail, as symlink will already exist. This is not really
|
||||
expected as "make install" is normally expected to work again and
|
||||
again towards the same destination directory.
|
||||
|
||||
Fix this by using ln -sf.
|
||||
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
Upstream: https://github.com/vim/vim/commit/6df5360691266b5eca49380e94f3e21fa48e5e0b
|
||||
---
|
||||
src/Makefile | 24 ++++++++++++------------
|
||||
1 file changed, 12 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/src/Makefile b/src/Makefile
|
||||
index 6fb1eb95e..39f798260 100644
|
||||
--- a/src/Makefile
|
||||
+++ b/src/Makefile
|
||||
@@ -2746,40 +2746,40 @@ installvimdiff: $(DEST_BIN)/$(VIMDIFFTARGET)
|
||||
installgvimdiff: $(DEST_BIN)/$(GVIMDIFFTARGET)
|
||||
|
||||
$(DEST_BIN)/$(EXTARGET): $(DEST_BIN)
|
||||
- cd $(DEST_BIN); ln -s $(VIMTARGET) $(EXTARGET)
|
||||
+ cd $(DEST_BIN); ln -sf $(VIMTARGET) $(EXTARGET)
|
||||
|
||||
$(DEST_BIN)/$(VIEWTARGET): $(DEST_BIN)
|
||||
- cd $(DEST_BIN); ln -s $(VIMTARGET) $(VIEWTARGET)
|
||||
+ cd $(DEST_BIN); ln -sf $(VIMTARGET) $(VIEWTARGET)
|
||||
|
||||
$(DEST_BIN)/$(GVIMTARGET): $(DEST_BIN)
|
||||
- cd $(DEST_BIN); ln -s $(VIMTARGET) $(GVIMTARGET)
|
||||
+ cd $(DEST_BIN); ln -sf $(VIMTARGET) $(GVIMTARGET)
|
||||
|
||||
$(DEST_BIN)/$(GVIEWTARGET): $(DEST_BIN)
|
||||
- cd $(DEST_BIN); ln -s $(VIMTARGET) $(GVIEWTARGET)
|
||||
+ cd $(DEST_BIN); ln -sf $(VIMTARGET) $(GVIEWTARGET)
|
||||
|
||||
$(DEST_BIN)/$(RVIMTARGET): $(DEST_BIN)
|
||||
- cd $(DEST_BIN); ln -s $(VIMTARGET) $(RVIMTARGET)
|
||||
+ cd $(DEST_BIN); ln -sf $(VIMTARGET) $(RVIMTARGET)
|
||||
|
||||
$(DEST_BIN)/$(RVIEWTARGET): $(DEST_BIN)
|
||||
- cd $(DEST_BIN); ln -s $(VIMTARGET) $(RVIEWTARGET)
|
||||
+ cd $(DEST_BIN); ln -sf $(VIMTARGET) $(RVIEWTARGET)
|
||||
|
||||
$(DEST_BIN)/$(RGVIMTARGET): $(DEST_BIN)
|
||||
- cd $(DEST_BIN); ln -s $(VIMTARGET) $(RGVIMTARGET)
|
||||
+ cd $(DEST_BIN); ln -sf $(VIMTARGET) $(RGVIMTARGET)
|
||||
|
||||
$(DEST_BIN)/$(RGVIEWTARGET): $(DEST_BIN)
|
||||
- cd $(DEST_BIN); ln -s $(VIMTARGET) $(RGVIEWTARGET)
|
||||
+ cd $(DEST_BIN); ln -sf $(VIMTARGET) $(RGVIEWTARGET)
|
||||
|
||||
$(DEST_BIN)/$(VIMDIFFTARGET): $(DEST_BIN)
|
||||
- cd $(DEST_BIN); ln -s $(VIMTARGET) $(VIMDIFFTARGET)
|
||||
+ cd $(DEST_BIN); ln -sf $(VIMTARGET) $(VIMDIFFTARGET)
|
||||
|
||||
$(DEST_BIN)/$(GVIMDIFFTARGET): $(DEST_BIN)
|
||||
- cd $(DEST_BIN); ln -s $(VIMTARGET) $(GVIMDIFFTARGET)
|
||||
+ cd $(DEST_BIN); ln -sf $(VIMTARGET) $(GVIMDIFFTARGET)
|
||||
|
||||
$(DEST_BIN)/$(EVIMTARGET): $(DEST_BIN)
|
||||
- cd $(DEST_BIN); ln -s $(VIMTARGET) $(EVIMTARGET)
|
||||
+ cd $(DEST_BIN); ln -sf $(VIMTARGET) $(EVIMTARGET)
|
||||
|
||||
$(DEST_BIN)/$(EVIEWTARGET): $(DEST_BIN)
|
||||
- cd $(DEST_BIN); ln -s $(VIMTARGET) $(EVIEWTARGET)
|
||||
+ cd $(DEST_BIN); ln -sf $(VIMTARGET) $(EVIEWTARGET)
|
||||
|
||||
# Create links for the manual pages with various names to vim. This is only
|
||||
# done when the links (or manpages with the same name) don't exist yet.
|
||||
--
|
||||
2.52.0
|
||||
|
||||
@@ -55,7 +55,6 @@ VIM_INSTALL_TARGETS += installrtbase installmacros
|
||||
endif
|
||||
|
||||
define VIM_INSTALL_TARGET_CMDS
|
||||
$(RM) -f $(TARGET_DIR)/usr/bin/{ex,view,rvim,rview,vimdiff}
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/src DESTDIR=$(TARGET_DIR) \
|
||||
$(VIM_INSTALL_TARGETS)
|
||||
$(RM) -rf $(TARGET_DIR)/usr/share/vim/vim*/doc/
|
||||
|
||||
Reference in New Issue
Block a user