summary refs log tree commit diff
path: root/gnu/packages/virtualization.scm
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2021-03-16 14:20:39 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2021-03-16 16:21:28 -0400
commit15423d38c57d04bc1bbc70c7bd79eaf8cf82d513 (patch)
treeee76bfc72b81035b20b7cfa9754553081f8419b2 /gnu/packages/virtualization.scm
parentf4259f93ea6ecb5fa0e2e27697708499af18233f (diff)
downloadguix-15423d38c57d04bc1bbc70c7bd79eaf8cf82d513.tar.gz
gnu: qemu: Enable reproducible builds.
Fixes <https://issues.guix.gnu.org/47176>.  The solution was suggested by
bonzini on OFTC's #qemu channel.

* gnu/packages/virtualization.scm (qemu)[snippet]: Delete bundled meson copy.
[native-inputs]: Add meson-next.
Diffstat (limited to 'gnu/packages/virtualization.scm')
-rw-r--r--gnu/packages/virtualization.scm7
1 files changed, 6 insertions, 1 deletions
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 0558861173..fabac5b984 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -43,6 +43,7 @@
   #:use-module (gnu packages backup)
   #:use-module (gnu packages base)
   #:use-module (gnu packages bison)
+  #:use-module (gnu packages build-tools)
   #:use-module (gnu packages check)
   #:use-module (gnu packages cmake)
   #:use-module (gnu packages compression)
@@ -162,7 +163,9 @@
                              "{ MK_STRUCT(STRUCT_ifmap_ifreq) };\n"))
              (("^([[:blank:]]*)target_ifreq_size[[:blank:]]=.*$" _ indent)
               (string-append indent "target_ifreq_size = "
-                             "thunk_type_size(ifreq_max_type, 0);")))))))
+                             "thunk_type_size(ifreq_max_type, 0);")))
+           ;; Delete the bundled meson copy.
+           (delete-file-recursively "meson")))))
     (outputs '("out" "static" "doc"))   ;5.3 MiB of HTML docs
     (build-system gnu-build-system)
     (arguments
@@ -351,6 +354,8 @@ exec smbd $@")))
                      ("perl" ,perl)
                      ("flex" ,flex)
                      ("bison" ,bison)
+                     ;; Using meson 0.57.1 enables reproducible QEMU builds.
+                     ("meson" ,meson-next)
                      ("ninja" ,ninja)
                      ("pkg-config" ,pkg-config)
                      ("python-wrapper" ,python-wrapper)