Lattice is a Java build system with strong multi-module support. Build files are written not in XML, but in the Python language. The benefits are much better readability and powerful imperative build scripting. For multi-module projects, Lattice uses topological sorting to decide the correct order to build each module. Because a custom task is just a regular Python function, they can perform any type of work, including invoking other Java build systems such as Ant, Maven, or Ivy.
SBuild is a Scala-based build system. It features platform independence, multi project support, automatic detection of needed actions, automatic up-to-date detection, a flexible scheme handler mechanism, Maven repository support, Ant task integration, automatic cross-project resolving of dependencies, high speed, a simple "syntax" that requires almost no Scala knowledge, behind-the-sceens compilation of build script to bytecode for fast execution time, and built-in scheme handlers for HTTP and Maven.
Meson aims to be the most usable and fast build system. It provides a simple yet powerful mostly declarative language for describing your build. It has native support for modern tools and frameworks, such as Qt5, code coverage, unit tests, precompiled headers, and others. It utilizes a host of optimization techniques to compile your code faster on both full and incremental builds.