-
Notifications
You must be signed in to change notification settings - Fork 268
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
CMake cleanup #1489
Comments
For 3, I have been looking at vcpkg in a branch. I'm not convinced on it yet, because it has the cost of making compile times much longer, unless I can find a good way to do binary caching (vcpkg does support this, but there isnt a good easy and free option). An overview of the packages we use for each of vcpkg and nuget: |
Yeah I am aware of the painful recompiles of ffmpeg, have a project on RPI where I need to do so and generally need half a day, boost isn't much better though if you need all of boost. I don't think NuGet is necessarily bad, will just need some config in cmake but there is stuff that can be cleaned up and generalized. |
@dimitry-ishenko I'm continuing this here since it is relevant.
I think the relevant section here is "from within the same component or project", we should be treating every one of the targets as a separate component with a public API that is exported and everything else being private internally. That way we could for instance in the future switch the current accelerator to WebGPU or OpenCL or whatever else (maybe something per platform) and not need to change code in 100 places. |
3 is affected by #1502, now using cmake external packages instead of nuget (and caching in docker images?). |
For 3, I have done some further cleanup of the platform specific cmake files in #1504 to remove anything which was duplicated across them both. This makes them a lot easier to understand and follow the differences, it is mostly now a difference in compiler flags and approach to finding dependencies. Maybe more could be done to make this even better, but I am satisfied now that it is more understandable. |
This would just a thread to discus what needs to be cleaned up in the cmake configs and what direction we would want to go with some things. Pinging @dimitry-ishenko in this since he may be able to assist in the near future.
Some ideas:
The text was updated successfully, but these errors were encountered: