This repository was archived by the owner on Mar 20, 2025. It is now read-only.
libcxathrow: Fix build on Musl #177
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I do not consider this change to be fully polished (but I left the code in a better state than it was in). I am open to discussion about the problematic of determining correct exception unwinding mechanism on different operating systems/libcs.
My intent is to package mesonlsp. To be honest, I expected a LSP for Meson to have a cleaner build process. This project depends on a lot of "throwaway forks" of popular libraries/projects with few custom commits added. As a package maintainer, I would prefer to see more robust solutions, and if they aren't feasible, I would like to see documented commitments to maintain these forks, to "backport" upstream updates and to release/tag versions every so often. The muon fork is especially discouraging. The current latest release is also not buildable (because it lacks 8edb5af).
But I understand that maintaining an open-source project is a difficult task (I have also noticed the call for maintainers). I intend my comments to be constructive criticism for areas which could be improved if the project wishes to spend its limited resources on improving the packaging experience.
To return to the focus of this PR, I would also like to note that the libunwind optional dependency should be documented somewhere. If I hadn't encountered issues with building mesonlsp on Musl which lead me to
src/libcxathrow/meson.build
, I wouldn't have noticed this dependency and I would have packaged a version of mesonlsp which wouldn't print any useful stacktraces on Musl. If there is interest, I am willing to collaborate on improving this documentation (but mesonlsp currently doesn't have a dedicated place to document the build or packaging process, it has only a brief shell snippet in README).Checklist:
mesonlsp.spec
,scripts/create_license_file.sh
and all GitHub Actions files?related to #174