Although perfectly usable, CMake struggles a little bit when dealing with complex projects, and the syntax can be burdening at times. If we are to change build systems, it should be done as early as possible to avoid rewriting a potentially complicated build hierarchy. Meson looks to be a very promising candidate, especially with its support for CMake subdirectories. Bazel looks interesting, but the dependency on Java is essentially a deal-breaker. Whatever we choose, the implementation should be worked on as soon as possible as unit testing and benchmarking are high priority issues, and CMake is already causing problems with the API wrapper builds.
Although perfectly usable, CMake struggles a little bit when dealing with complex projects, and the syntax can be burdening at times. If we are to change build systems, it should be done as early as possible to avoid rewriting a potentially complicated build hierarchy. Meson looks to be a very promising candidate, especially with its support for CMake subdirectories. Bazel looks interesting, but the dependency on Java is essentially a deal-breaker. Whatever we choose, the implementation should be worked on as soon as possible as unit testing and benchmarking are high priority issues, and CMake is already causing problems with the API wrapper builds.