-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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: remove openlibm #56875
base: master
Are you sure you want to change the base?
build: remove openlibm #56875
Conversation
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
# For test only | ||
# https://github.com/JuliaLang/julia/pull/56875 | ||
# Only build on windows | ||
ifneq ($(OS), WINNT) | ||
# not on win32 | ||
$(error "JuliaLang/julia#56875" Only build on windows) | ||
endif |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do not merge this pr.
With newer msvcrt from gcc14, we can build julia-x64 without openblibm |
5a78588
to
fde32eb
Compare
Now, we passed all tests on x86 and x64 https://buildkite.com/julialang/julia-master/builds/43191#0193e8a8-9d95-47cb-95e9-403619dd44ed |
Does this mean that on Windows we'd need to require a very recent compiler? |
MSYS2 only keeps the latest version of the package, so GCC 14 is used here. Maybe a newer version of gcc isn't necessary, but I haven't tested it yet. |
As an alternative to this, could we just use LLVM libm? It's not complete, but IIRC the only thing that we actually depend on is the conversions which are implemented https://libc.llvm.org/headers/math/index.html#implementation-status |
After this PR, we use system libm. |
6f2a2d6
to
26b7ffb
Compare
8c70304
to
c43095f
Compare
This pr replaced #42299
On Windows, we use
libmingwex
to provide math functions which are not implemented bymsvcrt
(Old Microsoft Libm).From
libmingwex
:ldexp, log2l, exp2l, powi
Note: We are using a special toolchain
i686-12.2.0-release-posix-sjlj
from niXman/mingw-builds-binaries fori686-windows
.