Skip to content

Conversation

apteryks
Copy link
Contributor

@apteryks apteryks commented Oct 6, 2024

Description

This change teaches the build system to use a system provided SPIRV-Cross library when RetroArch is configured via configure --disable-builtinspirv_cross flag.

Related Issues

#17079

@LibretroAdmin
Copy link
Contributor

This is an issue as can be seen in the CI jobs.

We don't really want our current platforms to use system-provided SPIRV-Cross. You can add this functionality but it should be optional and should not be the default.

@apteryks
Copy link
Contributor Author

apteryks commented Oct 7, 2024

We don't really want our current platforms to use system-provided SPIRV-Cross. You can add this functionality but it should be optional and should not be the default.

It already should be optional; unless someone passes the --disable-builtinspirv_cross configure flag, it shouldn't change anything. I'll look at the one CI failure now, thanks.

@apteryks
Copy link
Contributor Author

apteryks commented Oct 7, 2024

I've looked at the WiiU build failure, and I'm puzzled. Is it possible to build with V=1 in to see which CXXFLAGS were used?

@pstef
Copy link
Contributor

pstef commented Jul 26, 2025

Can you rebase and trigger a rebuild? I expect we'd get more information after my changes to the makefiles.

@apteryks apteryks force-pushed the allow-using-system-spirv-cross branch from b6ecc22 to abbb1b4 Compare July 27, 2025 06:26
@apteryks
Copy link
Contributor Author

Can you rebase and trigger a rebuild? I expect we'd get more information after my changes to the makefiles.

Done!

@apteryks
Copy link
Contributor Author

apteryks commented Jul 27, 2025

I'm rusty on the RetroArch build system, but perhaps it doesn't work for the Wii build because it's calling its Makefile directly instead of going through ./configure, which I think would mean check_enabled SPIRV_CROSS BUILTINSPIRV_CROSS 'builtin spirv-cross' 'spirv-cross is' true is not called and the values not set ?

apteryks added 2 commits July 27, 2025 17:13
Fixes: libretro#17079

* Makefile.common [HAVE_BUILTINSPIRV_CROSS]: Include bundled
SPIRV-Cross sources only when using the builtin option, else...
[!HAVE_BUILTINSPIRV_CROSS]: Extend CXXFLAGS and LIBS.
* qb/config.libs.sh (BUILTINSPIRV_CROSS): Register new check_enabled
configure option, and add libraries/header checks.
* qb/config.params.sh (HAVE_BUILTINSPIRV_CROSS): Register new parameter.
* Makefile.wiiu (HAVE_BUILTINSPIRV_CROSS): Define to 1.
…bles.

C_INCLUDE_PATH and CPLUS_INCLUDE_PATH are consulted by GCC, so should
be considered by check_libs as well.

* qb/config.libs.sh (INCLUDES): Add C_INCLUDE_PATH and
CPLUS_INCLUDE_PATH values to it.
@apteryks apteryks force-pushed the allow-using-system-spirv-cross branch from abbb1b4 to 6f05e1c Compare July 27, 2025 08:13
@apteryks
Copy link
Contributor Author

I'm rusty on the RetroArch build system, but perhaps it doesn't work for the Wii build because it's calling its Makefile directly instead of going through ./configure, which I think would mean check_enabled SPIRV_CROSS BUILTINSPIRV_CROSS 'builtin spirv-cross' 'spirv-cross is' true is not called and the values not set ?

I think this should fix it:

modified   Makefile.wiiu
@@ -165,6 +165,7 @@ endif
       #WANT_IFADDRS = 1
       HAVE_OVERLAY = 1
       HAVE_SPIRV_CROSS = 1
+      HAVE_BUILTINSPIRV_CROSS = 1
       HAVE_SLANG = 1
       HAVE_DSP_FILTER = 1
       HAVE_VIDEO_FILTER = 1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants