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

Add builder for BrianGladman/mpir #22

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

cmb69
Copy link
Member

@cmb69 cmb69 commented Oct 19, 2024

Frankly, I'm not sure what to do about mpir, which is a fork of libgmp, used to build ext/gmp on Windows. The latest release (3.0.0) was published more than seven years ago, and the project seems to be abandoned. There is https://github.com/BrianGladman/mpir, a fork that focuses on Windows, which had some activity, but according to wbhart/mpir#272, neither the original work, nor Brian Gladman's fork are still maintained.

If no further maintenance will happen, we may consider to switch to libgmp, although there is no support for native Windows builds (only autoconf), which is likely one of the reasons why we had chosen mpir; the other is that mpir provides optimized implementations (in Assembler, using SIMD instructions), although I don't think that any of these have been used for our official builds. Those that are offered out of the box by BrianGladman/mpir use AVX and maybe AVX2 instructions, and that would not fit with our PHP builds which are constrained to SSE2. If we switch to libgmp, we may even consider using mini-gmp which is a minimal variant consisting of a few C files only, but claims to be slow since it's lacking optimizations. It might not be that bad, considering that we didn't deploy the optimizations of mpir.

Anyhow, to make some progress, this PR add a builder for BrianGladman/mpir (which has at least one relevant bug fix). A test build showed no issues running the ext/gmp test suite on master/x64. Since that repo never released tags, and the version numbers have never been bumped, I have no idea what to do about that. Of course, we could modify the version numbers, or just call it mpir-3.0.0-1 or something.

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.

1 participant