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

Update glfw submodule to latest #1237

Open
wants to merge 13 commits into
base: main
Choose a base branch
from

Conversation

SaschaWillems
Copy link
Collaborator

Description

This PR updates the glfw submodule to the latest release. We haven't updated this in ages, which seems to cause issues for some newer linux distros.

Did two full batch runs (debug and release build) in Windows to make sure changes don't cause any issues.

Fixes #1192

General Checklist:

Please ensure the following points are checked:

  • My code follows the coding style
  • I have reviewed file licenses
  • I have commented any added functions (in line with Doxygen)
  • I have commented any code that could be hard to understand
  • My changes do not add any new compiler warnings
  • My changes do not add any new validation layer errors or warnings
  • I have used existing framework/helper functions where possible
  • My changes do not add any regressions
  • I have tested every sample to ensure everything runs correctly
  • This PR describes the scope and expected impact of the changes I am making

Note: The Samples CI runs a number of checks including:

  • I have updated the header Copyright to reflect the current year (CI build will fail if Copyright is out of date)
  • My changes build on Windows, Linux, macOS and Android. Otherwise I have documented any exceptions

If this PR contains framework changes:

  • I did a full batch run using the batch command line argument to make sure all samples still work properly

@SaschaWillems
Copy link
Collaborator Author

@tomadamatkinson : Clang Tidy Check fails because glfw needs new libraries. Any idea why that needs libraries at all? Doesn't it just check code files? I added new required libs to all steps that require them, but I can't see where those need to be set up for Clang Tidy.

P.S. : I think we need to clean up / streamline CI. So many places that you have to care for when new requirements come in :/

@tomadamatkinson
Copy link
Collaborator

There is a PR which merges v2 with the existing pipeline and removes the Debug builds. That should help.

In terms of these dependencies I think they are now default required by GLFW. You can turn off Wayland builds with a CMake flag. Not sure why Antora needs it... is that not a documentation pass

@SaschaWillems
Copy link
Collaborator Author

Well, the problem is that EVERY CI step that does build samples needs the new libraries. I already added them to all CI steps incl. Antora, but I have no clue how to add them to the Clang Tidy step. It's the last one failing, so I need some help here ;)

@SaschaWillems
Copy link
Collaborator Author

@tomadamatkinson : I could use a hand with this ;) I don't know what I can do to fix the failing Clang Tidy Check.

@gpx1000
Copy link
Collaborator

gpx1000 commented Dec 13, 2024 via email

Wayland dependencies were removed from the workflows and build configurations to streamline the installation process. The Antora documentation build is now conditional, preventing unnecessary inclusion when VKB_GENERATE_ANTORA_SITE is not set. This improves build flexibility and reduces extraneous steps.
@gpx1000
Copy link
Collaborator

gpx1000 commented Dec 17, 2024

SaschaWillems#5

I removed the wayland need for now in the CI by passing it -DGLFW_BUILD_WAYLAND=OFF from the command line in the CI. Wayland in glfw is still a little half baked and not required to build / use GLFW. All versions of GLFW prior to this one had Wayland building off by default. We'll revisit this need as the dependencies like clang-tidy gain support in the future. NB: this doesn't stop anyone from trying to build with Wayland if they have it. Just disables it from our CI. It might make sense to do some documentation so end users know they now need to have wayland-dev installed, but there's plenty of messaging about that from GLFW automatically as is; so probably not needed.

Oh, because it has been a request, I disabled the doc build from doing anything other than generate docs. You no longer even need to download the submodules (I don't think). However, you would no longer be able to build both docs and samples binaries in one go; don't think that use case is ever needed so no real loss there.

@gpx1000
Copy link
Collaborator

gpx1000 commented Dec 17, 2024

I should say, another way to "fix" this if you prefer is to simply fix the clang-tidy build. check.yml at line 101 you can add -DGLFW_BUILD_WAYLAND=OFF or, you could solve it the same way you did in the other build types. just add a run line that adds wayland-dev etc apt repositories to the linux builder.
Up to you how you want to fix it ;-) my PR passed though so should be good from there.

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.

Problem with running examples on Fedora 40 with KDE 6.2
3 participants