Hi, On Tue, 9 Apr 2024 at 11:57, Hassan Sajjad via Boost wrote:
I've added a new section to the documentation https://github.com/HassanSajjad-302/HMake?tab=readme-ov-file#hmake-architect.... Please spend some time exploring this. I believe you will like it.
I wrote hmake.cpp for compiling Boost Math with C++20 modules, which you can find at https://github.com/HassanSajjad-302/math/blob/modules/hmake.cpp.
Nice, thank you. Please keep in mind that I'm just a random user (I'm not affiliated with Boost development in any way). But I would like to better understand a few use cases. 1.) I have a large C++ project written with the CMake build system that uses FetchContent to download and compile Boost sources on the fly (so that we don't have to store boost sources inside our own codebase). Rewriting the build system of that main project from CMake to hmake would be way too expensive, so I would like to know if I could use a dependency that only has hmake support (and no CMake). That project needs to be cross-compiled to aarch64-linux on a x86_64 machine. Can you please publish an example to demonstrate how to achieve this assuming that CMake support gets removed from Boost and only hmake support is left there one day? 2.) I'm also interested in a different scenario. Let's say that I'm willing to invest a lot of time/money into rewriting the build configuration for my CUDA project into hmake, but I need to link to another library that only has CMake support. Can you please also publish an example written in hmake that only compiles the main C++ project using hmake, but correctly passes the configuration for building the dependency (you can use Boost as a sample dependency)? I would like to compile the C++/CUDA project for Windows on a Linux box. For both questions it would probably be a lot more helpful to see them addressed in documentation/examples of the repository itself. (If you just answer it here, the answers would "get lost", while they would be easy to find if you put sample code into the repository.) 3a.) And an unrelated question. Assuming that the company where I work decides to spend a lot of time and money rewriting our build system to hmake: do you have any business plan to guarantee development of hmake for the foreseeable future, so that we can rely on bugs getting fixed in a timely manner and missing features being implemented long enough that our effort won't have to be repeated again (to rewrite the build system back to something else due to lack of support in hmake)? I'm particularly worried about this aspect of the equation because you mentioned that you wouldn't be able to afford to work on hmake in the future unless you get some funding right away. 3b.) Assuming Boost would in fact fund you. What would you suggest to do with the remaining two build systems? Drop one or both of them? Keep all three build systems around? And since there would definitely be more bugs and features popping up in the future: how do you imagine maintaining hmake in the long run when that one month of funding is over? Thanks a lot, Mojca