Skip to content

Darwin builds end up with build directory in RPATH

The RPATH for the 8.10.5 release contains many paths into the build directory.

otool -l ...
....
Load command 61
          cmd LC_RPATH
      cmdsize 96
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/compiler/stage2/build (offset 12)
Load command 62
          cmd LC_RPATH
      cmdsize 104
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/libraries/base/dist-install/build (offset 12)
Load command 63
          cmd LC_RPATH
      cmdsize 112
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/libraries/bytestring/dist-install/build (offset 12)
Load command 64
          cmd LC_RPATH
      cmdsize 120
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/libraries/containers/containers/dist-install/build (offset 12)
Load command 65
          cmd LC_RPATH
      cmdsize 112
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/libraries/directory/dist-install/build (offset 12)
Load command 66
          cmd LC_RPATH
      cmdsize 112
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/libraries/exceptions/dist-install/build (offset 12)
Load command 67
          cmd LC_RPATH
      cmdsize 112
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/libraries/filepath/dist-install/build (offset 12)
Load command 68
          cmd LC_RPATH
      cmdsize 112
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/libraries/ghc-boot-th/dist-install/build (offset 12)
Load command 69
          cmd LC_RPATH
      cmdsize 112
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/libraries/ghc-boot/dist-install/build (offset 12)
Load command 70
          cmd LC_RPATH
      cmdsize 112
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/libraries/ghc-prim/dist-install/build (offset 12)
Load command 71
          cmd LC_RPATH
      cmdsize 104
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/libraries/ghci/dist-install/build (offset 12)
Load command 72
          cmd LC_RPATH
      cmdsize 112
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/libraries/haskeline/dist-install/build (offset 12)
Load command 73
          cmd LC_RPATH
      cmdsize 112
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/libraries/integer-gmp/dist-install/build (offset 12)
Load command 74
          cmd LC_RPATH
      cmdsize 112
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/libraries/process/dist-install/build (offset 12)
Load command 75
          cmd LC_RPATH
      cmdsize 104
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/libraries/time/dist-install/build (offset 12)
Load command 76
          cmd LC_RPATH
      cmdsize 112
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/libraries/transformers/dist-install/build (offset 12)
Load command 77
          cmd LC_RPATH
      cmdsize 104
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/libraries/unix/dist-install/build (offset 12)
Load command 78
          cmd LC_RPATH
      cmdsize 88
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/rts/dist/build (offset 12)

A more recently built bindist (from HEAD) is not as bad (from !5992 (closed)) .. but still has one runner path.

Load command 35
          cmd LC_RPATH
      cmdsize 128
         path /private/var/lib/gitlab-runner/builds/3Nzv6pEP/0/ghc/ghc/_build/stage1/lib/../lib/x86_64-osx-ghc-9.3.20210616 (offset 12)
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information