Skip to content
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

Avoid absolute RUNPATH to rts in GHC bindist #1131

Merged
merged 3 commits into from Oct 23, 2019
Merged

Commits on Oct 23, 2019

  1. Avoid absolute RUNPATH to rts

    The Haskell runtime library `libHSrts` comes in several flavors, e.g.
    the default `libHSrts` and the threaded version `libHSrts_thr`.
    GHC will link against one or the other, depending on whether the target
    is built with the `-threaded` compiler flag.
    
    If Bazel only tracks `libHSrts`, but GHC links against `libHSrts_thr`,
    then the Bazel controlled RUNPATH (`$ORIGIN/.../_solib_k8/...`) will not
    contain the correct runtime library, and the `cc_wrapper` will not
    remove the absolute RUNPATH `/path/to/.cache/.../lib/rts`, since it
    won't be redundant.
    
    This change extends `pkgdb_to_bzl.py` to include the `_thr` versions of
    the runtime library (and `ffi`) so that Bazel will track them and the
    `cc_wrapper` can remove the then redundant absolute RUNPATH.
    aherrmann authored and mergify-bot committed Oct 23, 2019
    Configuration menu
    Copy the full SHA
    d384097 View commit details
    Browse the repository at this point in the history
  2. Capture libraries like libffi.so.7.1.0

    aherrmann authored and mergify-bot committed Oct 23, 2019
    Configuration menu
    Copy the full SHA
    7bfd67a View commit details
    Browse the repository at this point in the history
  3. Avoid duplicate runtime and ffi libraries

    aherrmann authored and mergify-bot committed Oct 23, 2019
    Configuration menu
    Copy the full SHA
    5b55a40 View commit details
    Browse the repository at this point in the history