Conversation
|
This is a step in the direction of #55478 |
| const LIBPATH = Ref("") | ||
| const LIBPATH_list = String[] | ||
| artifact_dir::String = "" | ||
| libcurl_handle::Ptr{Cvoid} = C_NULL |
There was a problem hiding this comment.
One thing I'm slightly worried about with this move is that we lose the handle. Some time ago I wanted to use the libblastrampoline handle in a package, and realised that's gone, so I resorted to dlopening libblastrampoline again. Rest looks good to me
There was a problem hiding this comment.
I agree that it is a slight change in internal API but I think it’s worth it, so that all users of handle-based operations must flow through the dlopen interface to allow for lazy loading
b28bb8d to
06dd161
Compare
|
Have we figured out LazyLibrary/Juliac interop? |
This converts more JLL stdlibs to use lazily-loaded libraries, and as a useful side-effect, causes them to be loaded by absolute path, isolating them all from `LD_LIBRARY_PATH`-like effects.
06dd161 to
0eca8c5
Compare
|
|
|
Is there a reason this doesn't include |
|
No reason, I will get them all eventually, or you can try your hand at it! It's pretty mechanical, the only part that requires any thought is filling out the dependencies arrays. |
|
Gave it a go here #58444 |
This converts more JLL stdlibs to use lazily-loaded libraries, and as a useful side-effect, causes them to be loaded by absolute path, isolating them all from
LD_LIBRARY_PATH-like effects.