Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

glslang: Enable optimization support #18210

Merged
merged 2 commits into from
Aug 19, 2023
Merged

glslang: Enable optimization support #18210

merged 2 commits into from
Aug 19, 2023

Conversation

kasper93
Copy link
Contributor

No description provided.

mingw-w64-glslang/PKGBUILD Outdated Show resolved Hide resolved
@Biswa96
Copy link
Member

Biswa96 commented Aug 17, 2023

Some questions.

  1. Should glslang be linked with packaged version of spirv-tools? The glslang repository uses different version of spirv-tools than ours.
  2. Should we wait for that patch to be merged in upstream?
  3. Does this require to re-build dependent packages?

@kasper93
Copy link
Contributor Author

Should glslang be linked with packaged version of spirv-tools? The glslang repository uses different version of spirv-tools than ours.

So for full compatibility both packages in MSYS2 should have compatible versions. Which are tracked with https://github.com/KhronosGroup/glslang/blob/main/known_good.json

I tested the current versions works correctly. But indeed the known_good.json is something to keep in mind when making spit packages.

Should glslang be linked with packaged version of spirv-tools?

Yes, especially that we provide static libraries too.

Should we wait for that patch to be merged in upstream?

Yes, sure let's do that.

Does this require to re-build dependent packages?

Yes, if they are linking to static version. for shared one shouldn't be a difference. But I rebuild all just in case.

@kasper93
Copy link
Contributor Author

Should we wait for that patch to be merged in upstream?

Merged now, updated with the version of a patch from main branch.

@kasper93
Copy link
Contributor Author

   D:/M/msys64/ucrt64/include/c++/13.2.0/cstdlib:79:15: fatal error: stdlib.h: No such file or directory
     79 | #include_next <stdlib.h>
        |               ^~~~~~~~~~
  compilation terminated.

huh?

@lazka
Copy link
Member

lazka commented Aug 17, 2023

huh?

#13608 - a retry usually fixes it

@kasper93
Copy link
Contributor Author

kasper93 commented Aug 17, 2023

#13608 - a retry usually fixes it

I see. I also needed to update vulkan-validation-layers, because build failed with vulkan-headers from the repo.

@lazka
Copy link
Member

lazka commented Aug 17, 2023

you also need to update the checksum.

and it fails to build here. I'd suggest updating it in a separate PR maybe?

it seems to depend on the new https://github.com/KhronosGroup/Vulkan-Utility-Libraries now

@lazka
Copy link
Member

lazka commented Aug 17, 2023

hm, it was revered KhronosGroup/Vulkan-ValidationLayers@e6bdb8d

@kasper93
Copy link
Contributor Author

hm, it was revered

Yes, I see that, but it still doesn't compile. There are a lot of dependencies between those vulkan packages. I'm trying to unwind what can be done here.

@lazka
Copy link
Member

lazka commented Aug 17, 2023

with the revert I get lots of other errors

C:/msys64/home/user/M/mingw-w64-vulkan-validation-layers/src/Vulkan-ValidationLayers-1.3.261/layers/vulkan/generated/spirv_validation_helper.cpp:693:20: error: 'CapabilityCooperativeMatrixKHR' is not a member of 'spv'; did you mean 'CapabilityCooperativeMatrixNV'?
  693 |          case spv::CapabilityCooperativeMatrixKHR:
      |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                    CapabilityCooperativeMatrixNV
[7/55] Building CXX object layers/CMakeFiles/vvl.dir/gpu_validation/gpu_validation.cpp.obj
....
C:/msys64/home/user/M/mingw-w64-vulkan-validation-layers/src/Vulkan-ValidationLayers-1.3.261/layers/gpu_validation/gpu_validation.cpp:1060:14: error: 'kInstErrorOOB' was not declared in this scope; did you mean '_kInstErrorMax'?
 1060 |         case kInstErrorOOB: {
      |              ^~~~~~~~~~~~~
      |              _kInstErrorMax

I'm trying to unwind what can be done here.

good luck, I'm out :)

@kasper93
Copy link
Contributor Author

kasper93 commented Aug 17, 2023

good luck, I'm out :)

For now the only way is to revert vulkan headers update and wait for appropriate spirv-tools tag.

#18212

By default glslang only supports linking to SPIR-V Tools built in-tree.
This does not work when packages are split, like we have. Patch CMake to
allow linking external SPIR-V Tools.
@lazka
Copy link
Member

lazka commented Aug 18, 2023

I guess we can't get ucrt64 to pass here :/

good to merge besides that?

@kasper93
Copy link
Contributor Author

good to merge besides that?

good on my end.

@lazka lazka merged commit 5b196a3 into msys2:master Aug 19, 2023
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