[Fix] contrib.glfw3 overrides built-in GLFW (in cache) #21586
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
As I was working on another port, something that should not be working was working... so I investigated and found an issue. The contrib port ended up overriding the built-in GLFW in the cache.
After this fix it doesn't happen anymore:
As you can see after the fix the 2 directories contain different versions of glfw3.h (which is expected since as you know I upgraded the contrib port to GLFW 3.4).
When you run the
emcccommand, you can see that the search path is set properly:So when a source code includes
then it will pick up the right one under
cache/sysroot/include/contrib.glfw3(and not the one undercache/sysroot/includewhich is last in the list)This fix requires a minor change in
ports.install_headersto allow for nested folders (which BTW, I also need for another project I am working on)