aboutsummaryrefslogtreecommitdiff
path: root/crn/packages/elf.scm
blob: 3e224a6062c8a4fdf7dd474c1e8921e59cd77371 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
(define-module (crn packages elf)
  #:use-module (guix gexp)
  #:use-module (guix utils)
  #:use-module (guix packages)
  #:use-module (gnu packages elf))

;; https://issues.guix.gnu.org/73541 by Hilton Chain
;; Newer patchelf may break binaries.  e.g. When setting RUNPATH for a Go
;; program.
;; See also: https://github.com/NixOS/patchelf/issues/482
(define-public patchelf-0.16
  (package
    (inherit patchelf)
    (name "patchelf")
    (version "0.16.1")
    (source (origin
              (method url-fetch)
              (uri (string-append
                    "https://github.com/NixOS/patchelf/releases/download/"
                    version
                    "/patchelf-" version ".tar.bz2"))
              (sha256
               (base32
                "0zdby3gpmm8q4735pviaq92zj41i2rdnhwhyrsb3sinc9hzmz4db"))))
    (arguments
     (substitute-keyword-arguments (package-arguments patchelf)
       ((#:phases phases '%standard-phases)
        #~(modify-phases #$phases
            (add-after 'fix-tests 'skip-empty-rpath-test
              (lambda _
                (substitute* "tests/set-empty-rpath.sh"
                  (("^\\$\\{SCRATCH\\}\\/simple.$") ""))))))))))