Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NixOS/nixpkgs
base: 611eefb06754
Choose a base ref
...
head repository: NixOS/nixpkgs
compare: 18f517fbd626
Choose a head ref
  • 1 commit
  • 2 files changed
  • 1 contributor

Commits on Jul 24, 2018

  1. Enable new dtags in a way that works with binutils 2.30.

    In 3027bca, binutils was upgraded from 2.28.1 to 2.30. However, in 2.30,
    the ldmain.c file within binutils, which the nixpkgs new-dtags.patch
    file is meant to modify, was changed in such a way that the patch no
    longer works. As a result, the new dtags are not actually enabled, and
    binaries are built with RPATH set instead of RUNPATH, thereby preventing
    LD_LIBRARY_PATH from overriding this built-in path. This change corrects
    this. The patch file is no longer necessary because binutils's ldmain.c
    now sets link_info.new_dtags based on the configuration flags.
    
    This was probably not noticed immediately because, when the derivation
    is built with nix-build, the fixupPhase runs patchelf --shrink-rpath.
    patchelf converts any RPATH in the binary into RUNPATH (unless
    --force-rpath is specified).  Of course, if the binary is built without
    nix-build (such as in a nix-shell), this never occurs, and any RPATH in
    the binary is left in place.
    Rotaerk authored and dezgeg committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    18f517f View commit details
    Browse the repository at this point in the history