Tobias,

Congrats and fantastic!   Is it possible that you could add some
additional "human context" for those of us on the sidelines, e.g., who
added Meson support to Sage (you?), why?, how hard what is and how
long did it take?, what was involved?  Also, to what extent does Meson
replace autotools?  E.g., there are many packages in Sage that use
autotools -- does this mean that all of them have a non-autotools
build process as well now?

Thanks for whatever quick context you can easily provide,

 William

On Thu, Apr 3, 2025 at 3:47 AM 'tobia...@gmx.de' via sage-devel
<sage-devel@googlegroups.com> wrote:
>
> Dear developers,
>
> I am excited to announce that SageMath now supports the Meson build system! 
> This modern alternative to Autotools brings several key advantages:
>
> Faster Builds – Meson significantly reduces configuration and compilation 
> time due to better parallelism (some benchmark claim up to 20% reduction of 
> compilation time; in my experience it was closer to 10%)
> Better Incremental Builds – Only necessary files are recompiled, speeding up 
> development. In particular, Meson will automatically recompile Cython files 
> when they change - without the need to run `sage -b` or similar commands. The 
> workflow is thus the same as for Python files: a) make the necessary changes 
> b) save the file c) run the tests (which then automatically use the freshly 
> recompiled version)
> Easier Installation – Meson works smoothly with the standard Python packaging 
> systems, so that the installation of Sagemath using Meson is a simple `pip 
> install .`; no more bootstrap + configure + make.
> Cross-Platform  –One of the biggest advantages of Meson is that it natively 
> supports Windows (in addition to Linux and MacOS, of course). This opens up a 
> direct road to natively use Sage on Windows; in fact, 
> https://github.com/sagemath/sage/pull/38872 is the first step towards this 
> goal.
> Easier Dependency Management – External dependencies / system packages are 
> detected more reliably (caveat: some of the extra feature checks are not yet 
> reimplemented in Meson).
>
> Quick Start
>
> To build SageMath with Meson, install the required dependencies (either using 
> your system package manager or conda), then use:
>
> `pip install --no-build-isolation --editable .`
>
> Start Sage with `./sage` and run tests using `./sage -t`, as usually.
>
> For more details, check out the SageMath Meson Guide.
>
>
> --
> You received this message because you are subscribed to the Google Groups 
> "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to sage-devel+unsubscr...@googlegroups.com.
> To view this discussion visit 
> https://groups.google.com/d/msgid/sage-devel/6aef0674-5f4a-4576-85e8-f80506ea232fn%40googlegroups.com.



-- 
William (http://wstein.org)

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion visit 
https://groups.google.com/d/msgid/sage-devel/CACLE5GAb3MFuOiCMoSz%2BmTKAdp-GiWR2DF6zZbR96fFt6T2MmA%40mail.gmail.com.

Reply via email to