On Mon, Mar 23, 2026 at 10:01:23PM +0200, Liviu Ionescu wrote: > > On 23 Mar 2026, at 21:47, R. Diez <[email protected]> wrote: > > > > - Also it [Meson] repeats CMake's mistake of rolling its own scripting > > language, which is pretty much always a bad decision because: > > 1. They're not professional language designers. That language won't be as > > good as properly designed ones. > > 2. It's a lot of work that isn't needed, pointlessly increasing the > > project's cost. > > 3. It doesn't have any ecosystem, while existing general purpose scripting > > languages do, including libraries, tutorials, and people who already know > > them. > > 4. It's a waste of the user's time to learn a language which is only used > > for a single tool, and is completely useless elsewhere.
I could never understand how it happened that popular build systems ended up inventing their own unique languages (with all the downsides mentioned) instead of e.g. Lua if they wanted something like traditional scripting features. I also do not understand why people do not seem to desire a purely functional approach to specifying builds. > As a user of both cmake and meson in parallel for my projects, my > advice would be to do the exercise for both tools, and only after > getting a reasonable level of understanding of both to decide on the > less painful for each specific project. FWIW people behind OpenBMC project migrated their C++ projects (normally cross-built with OE/Yocto) from CMake to Meson and guess were quite happy with that, e.g https://www.stwcx.xyz/blog/2021/04/18/meson-subprojects.html On an emotional side note, back then when I worked on cleaning up the autotools OpenOCD build ( http://openocd.zylin.com/1475 ) I had to learn some m4 and I had to read into some generated shell scripts and trace them run-time; the whole concept isn't elegant from CS point of view (text macro processing to generate quirky imperative language script is meh) but it /felt/ kind of fun and satisfying. In contrast to that I never enjoyed reading CMake build code. My very limited exposure to reading Meson configurations left a better impression but I personally would rather learn some strongly-typed purely functional DSL for the task... -- Be free, use free (http://www.gnu.org/philosophy/free-sw.html) software! mailto:[email protected]
