[vim/vim] patch 9.1.1845 breaks `./configure --with-wayland=no` (Issue #18537)

15 views
Skip to first unread message

BenYip

unread,
1:32 AM (17 hours ago) 1:32 AM
to vim/vim, Subscribed
bennyyip created an issue (vim/vim#18537)

Steps to reproduce

./configure --with-wayland=no
make

It compiles if I remove these lines:

diff --git i/src/Makefile w/src/Makefile
index 0423cede7..084587a6e 100644
--- i/src/Makefile
+++ w/src/Makefile
@@ -3837,10 +3837,7 @@ objects/clipboard.o: auto/osdef.h clipboard.c vim.h protodef.h auto/config.h fea
  os_unix.h ascii.h keymap.h termdefs.h macros.h option.h beval.h \
  structs.h regexp.h gui.h libvterm/include/vterm.h \
  libvterm/include/vterm_keycodes.h xdiff/xdiff.h xdiff/../vim.h alloc.h \
- ex_cmds.h spell.h proto.h globals.h errors.h wayland.h \
- auto/wayland/wlr-data-control-unstable-v1.h \
- auto/wayland/ext-data-control-v1.h auto/wayland/xdg-shell.h \
- auto/wayland/primary-selection-unstable-v1.h
+ ex_cmds.h spell.h proto.h globals.h errors.h
 objects/cmdexpand.o: auto/osdef.h cmdexpand.c vim.h protodef.h auto/config.h feature.h \
  os_unix.h ascii.h keymap.h termdefs.h macros.h option.h beval.h \
  structs.h regexp.h gui.h libvterm/include/vterm.h \

Expected behaviour

Make compiles vim.

Version of Vim

9.1.1845

Environment

Arch Linux

Logs and stack traces

....
make[1]: Entering directory '/home/benyip/ghq/github.com/vim/vim/src'
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2  -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/alloc.o alloc.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2  -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/arabic.o arabic.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2  -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/arglist.o arglist.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2  -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/autocmd.o autocmd.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2  -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/beval.o beval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2  -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/buffer.o buffer.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2  -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/change.o change.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2  -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/blob.o blob.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2  -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/blowfish.o blowfish.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2  -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/cindent.o cindent.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2  -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/clientserver.o clientserver.c
make[1]: *** No rule to make target 'auto/wayland/wlr-data-control-unstable-v1.c', needed by 'auto/wayland/wlr-data-control-unstable-v1.h'.  Stop.
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/home/benyip/ghq/github.com/vim/vim/src'
make: *** [Makefile:29: first] Error 2


Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/issues/18537@github.com>

zdohnal

unread,
3:21 AM (15 hours ago) 3:21 AM
to vim/vim, Subscribed
zdohnal left a comment (vim/vim#18537)

I see the same problem after patchlevel 1844 when building Vim in Fedora.


Reply to this email directly, view it on GitHub.

You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/issues/18537/3388612113@github.com>

zdohnal

unread,
3:49 AM (14 hours ago) 3:49 AM
to vim/vim, Subscribed
zdohnal left a comment (vim/vim#18537)

I saw the comment in the src/Makefile about the rule depend requires wayland, but IMHO there are still valid use case for Vim not having hard requirement for Wayland. I'll see if I can come up with something which would not need to manual adjust of Makefile after every make depend, but do not wait for me with a fix.


Reply to this email directly, view it on GitHub.

You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/issues/18537/3388702842@github.com>

Christian Brabandt

unread,
4:16 AM (14 hours ago) 4:16 AM
to vim/vim, Subscribed
chrisbra left a comment (vim/vim#18537)

I seems the make depend rule does not work very well. I have manually updated the Makefile dependencies now. Please check: #18538


Reply to this email directly, view it on GitHub.

You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/issues/18537/3388791173@github.com>

h_east

unread,
4:40 AM (13 hours ago) 4:40 AM
to vim/vim, Subscribed
h-east left a comment (vim/vim#18537)

Below is a description of the issue—partly for my own reference:

When you run make depend, it uses the settings from the current configure. If you do:

$ ./configure --with-wayland  
$ make depend

then src/Makefile will include auto/wayland/*.h as a dependency for objects/clipboard.o. Later, if you switch to a build directory configured without Wayland:

$ ./configure --without-wayland  
$ make

the build fails. During the compilation of clipboard.c, make looks for the header files auto/wayland/*.h (because they're listed as dependencies), can't find them, and then tries to generate them via the corresponding .c files (auto/wayland/*.c), which also don't exist—resulting in an error.


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/issues/18537/3388900422@github.com>

zdohnal

unread,
4:55 AM (13 hours ago) 4:55 AM
to vim/vim, Subscribed
zdohnal left a comment (vim/vim#18537)

@h-east I confirm this - make depend depends on current configuration, so I'm not sure whether its output should be put into shipped Makefile. Maybe force make depend to run before normal compilation starts and configuration is done?


Reply to this email directly, view it on GitHub.

You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/issues/18537/3388949735@github.com>

h_east

unread,
5:01 AM (13 hours ago) 5:01 AM
to vim/vim, Subscribed
h-east left a comment (vim/vim#18537)

@zdohnal Sorry. It was just that the AI didn’t translate it correctly. I believe I understand this issue.


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/issues/18537/3388970711@github.com>

Christian Brabandt

unread,
11:51 AM (6 hours ago) 11:51 AM
to vim/vim, Subscribed
chrisbra left a comment (vim/vim#18537)

yes, I think you need to build a full Vim with all dependencies and interpreters so that the dependencies for those interpreters are correctly caught. And it seemed this caused the additional dependencies for wayland to be added (which is fine, if you want to build a wayland enabled vim, but breaks horribly when this is not wanted). One more lesson learnt: do not run make depend.


Reply to this email directly, view it on GitHub.

You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/issues/18537/3390880612@github.com>

Christian Brabandt

unread,
12:05 PM (6 hours ago) 12:05 PM
to vim/vim, Subscribed

Closed #18537 as completed via 1201afb.


Reply to this email directly, view it on GitHub.

You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/issue/18537/issue_event/20211726564@github.com>

Reply all
Reply to author
Forward
0 new messages