diff options
author | Marius Bakke <mbakke@fastmail.com> | 2019-03-23 23:16:55 +0100 |
---|---|---|
committer | Marius Bakke <mbakke@fastmail.com> | 2019-03-23 23:16:55 +0100 |
commit | 8c14f7f8a7ab0722bf4c9f92fd28ae85514d564f (patch) | |
tree | adc5d29e9c2dcda5befa0ca81f1af8df23294947 /guix/build-system/meson.scm | |
parent | 2f33a7321e5e37d37f57c229c8079cb4ffd10834 (diff) | |
parent | 3374e9207f5244c20402a3c5513fe562140fef47 (diff) | |
download | guix-patches-8c14f7f8a7ab0722bf4c9f92fd28ae85514d564f.tar guix-patches-8c14f7f8a7ab0722bf4c9f92fd28ae85514d564f.tar.gz |
Merge branch 'staging' into core-updates
Diffstat (limited to 'guix/build-system/meson.scm')
-rw-r--r-- | guix/build-system/meson.scm | 30 |
1 files changed, 27 insertions, 3 deletions
diff --git a/guix/build-system/meson.scm b/guix/build-system/meson.scm index 8d49020454..370d185545 100644 --- a/guix/build-system/meson.scm +++ b/guix/build-system/meson.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017 Peter Mikkelsen <petermikkelsen10@gmail.com> -;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2018, 2019 Marius Bakke <mbakke@fastmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -109,9 +109,25 @@ (system (%current-system)) (imported-modules %meson-build-system-modules) (modules '((guix build meson-build-system) - (guix build utils)))) + (guix build utils))) + allowed-references + disallowed-references) "Build SOURCE using MESON, and with INPUTS, assuming that SOURCE has a 'meson.build' file." + + ;; TODO: Copied from build-system/gnu, factorize this! + (define canonicalize-reference + (match-lambda + ((? package? p) + (derivation->output-path (package-derivation store p system + #:graft? #f))) + (((? package? p) output) + (derivation->output-path (package-derivation store p system + #:graft? #f) + output)) + ((? string? output) + output))) + (define builder `(let ((build-phases (if ,glib-or-gtk? ,phases @@ -159,7 +175,15 @@ has a 'meson.build' file." #:inputs inputs #:modules imported-modules #:outputs outputs - #:guile-for-build guile-for-build)) + #:guile-for-build guile-for-build + #:allowed-references + (and allowed-references + (map canonicalize-reference + allowed-references)) + #:disallowed-references + (and disallowed-references + (map canonicalize-reference + disallowed-references)))) (define meson-build-system (build-system |