-
Notifications
You must be signed in to change notification settings - Fork 701
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
Enable Cabal's own RPATH handling on *BSD and Solaris #7382
base: master
Are you sure you want to change the base?
Enable Cabal's own RPATH handling on *BSD and Solaris #7382
Conversation
Cabal is confirmed to be capable of handling RPATH on these platforms.
ef5b99c
to
bea9453
Compare
@depressed-pho but do we want cabal to handle rpath logic? Or do we want GHC to handle rpath logic? At least on Darwin there is a strong case to be made for GHC to handle rpath logic, as ghc can control the linking more precisely. If cabal passes |
We do want Cabal to handle it. Suppose we have a Cabal package which defines a library, and also an executable that depending on the library. Without Cabal's rpath logic, GHC would link the executable with an rpath pointing at the build directory, not the final destination where the library is going to be installed. This is because GHC doesn't know that the library will be placed somewhere else, and only Cabal knows that (and correctly handles that for Linux atm). |
Fair, but in that case Cabal needs to replicate the stripping and post link fixup logic GHC currently has; which to me does not seem very elegant, especially as cabal than needs to keep up to date what is fixed in ghc. This might be an ELF / MachO issue, but I would believe that |
Marking this PR as draft 🙂 |
Cabal is confirmed to be capable of handling RPATH on these platforms.
Please include the following checklist in your PR: