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

Build babelized projects with meson #90

Merged
merged 39 commits into from
Mar 15, 2024
Merged

Conversation

mdpiper
Copy link
Member

@mdpiper mdpiper commented Mar 6, 2024

This PR changes the build system for babelized projects from setuptools to meson.

This fixes #77 and fixes #87.

@mdpiper
Copy link
Member Author

mdpiper commented Mar 6, 2024

I'm starting with Fortran, then I'll generalize to the other supported languages.

@mcflugen
Copy link
Member

mcflugen commented Mar 11, 2024

@mdpiper We're getting close, I think. Some things we still need to do,

  • Remove unnecessary files. Some files I think that can be removed from the template are Makefile, setup.py, and setup_utils.py.
  • meson.build should probably be removed when creating a pure-python package since, in that case, we use setuptools, not meson.

I'm sure there are other things but I just wanted to get these down before I forget about them.

@mdpiper mdpiper marked this pull request as ready for review March 13, 2024 22:57
@mdpiper mdpiper requested a review from mcflugen March 13, 2024 22:57
@mdpiper
Copy link
Member Author

mdpiper commented Mar 14, 2024

@mcflugen I'll remove the Makefile. Should I also remove MANIFEST.in from the template?

@mcflugen
Copy link
Member

Should I also remove MANIFEST.in from the template?

Yes, but we'll have to make sure that everything is included in the source distribution that needs to be (the only extra stuff is the data folder, I think).

Maybe something along the lines of,

[tool.setuptools.package-data]
package_name = [
    "data/component_1/*",
    "data/component_2/*",
]

@mdpiper
Copy link
Member Author

mdpiper commented Mar 14, 2024

I'll leave the MANIFEST.in file for now since addressing it veers away from the main point of this PR.

I will update the README, though, because if a user does an editable install with pip, they need to set --no-build-isolation. (This is meson-python behavior.)

@mdpiper
Copy link
Member Author

mdpiper commented Mar 14, 2024

@mcflugen I think this is ready to go. What do you think?

Copy link
Member

@mcflugen mcflugen left a comment

Choose a reason for hiding this comment

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

👍

@mdpiper mdpiper merged commit 1599243 into develop Mar 15, 2024
35 checks passed
@mdpiper mdpiper deleted the mdpiper/build-with-meson branch March 15, 2024 17:58
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.

Use Meson to build all babelized projects Find new build process for Fortran libraries
2 participants