mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2025-12-15 08:03:30 -08:00
ci: Run Linux tests on Debian trixie.
So we have a more recent version of SPIRV-Tools and also don't have to recompile Mesa to test llvmpipe. This fixes a few failing tests, but also breaks a couple.
This commit is contained in:
committed by
Henri Verbeet
parent
3f1de27283
commit
3c8b4ce731
Notes:
Henri Verbeet
2025-10-03 00:55:50 +02:00
Approved-by: Henri Verbeet (@hverbeet) Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1764
@@ -702,4 +702,51 @@ static inline IDxcCompiler3 *dxcompiler_create(void)
|
||||
}
|
||||
#endif
|
||||
|
||||
static inline int compare_versions(uint32_t major1, uint32_t minor1, uint32_t patch1,
|
||||
uint32_t major2, uint32_t minor2, uint32_t patch2)
|
||||
{
|
||||
int ret;
|
||||
|
||||
if ((ret = vkd3d_u32_compare(major1, major2)))
|
||||
return ret;
|
||||
if ((ret = vkd3d_u32_compare(minor1, minor2)))
|
||||
return ret;
|
||||
return vkd3d_u32_compare(patch1, patch2);
|
||||
}
|
||||
|
||||
static inline bool find_version_string(const char *str, const char *tag,
|
||||
uint32_t *major, uint32_t *minor, uint32_t *patch)
|
||||
{
|
||||
const char *ptr;
|
||||
|
||||
if (!(ptr = strstr(str, tag)))
|
||||
return false;
|
||||
|
||||
ptr += strlen(tag);
|
||||
|
||||
return 3 == sscanf(ptr, "%u.%u.%u", major, minor, patch);
|
||||
}
|
||||
|
||||
static inline bool compare_version_string_lt(const char *str, const char *tag,
|
||||
uint32_t major, uint32_t minor, uint32_t patch)
|
||||
{
|
||||
uint32_t major2, minor2, patch2;
|
||||
|
||||
if (!find_version_string(str, tag, &major2, &minor2, &patch2))
|
||||
return false;
|
||||
|
||||
return compare_versions(major, minor, patch, major2, minor2, patch2) > 0;
|
||||
}
|
||||
|
||||
static inline bool compare_version_string_ge(const char *str, const char *tag,
|
||||
uint32_t major, uint32_t minor, uint32_t patch)
|
||||
{
|
||||
uint32_t major2, minor2, patch2;
|
||||
|
||||
if (!find_version_string(str, tag, &major2, &minor2, &patch2))
|
||||
return false;
|
||||
|
||||
return compare_versions(major, minor, patch, major2, minor2, patch2) <= 0;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user