Commit b74bcd5d4e9b7c0500fd385c02f8b8594a1c767f

David Gow 2021-08-03T22:25:10

configure.ac: mkdir $(objects)/ when building wayland protocols The $(objects) directory (usually build/) may not have been created by the time the wayland-scanner protocol files are being compiled. The $(gen) directory is explicitly made with mkinstalldir, but the final object file (and gcc dependency files) need to go into $(objects). For whatever reason, this only ever seemed to occur if --disable-shared was set. Note that this commit doesn't regenerate ./configure, as there were a few unexplained, unrelated differences my version of autoconf created, as as an autotools novice, I didn't want to poke that bear just yet. This hopefully should fix #3689

1
2
3
4
5
6
7
8
9
10
11
12
diff --git a/configure.ac b/configure.ac
index 6b7b5a0..82973c5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4383,6 +4383,7 @@ if test x$video_wayland = xyes; then
         printf '%s\n' "	\\$(RUN_CMD_GEN)\\$(WAYLAND_SCANNER) \\$(WAYLAND_SCANNER_CODE_MODE) \\$< \\$@" ;\
         echo ;\
         printf '%s\n' "\\$(objects)/\$p-protocol.lo: \\$(gen)/\$p-protocol.c \\$(gen)/\$p-client-protocol.h" ;\
+        printf '%s\n' "	@\\$(SHELL) \\$(auxdir)/mkinstalldirs \\$(objects)" ;\
         printf '%s\n' "	\\$(RUN_CMD_CC)\\$(LIBTOOL) --tag=CC --mode=compile \\$(CC) \\$(CFLAGS) \\$(EXTRA_CFLAGS) $DEPENDENCY_TRACKING_OPTIONS -c \\$< -o \\$@" ;\
         done ;\
         echo ;\