cartesi / machine-emulator-tools

Set of tools to help the development
Apache License 2.0
13 stars 19 forks source link

Use meson instead of Makefile #54

Closed mpolitzer closed 4 months ago

mpolitzer commented 4 months ago
edubart commented 4 months ago

I don't mind having this as long as this is non-mandatory, so there is still a way for me to compile libcmt from sources without meson (as an user). Just needing a C compiler and GNU make.

Maybe meson could be used for development, with mock implementation, debug options, tests, coverage, etc. And a very simple makefile has just enough to compile and install in release mode, so libcmt is straightforward to build on systems without meson. But then we have to maintain two build systems, maybe it could be worth it if the sum of lines of having to maintain both build systems is less complex than having just a makefile with everything.

I think the same about the emulator, I am fine with using meson for development (as a developer), as long as I can use a simple makefile when packaging it in release mode (as an user compiling from sources or as a packager). With raw makefiles I can build the cartesi machine for example in very exotic systems like DOSBox, Haiku, FreeBSD, WASM, etc. Making meson mandatory would cut possible systems we could support, because meson brings a lot of dependencies (eg Python).