~ruther/guix-local

c10851cf912d60d18d79badbbefe85c2d21081f9 — Leo Famulari 8 years ago 1c37f83
build-system/go: Parameterize installing the source code.

* guix/build-system/go.scm (go-build): Add install-source? key.
* guix/build/go-build-system.scm (install-source): Check if
install-source? is true.
2 files changed, 6 insertions(+), 3 deletions(-)

M guix/build-system/go.scm
M guix/build/go-build-system.scm
M guix/build-system/go.scm => guix/build-system/go.scm +2 -0
@@ 78,6 78,7 @@
                               %standard-phases))
                   (outputs '("out"))
                   (search-paths '())
                   (install-source? #t)
                   (import-path "")
                   (unpack-path "")
                   (tests? #t)


@@ 102,6 103,7 @@
                #:outputs %outputs
                #:search-paths ',(map search-path-specification->sexp
                                      search-paths)
                #:install-source? ,install-source?
                #:import-path ,import-path
                #:unpack-path ,unpack-path
                #:tests? ,tests?

M guix/build/go-build-system.scm => guix/build/go-build-system.scm +4 -3
@@ 126,13 126,14 @@ unset.  When SOURCE is a directory, copy it instead of unpacking."
        (zero? (system* "unzip" "-d" dest source))
        (zero? (system* "tar" "-C" dest "-xvf" source))))))

(define* (install-source #:key outputs #:allow-other-keys)
(define* (install-source #:key install-source? outputs #:allow-other-keys)
  "Install the source code to the output directory."
  (let* ((out (assoc-ref outputs "out"))
         (source "src")
         (dest (string-append out "/" source)))
    (copy-recursively source dest #:keep-mtime? #t)
    #t))
    (if install-source?
      (copy-recursively source dest #:keep-mtime? #t)
      #t)))

(define (go-package? name)
  (string-prefix? "go-" name))