kosenko / ui

Boost.UI library
272 stars 20 forks source link

CMake support #9

Open Xeverous opened 5 years ago

Xeverous commented 5 years ago

wxWidgets supports CMake and the CMake itself has a built-in FindBoost.cmake script. Since this library is not a part of official Boost, it would be very convenient if one could just find_package(...) to easily build and install the library + automatically propagate dependencies.

Xeverous commented 5 years ago

Adding more information: I have boost compiled and installed with the compiler, I have no sources or the boost repository so would like a solution that does not involve building boost from scratch.

kosenko commented 5 years ago

It would be nice to have CMake support and many other Boost libraries already have it. Unfortunately I'm not familiar with CMake yet.

Xeverous commented 5 years ago

Then https://cliutils.gitlab.io/modern-cmake/ is a good start. CMake had similar overheaul as C++ and so there is "old CMake" (<2.8.12, based on variables and paths) and "modern CMake" (>=3.0, based on tagrets and properties). With modern CMake you no longer have to manually input all paths to all projects; you just declare that target X depends on target Y and CMake automatically propagates all include paths, compiler/linker options that target Y declares as public.

I'm not a master of modern CMake (yet) but can make a PR.

kosenko commented 5 years ago

Interesting. Thank you for info. :)