Thanks a lot for your answers, I can confirm that migrating a small project (still including some cython) took less than a day to get boot-strapped. Not everything works but the structure is there and it kind-of works.
On Fri, 10 Jun 2022 13:42:44 +0200 Ralf Gommers <ralf.gomm...@gmail.com> wrote: > On Fri, Jun 10, 2022 at 10:53 AM Matthew Brett <matthew.br...@gmail.com> > wrote: > > > Hi, > > > > On Fri, Jun 10, 2022 at 9:41 AM Jerome Kieffer <jerome.kief...@esrf.fr> > > wrote: > > > > > > Dear Numpy developpers, > > > > > > We are developing a set of scientific tools > > > (https://github.com/silx-kit) and all our build infrastructure is based > > > on `numpy.distutils` which apparently is going to disappear in the > > > coming years. Beside us, the `scipy` project was using it ... > > > > > > Ralf Gommers has ported `scipy` to build with `meson-python` and there > > > are apparently some sharp edges remaining, especially under windows and > > > macos. I wonder if you can comment on the sustainability of this > > > approach or if you would advice us another build tool. > > > > I am sure that Ralf will say more, but I did some of the work getting > > the macOS and Windows builds working with Meson. I am not sure what > > sharp edges you are thinking of. As you can imagine, the macOS > > implementation was pretty straightforward, the Windows one less so, > > but for the usual reasons, of differences between the MSVC compiler > > and gcc toolchains. But even there, it turned out that the modern > > Windows gcc toolchains were up to the task, so we had to make > > relatively few changes. And, as I'm sure you know, Scipy has > > relatively complex build requirements. > > > > There are issues left, tracked under > https://github.com/scipy/scipy/issues?q=is%3Aopen+is%3Aissue+label%3AMeson. > None of those are fundamental, they are "just work". Some are not urgent > (like gcov integration), other will be fixed for the SciPy 1.9.0 release > over the next month or so. I have advised other projects who may be > interested to wait till mid-July, because by then we should have SciPy > 1.9.0 out and have surfaced any remaining potential issues. But you can > start now, there won't be anything unsolvable. I took a lot of inspiration from your work on scipy ... > Most of the difficulties are unrelated to Meson (which is vastly superior > to distutils/setuptools) itself, but more to: > 1. Fortran on Windows > 2. Cython not playing well with out-of-place builds > 3. The `pyproject.toml` based integration (PEP 517, 518, 621) with Pip & > co, and that whole design being a little immature > > You don't seem to have Fortran code in your project as far as I can tell, > which relieves you of the biggest headache. Cython support will improve, I > think the main thing we need is https://github.com/cython/cython/pull/4548 > (a fairly simple patch). Indeed, no Fortran on our-side, only C/C++/OpenCL/Cuda, that's enough ! > NumPy itself should move to Meson as well. The main thing in > `numpy.distutils` that NumPy uses but SciPy doesn't - and hence needs work > - is SIMD support. I expect we need some improvements in Meson itself, > what's in https://mesonbuild.com/Simd-module.html#unstable-simd-module is > not enough. But also there, I don't expect any hard blockers. > We are lucky, since SIMD stuff is handled at low-level by the JIT-compilation for GPU. > > So my guess is that you won't have much trouble getting the Mac and > > Windows builds working once you've ported your Linux builds to Meson. > > I'd be happy to help with any problems you do run into. > > > > +1 same here Thanks a lot for paving the road. Cheers, Jerome _______________________________________________ NumPy-Discussion mailing list -- numpy-discussion@python.org To unsubscribe send an email to numpy-discussion-le...@python.org https://mail.python.org/mailman3/lists/numpy-discussion.python.org/ Member address: arch...@mail-archive.com