Commit: patch 9.1.2031: Makefile: cannot run make installinks twice

2 views
Skip to first unread message

Christian Brabandt

unread,
Dec 28, 2025, 9:31:03 AM (yesterday) Dec 28
to vim...@googlegroups.com
patch 9.1.2031: Makefile: cannot run make installinks twice

Commit: https://github.com/vim/vim/commit/6df5360691266b5eca49380e94f3e21fa48e5e0b
Author: Thomas Petazzoni <thomas.p...@bootlin.com>
Date: Sun Dec 28 14:26:52 2025 +0000

patch 9.1.2031: Makefile: cannot run make installinks twice

Problem: Makefile: cannot run make installinks twice
Solution: Change "ln -s" to "ln -sf" to force creation of the symlinks
(Thomas Petazzoni)

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.

closes: #19035

Signed-off-by: Thomas Petazzoni <thomas.p...@bootlin.com>
Signed-off-by: Christian Brabandt <c...@256bit.org>

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.
diff --git a/src/version.c b/src/version.c
index 14628eed3..e2a7f32f4 100644
--- a/src/version.c
+++ b/src/version.c
@@ -734,6 +734,8 @@ static char *(features[]) =

static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 2031,
/**/
2030,
/**/
Reply all
Reply to author
Forward
0 new messages