~ruther/guix-local

5fbeb4e6e19856678fa78ee7878e90411d718598 — Ludovic Courtès 12 years ago 1d9bc45
gnu: bootstrap: Use the bootstrap tools for <origin> patching.

* gnu/packages/bootstrap.scm (bootstrap-origin): Override the
  'patch-guile' and 'patch-inputs' fields of SOURCE.
1 files changed, 11 insertions(+), 1 deletions(-)

M gnu/packages/bootstrap.scm
M gnu/packages/bootstrap.scm => gnu/packages/bootstrap.scm +11 -1
@@ 64,11 64,21 @@
             #:guile %bootstrap-guile
             #:system system)))

  (define %bootstrap-patch-inputs
    ;; Packages used when an <origin> has a non-empty 'patches' field.
    `(("tar"   ,%bootstrap-coreutils&co)
      ("xz"    ,%bootstrap-coreutils&co)
      ("bzip2" ,%bootstrap-coreutils&co)
      ("gzip"  ,%bootstrap-coreutils&co)
      ("patch" ,%bootstrap-coreutils&co)))

  (let ((orig-method (origin-method source)))
    (origin (inherit source)
      (method (cond ((eq? orig-method url-fetch)
                     (boot url-fetch))
                    (else orig-method))))))
                    (else orig-method)))
      (patch-guile %bootstrap-guile)
      (patch-inputs %bootstrap-patch-inputs))))

(define (package-from-tarball name* source* program-to-test description*)
  "Return a package that correspond to the extraction of SOURCE*.