-
-
Notifications
You must be signed in to change notification settings - Fork 12.6k
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
julia 1.6.1 (new formula) #76527
julia 1.6.1 (new formula) #76527
Conversation
That said, I'm not convinced that
If you try to |
What error do you get when you try use system
Can you link the patches? |
It wants its library dependencies to live in
For For The |
Considering an unversioned
Ah yes, this all links back to the ABI versioning thing. |
Bad things, because it then points all library searches to |
prefix=#{prefix} | ||
USE_SYSTEM_CSL=1 | ||
USE_SYSTEM_PCRE=1 | ||
USE_SYSTEM_OPENLIBM=1 |
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.
What's the benefit of using openlibm
over the system libm
(USE_SYSTEM_LIBM
)?
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.
openlibm
is optimised for Julia (and vice-versa). openlibm
is actually maintained by Julia maintainers. I don't have specific benchmarks, though.
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.
It also looks like Julia relies on some symbols that aren't necessarily in a given libm
implementation: JuliaLang/julia#26434 (comment)
It seems like it'll also download its own at some point if you don't give it an openlibm
: JuliaLang/julia#26434 (comment)
That said, it seems to manage just fine with |
599a59d
to
90d6639
Compare
Ok, this should pass the audit now. Do we want this to use brewed Or an alternative fix in Homebrew/core would be to create a |
#76646 will also allow use of brewed |
8faebe9
to
b110e72
Compare
`llvm-config` relies on a versioned `libLLVM` (e.g. `libLLVM-12`), but their build system does not install one for some reason. With the symlink: ❯ llvm-config --libs -lLLVM-12 Without: ❯ llvm-config --libs -lLLVMWindowsManifest -lLLVMXRay -lLLVMLibDriver -lLLVMDlltoolDriver ... -lLLVMRemarks -lLLVMBitstreamReader -lLLVMBinaryFormat -lLLVMTableGen -lLLVMSupport -lLLVMDemangle This deviates from the intended behaviour, as seen on Linux, where `llvm-config --libs` returns the output shown above with the symlink. Attempting to link against the libraries shown by `llvm-config` without this fix is also leads to build failures due to missing symbols. This will also allow Julia to use brewed `llvm` instead of a vendored one. (Homebrew#76527) Closes Homebrew#76798.
4216201
to
f27b396
Compare
`llvm-config` relies on a versioned `libLLVM` (e.g. `libLLVM-12`), but their build system does not install one for some reason. With the symlink: ❯ llvm-config --libs -lLLVM-12 Without: ❯ llvm-config --libs -lLLVMWindowsManifest -lLLVMXRay -lLLVMLibDriver -lLLVMDlltoolDriver ... -lLLVMRemarks -lLLVMBitstreamReader -lLLVMBinaryFormat -lLLVMTableGen -lLLVMSupport -lLLVMDemangle This deviates from the intended behaviour, as seen on Linux, where `llvm-config --libs` returns the output shown above with the symlink. Attempting to link against the libraries shown by `llvm-config` without this fix is also leads to build failures due to missing symbols. This will also allow Julia to use brewed `llvm` instead of a vendored one. (#76527) Closes #76798. Closes #76646. Signed-off-by: Mike McQuaid <mike@mikemcquaid.com> Signed-off-by: BrewTestBot <1589480+BrewTestBot@users.noreply.github.com>
3c7c835
to
f26d4b8
Compare
Switched this back to brewed |
brew install --build-from-source <formula>
, where<formula>
is the name of the formula you're submitting?brew test <formula>
, where<formula>
is the name of the formula you're submitting?brew audit --strict <formula>
(after doingbrew install <formula>
)?This fails the audit because of thecurl
andopenlibm
dependencies. Julia seems to need alibcurl
andlibopenlibm
that live in the file system, but those don't exist on Big Sur.Note that this will also vendor its own
libLLVM
andutf8proc
. We can use brewedllvm
andutf8proc
, but this requires patches (already upstreamed). We can therefore do one of three things:llvm
andutf8proc
when those patches land in a stable release. (Might be a while though.)julia
to build with brewedllvm
andutf8proc
.Last proposed in Homebrew/legacy-homebrew#11482.