Page MenuHome

Cmake/macOS: strictly disallow searching in frameworks
ClosedPublic

Authored by Ankit Meel (ankitm) on Oct 19 2020, 1:57 PM.

Details

Summary

This is a stricter version of the change made in
rBbb872b25f219: CMake/macOS: Search for headers in Frameworks last.

Cmake must never look into Frameworks when the system
library guards (without_system_libs_begin/without_system_libs_end)
are present.

OpenAL didn't follow this and OpenAL.framework in Xcode would be used.
The Cmake's FindOpenAL.cmake looks for both library (in this case,
the .framework file), and include dir.
Precompiled libraries don't contain the former. So find_package
cannot be used, or it becomes the hack that rBb2c707747da9: CMake: Comply with include path reported by FindOpenGL.cmake removed.
So hardcode the include dir path, and other variables.

Diff Detail

Event Timeline

Ankit Meel (ankitm) requested review of this revision.Oct 19 2020, 1:57 PM
Ankit Meel (ankitm) created this revision.
Ankit Meel (ankitm) edited the summary of this revision. (Show Details)
Ankit Meel (ankitm) edited the summary of this revision. (Show Details)Oct 19 2020, 2:00 PM
This revision is now accepted and ready to land.Oct 19 2020, 2:10 PM

@Brecht Van Lommel (brecht) @Sebastián Barschkis (sebbas) I guess this needs a corresponding commit in SVN libraries to add symbols for OpenAL. There are linker errors on macOS master.

The first thing to do is to restore things to the previous working state from before rB1f6b738, then we can consider upgrading the libraries.

And I guess that would be done restoring the OpenAL code from before rB1f6b738, and move that above without_system_libs_begin, next to the zlib code.