Do not hide libssp.dll.a (Windows import library) in private library dir#52820
Do not hide libssp.dll.a (Windows import library) in private library dir#52820vtjnash merged 3 commits intoJuliaLang:masterfrom
Conversation
|
@maleadt could you see if this works for you? |
vtjnash
left a comment
There was a problem hiding this comment.
SGTM. Since we link it explicitly, we probably need this in the build_libdir. A bit annoying to have there, but also such a tiny library we probably won't run into any issues with duplicates.
|
Err... there is more to fix here. I did not really want to do multiple copies of libssp.dll.a, but I think that is the easiest short term fix. As far as I can tell that's not really an issue on Windows because it really just wants to be able to find libssp-0.dll at the end of the day. Thus, I'm going to take a pragmatic approach and go for two of the following.
I'm leaning towards these two.
|
|
If we just have libssp.dll.a in It only looks for libssp.dll.a in |
|
If I just have libssp.dll.a just in Precompilation only looks in |
|
@vtjnash CI passes. Merge, please? |
…dir (#52820) Fix #51740 Since we are providing libssp.dll on Windows and we want to dynamically link to it, exposing libssp.dll.a is necessary. The inconsistency is that libjulia-codegen.so looks in build_libdir and build_private_libdir while standard library precompilation looks in build_shlibdir and build_private_dir. (cherry picked from commit c3836e1)
Fix #51740
The libssp.dll.a is a Windows import library
That contains the necessary information to dynamically link a DLL on Windows.
Since we are providing libssp.dll on Windows and we want to dynamically link to it, exposing libssp.dll.a is necessary.
build_libdiris the location of other *.dll.a import libraries:Edit: There seems to be some inconsistencies. I changed it to move to
build_shlibdirwhich will be the bin directory where libssp-0.dll lives.The inconsistency is that libjulia-codegen.so looks in
build_libdirandbuild_private_libdirwhile standard library precompilation looks inbuild_shlibdirandbuild_private_dir.