Closed solarispika closed 5 months ago
Hi! Thanks for reporting it.
But let me add a couple of things:
Meanwhile I'll update the CMake file to keep the FSEvents backend active. Thanks again.
Hi! It's great to see this problem solved. Thanks!
The conan package is not offically provided, it's just part of our work, so I can easily update it.
BTW, I think it is more appropritate to also remove the macro in premake4.lua and src/efsw/base.hpp if possible.
Anyway, thanks again!
I tried to cross build the project for macOS intel from macOS apple silicon using Conan, and encountered problem of missing events. After some in-depth investigations, it turned out to be kqueue instead of expected FSEvents being used causing the problem.
The root causes is that
CMAKE_SYSTEM_VERSION
was empty, so the following marks FSEvents not available.https://github.com/SpartanJ/efsw/blob/341934765471e4074e90bb5205ff4a65c16499c6/CMakeLists.txt#L102-L104
CMake requires
CMAKE_SYSTEM_VERSION
to be set explicitly during cross building, but conan didn't do it right. I have reported this to Conan and they confirm it as a bug.However, they also suggest being explicit to enable/disable a library feature instead of let build system deteremining it. I agree to it too. User not using Conan can also suffer from it by forgetting to set CMAKE_SYSTEM_VERSION correctly.
Here come questions/requests:
EFSW_FSEVENTS_NOT_SUPPORTED
, does it mean macOS using premake5 can only use FSEvents? What if they build it on old OSX systems?