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

Switch to Meson build system? #219

Open
dnicolodi opened this issue Jan 10, 2025 · 2 comments
Open

Switch to Meson build system? #219

dnicolodi opened this issue Jan 10, 2025 · 2 comments

Comments

@dnicolodi
Copy link
Contributor

dnicolodi commented Jan 10, 2025

To be able to use RE/flex as a Meson subproject, I wrote a Meson build recipe for it. It is currently hosted on WrapDB https://github.com/mesonbuild/wrapdb/tree/master/subprojects/packagefiles/reflex

Is there any interest in incorporating it in the official repository, alongside the other build definitions or replacing them? I see that RE/flex already maintains three build recipes: autotools, manual makefiles, and the visual studio solution. Meson would be a way to unify the Unix and Windows builds. I believe the manual makefiles are kept because autotools is a bit of an heavy dependencies on some platforms. Meson on the other hand is easily installed on all platforms, thus switching to Meson would remove the need to maintain these makefiles.

The linked Meson build definition, implements all the checks and options of the autotools build recipe, except for building tests and examples (which could be easily added) and (to me, at least) looks much simpler.

Comments?

@genivia-inc
Copy link
Member

Thank you for sharing your suggestion. I think it would be nice and helpful to users to include a Meson build recipe with RE/flex.

Building with a recipe from source should include a SSE2/AVX2/NEON/AArch64 check if users want to accelerate searching the input with the regex engine (but SIMD has no to little effect when tokenizing input).

@dnicolodi
Copy link
Contributor Author

Building with a recipe from source should include a SSE2/AVX2/NEON/AArch64 check if users want to accelerate searching the input with the regex engine (but SIMD has no to little effect when tokenizing input).

This is already done in the Meson build recipe I linked to. It works on Linux and macOS from local testing and it has been verified in GitHub Actions CI infrastructure on Linux, macOS, and Windows.

I think it would be nice and helpful to users to include a Meson build recipe with RE/flex.

I am not a big fan of alternative build recipes as it duplicates maintenance costs with the risk of one falling behind the others. Unless RE/flex targets platforms that are still not well supported by Meson, I would advocate to switch to it. One immediate benefit would be fixing #142

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

No branches or pull requests

2 participants