Shared SPIRV-Tools is not shipped by Debian Bullseye, and is broken if built manually.
From: Zebediah Figura zfigura@codeweavers.com
Shared SPIRV-Tools is not shipped by Debian Bullseye, and is broken if built manually. --- configure.ac | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac index 577b3983..3a491a49 100644 --- a/configure.ac +++ b/configure.ac @@ -122,11 +122,19 @@ AS_IF([test "x$with_ncurses" != "xno"], [PKG_CHECK_MODULES([NCURSES], [ncurses], [AC_DEFINE([HAVE_NCURSES], [1], [Define to 1 if you have ncurses.]) with_ncurses=yes], [with_ncurses=no])]) + +HAVE_SPIRV_TOOLS=no AS_IF([test "x$with_spirv_tools" = "xyes"], [PKG_CHECK_MODULES([SPIRV_TOOLS], [SPIRV-Tools-shared], - [AC_DEFINE([HAVE_SPIRV_TOOLS], [1], [Define to 1 if you have SPIRV-Tools.])])], + [HAVE_SPIRV_TOOLS=yes], + [PKG_CHECK_MODULES([SPIRV_TOOLS], [SPIRV-Tools], + [HAVE_SPIRV_TOOLS=yes + AC_SUBST([SPIRV_TOOLS_LIBS],["$SPIRV_TOOLS_LIBS -lstdc++"])])])], [with_spirv_tools=no])
+AS_IF([test "$HAVE_SPIRV_TOOLS" = "yes"], + [AC_DEFINE([HAVE_SPIRV_TOOLS], [1], [Define to 1 if you have SPIRV-Tools.])]) + HAVE_XCB=no AS_IF([test "x$with_xcb" != "xno"], [PKG_CHECK_MODULES([XCB], [xcb xcb-event xcb-icccm xcb-keysyms],
Hi,
It looks like your patch introduced the new failures shown below. Please investigate and fix them before resubmitting your patch. If they are not new, fixing them anyway would help a lot. Otherwise please ask for the known failures list to be updated.
The full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=126483
Your paranoid android.
=== debian11 (build log) ===
error: patch failed: configure.ac:122 Task: Patch failed to apply
=== debian11b (build log) ===
error: patch failed: configure.ac:122 Task: Patch failed to apply
Shared SPIRV-Tools is not shipped by Debian Bullseye, and is broken if built manually.
Is that a regression? I'm using a build of shared SPIRV-Tools I made myself, and it seems to work fine, although it's an older (v2019.5) version.
We may also want to consider simply getting rid of the SPIRV-Tools dependency. Parsing SPIR-V isn't that complicated, the SPIRV-Tools dependency has always been a bit of a pain, and it would simplify things a bit for Wine's usage of vkd3d.
On Tue Nov 22 12:25:47 2022 +0000, Henri Verbeet wrote:
Shared SPIRV-Tools is not shipped by Debian Bullseye, and is broken if
built manually. Is that a regression? I'm using a build of shared SPIRV-Tools I made myself, and it seems to work fine, although it's an older (v2019.5) version. We may also want to consider simply getting rid of the SPIRV-Tools dependency. Parsing SPIR-V isn't that complicated, the SPIRV-Tools dependency has always been a bit of a pain, and it would simplify things a bit for Wine's usage of vkd3d.
Last time I tried I could build vkd3d with SPIRV-Tools by just editing the configuration line in the Debian package and rebuilding it, and then rebuilding vkd3d. I saw no breakages.
Though since the shared library is not available on Debian (and, I suppose, on many derivatives) by default, it makes sense to me to use it statically.
It would be even better if SPIRV-Tools was available as a shared library, but that's not for us to decide.
Shared SPIRV-Tools is not shipped by Debian Bullseye, and is broken if built manually.
Is that a regression? I'm using a build of shared SPIRV-Tools I made myself, and it seems to work fine, although it's an older (v2019.5) version.
I'll have to check, maybe it did break at some point.
We may also want to consider simply getting rid of the SPIRV-Tools dependency. Parsing SPIR-V isn't that complicated, the SPIRV-Tools dependency has always been a bit of a pain, and it would simplify things a bit for Wine's usage of vkd3d.
I guess. I'd rather submit this patch than spend time writing a SPIR-V parser, though. We'd also lose validation that way.
Unless we were to import into the source; that seems decidedly dispreferable, but it's not the first time I've tried to express that preference.
We may also want to consider simply getting rid of the SPIRV-Tools dependency. Parsing SPIR-V isn't that complicated, the SPIRV-Tools dependency has always been a bit of a pain, and it would simplify things a bit for Wine's usage of vkd3d.
I guess. I'd rather submit this patch than spend time writing a SPIR-V parser, though. We'd also lose validation that way.
True. The point is mostly that SPIRV-Tools never was a particularly great fit for vkd3d-shader; we use it because it's what's available. I'm not aware of better alternatives, but we'd likely switch if we found one. Similarly, if someone were to contribute a SPIR-V parser to vkd3d-shader, there's a good chance it would make it upstream.
Unless we were to import into the source; that seems decidedly dispreferable, but it's not the first time I've tried to express that preference.
I'd rather not do that either, no.