Install 7z, lld and dsymutils to private libexec/julia directory#48931
Install 7z, lld and dsymutils to private libexec/julia directory#48931
Conversation
Installing files directly into /usr/libexec pollutes the install tree and can create conflicts if other apps do the same. Instead, install them to `private_libdir`, which defaults to `$(libexecdir)/julia`. This is similar to what we do with `private_libdir`.
staticfloat
left a comment
There was a problem hiding this comment.
This sounds good to me! Note that we'll be breaking the ability to run lld without setting environment variables for it, since it has an internal RPATH of $ORIGIN/../lib; it would be nice to change that to $ORIGIN/../../lib on Linux/FreeBSD. I don't think it's strictly necessary though, as we must provide the environment variables on Windows anyway, so we'll be providing them no matter what.
|
Good catch @inkydragon. I've pushed a commit, looks like it should fix the CI failures. @staticfloat Indeed. I don't have an opinion on whether updating RPATH would be worth the increased complexity. Wasn't the current approach incorrect in general anyway, since it assumes that |
) * Install 7z, lld, dsymutil to private libexec/julia directory Installing files directly into /usr/libexec pollutes the install tree and can create conflicts if other apps do the same. Instead, install them to `private_libdir`, which defaults to `$(libexecdir)/julia`. This is similar to what we do with `private_libdir`. (cherry picked from commit eb2e968)
…iaLang#48931) * Install 7z, lld, dsymutil to private libexec/julia directory Installing files directly into /usr/libexec pollutes the install tree and can create conflicts if other apps do the same. Instead, install them to `private_libdir`, which defaults to `$(libexecdir)/julia`. This is similar to what we do with `private_libdir`.
CMake.jl is currently broken on 1.9 because the location of 7z.exe changed: - JuliaPackaging/CMake.jl#23 - JuliaLang/julia#48931 - JuliaInterop#458 (comment)
CMake.jl is currently broken on 1.9 because the location of 7z.exe changed: - JuliaPackaging/CMake.jl#23 - JuliaLang/julia#48931 - JuliaInterop#458 (comment)
CMake.jl is currently broken on 1.9 because the location of 7z.exe changed: - JuliaPackaging/CMake.jl#23 - JuliaLang/julia#48931 - #458 (comment)
Installing files directly into /usr/libexec pollutes the install tree and can create conflicts if other apps do the same. Instead, install them to
private_libdir, which defaults to$(libexecdir)/julia. This is similar to what we do withprivate_libdir.See #43005 (comment). I need this to build the RPM package as the Julia package isn't allowed to install lld in shared system directories.