Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update build system to use Meson #206

Merged
merged 62 commits into from
Nov 17, 2024
Merged

Conversation

tobiasdiez
Copy link
Contributor

@tobiasdiez tobiasdiez commented Oct 29, 2024

Following the example of Scipy/Numpy and sagemath/sage#36524, the build system is migrated to Meson.

I tried to stay as close as possible to the original autoconf implementation. A few differences are:

  • No longer need to auto-generate signals.pxd, but have it at as a normal source file.
  • Changed the authors to Sage Developers to align with the main sage repo. I'm unsure about this one and happy to revert it.
  • Drop Python < 3.9 in alignment with https://scientific-python.org/specs/spec-0000/
  • Remove the special handling when MINSIGSTKSZ_IS_CONSTANT (I had trouble making it compile and it's not constant for recent versions of glibc anyway)
  • Remove the "ci-with-sage" jobs in the github action, which are non-working on the main branch and I've also no idea how to make them compatible with meson; I also think the current ci runs should give a pretty good coverage.
  • Include the code of implementation_cygwin.c directly in implementation.c since I was not able to make it compile (it's also a bit hard for me to work on the cygwin code since I only have the ci to test it.)

Closes #179 (obsolete now)

@tobiasdiez
Copy link
Contributor Author

Uff, tests are finally green.

@fchapoton
Copy link
Contributor

Would you agree to engage yourself to maintain this for the years to come ?

@dimpase
Copy link
Member

dimpase commented Nov 17, 2024

meson is a widely used and documented, unlike our present system to build this. besides, currently used distutils is deprecated, and needs a replacement anyway.

@fchapoton
Copy link
Contributor

So we both agree that it's a good idea to merge, right ?

@tobiasdiez
Copy link
Contributor Author

Would you agree to engage yourself to maintain this for the years to come ?

That's hard to promise but yes I'm willing to (help) maintaining it. The meson build info is also pretty straightforward, so it shouldn't be too hard for someone else to modify it.

Please merge #209 before this one here, and squash this PR to have a cleaner git history. Thanks!

Copy link
Member

@dimpase dimpase left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@fchapoton fchapoton merged commit fa6d45d into sagemath:main Nov 17, 2024
20 checks passed
@tobiasdiez tobiasdiez deleted the convert-to-meson branch November 17, 2024 15:52
@tobiasdiez
Copy link
Contributor Author

Thanks @dimpase and @fchapoton!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

configure tests the wrong compiler
3 participants