diff options
author | Leo Famulari <leo@famulari.name> | 2017-01-06 17:14:41 -0500 |
---|---|---|
committer | Leo Famulari <leo@famulari.name> | 2017-01-06 17:14:41 -0500 |
commit | 74288230ea8b2310495dc2739f39ceadcc143fd0 (patch) | |
tree | 73ba6c7c13d59c5f92b409c94dccfff159e08f4d /build-aux | |
parent | 92e779592d269ca1924f184496eb4ca832997b12 (diff) | |
parent | aa21c764d65068783ae31febee2a92eb3d138a24 (diff) | |
download | guix-74288230ea8b2310495dc2739f39ceadcc143fd0.tar guix-74288230ea8b2310495dc2739f39ceadcc143fd0.tar.gz |
Merge branch 'master' into core-updates
Diffstat (limited to 'build-aux')
-rw-r--r-- | build-aux/build-self.scm | 7 | ||||
-rw-r--r-- | build-aux/check-final-inputs-self-contained.scm | 7 | ||||
-rw-r--r-- | build-aux/hydra/demo-os.scm | 84 | ||||
-rw-r--r-- | build-aux/hydra/gnu-system.scm | 33 |
4 files changed, 26 insertions, 105 deletions
diff --git a/build-aux/build-self.scm b/build-aux/build-self.scm index 485f91b4c0..cc702490df 100644 --- a/build-aux/build-self.scm +++ b/build-aux/build-self.scm @@ -114,6 +114,13 @@ files." (string-append #$guile-ssh "/lib/guile/2.0/site-ccache") %load-compiled-path))) + ;; XXX: The 'guile-ssh' package prior to Guix commit 92b7258 was + ;; broken: libguile-ssh could not be found. Work around that. + ;; FIXME: We want Guile-SSH 0.10.2 or later anyway. + #$(if (string-prefix? "0.9." (package-version guile-ssh)) + #~(setenv "LTDL_LIBRARY_PATH" (string-append #$guile-ssh "/lib")) + #t) + (build-guix #$output #$source #:system #$%system diff --git a/build-aux/check-final-inputs-self-contained.scm b/build-aux/check-final-inputs-self-contained.scm index 255286be29..dc44c4b636 100644 --- a/build-aux/check-final-inputs-self-contained.scm +++ b/build-aux/check-final-inputs-self-contained.scm @@ -37,12 +37,17 @@ (let ((drv (package-derivation store package system))) ;; Libc's 'debug' output refers to gcc-cross-boot0, but it's ;; hard to avoid, so we tolerate it. This should be the - ;; only exception. + ;; only exception. Likewise, 'bash:include' depends on + ;; bootstrap-binaries via its 'Makefile.inc' (FIXME). (filter-map (match-lambda (("debug" . directory) (if (string=? "glibc" (package-name package)) #f directory)) + (("include" . directory) + (if (string=? "bash" (package-name package)) + #f + directory)) ((_ . directory) directory)) (derivation->output-paths drv))))) %final-inputs)) diff --git a/build-aux/hydra/demo-os.scm b/build-aux/hydra/demo-os.scm deleted file mode 100644 index d933bc8b25..0000000000 --- a/build-aux/hydra/demo-os.scm +++ /dev/null @@ -1,84 +0,0 @@ -;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org> -;;; -;;; This file is part of GNU Guix. -;;; -;;; GNU Guix is free software; you can redistribute it and/or modify it -;;; under the terms of the GNU General Public License as published by -;;; the Free Software Foundation; either version 3 of the License, or (at -;;; your option) any later version. -;;; -;;; GNU Guix is distributed in the hope that it will be useful, but -;;; WITHOUT ANY WARRANTY; without even the implied warranty of -;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;;; GNU General Public License for more details. -;;; -;;; You should have received a copy of the GNU General Public License -;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. - - -;;; -;;; This file defines an operating system configuration for the demo virtual -;;; machine images that we build. -;;; - -(use-modules (gnu)) -(use-service-modules desktop xorg networking avahi dbus) -(use-package-modules linux xorg tor avahi) - -(operating-system - (host-name "gnu") - (timezone "Europe/Paris") - (locale "en_US.utf8") - - (bootloader (grub-configuration - (device "/dev/sda"))) - (file-systems - ;; We provide a dummy file system for /, but that's OK because the VM build - ;; code will automatically declare the / file system for us. - (cons* (file-system - (mount-point "/") - (device "dummy") - (type "dummy")) - ;; %fuse-control-file-system ; needs fuse.ko - ;; %binary-format-file-system ; needs binfmt.ko - %base-file-systems)) - - (users (list (user-account - (name "guest") - (group "users") - (supplementary-groups '("wheel")) ; allow use of sudo - (password "") - (comment "Guest of GNU") - (home-directory "/home/guest")))) - - (issue " -This is an alpha preview of the GNU system. Welcome. - -This image features the GNU Guix package manager, which was used to -build it (http://www.gnu.org/software/guix/). The init system is -the GNU Shepherd (http://www.gnu.org/software/shepherd/). - -You can log in as 'guest' or 'root' with no password. -") - - (services (cons* (slim-service #:auto-login? #t - #:default-user "guest") - - ;; QEMU networking settings. - (static-networking-service "eth0" "10.0.2.10" - #:name-servers '("10.0.2.3") - #:gateway "10.0.2.2") - - (avahi-service) - (dbus-service) - (tor-service) - - %base-services)) - (pam-services - ;; Explicitly allow for empty passwords. - (base-pam-services #:allow-empty-passwords? #t)) - - (packages (cons* strace - tor torsocks - xterm avahi %base-packages))) diff --git a/build-aux/hydra/gnu-system.scm b/build-aux/hydra/gnu-system.scm index 10e0f89c4c..f5a37a2ca4 100644 --- a/build-aux/hydra/gnu-system.scm +++ b/build-aux/hydra/gnu-system.scm @@ -54,7 +54,6 @@ (gnu packages compression) (gnu packages multiprecision) (gnu packages make-bootstrap) - (gnu packages commencement) (gnu packages package-management) (gnu system) (gnu system vm) @@ -112,7 +111,7 @@ SYSTEM." gawk gnu-gettext hello guile-2.0 zlib gzip xz %bootstrap-binaries-tarball %binutils-bootstrap-tarball - %glibc-bootstrap-tarball + (%glibc-bootstrap-tarball) %gcc-bootstrap-tarball %guile-bootstrap-tarball %bootstrap-tarballs)) @@ -124,14 +123,9 @@ SYSTEM." '("mips64el-linux-gnu" "mips64el-linux-gnuabi64" "arm-linux-gnueabihf" + "i686-w64-mingw32" "powerpc-linux-gnu")) -(define (demo-os) - "Return the \"demo\" 'operating-system' structure." - (let* ((dir (dirname (assoc-ref (current-source-location) 'filename))) - (file (string-append dir "/demo-os.scm"))) - (read-operating-system file))) - (define %guixsd-supported-systems '("x86_64-linux" "i686-linux")) @@ -157,14 +151,7 @@ system.") (expt 2 20)) (if (member system %guixsd-supported-systems) - (list (->job 'qemu-image - (run-with-store store - (mbegin %store-monad - (set-guile-for-build (default-guile)) - (system-qemu-image (demo-os) - #:disk-image-size - (* 1400 MiB))))) ; 1.4 GiB - (->job 'usb-image + (list (->job 'usb-image (run-with-store store (mbegin %store-monad (set-guile-for-build (default-guile)) @@ -241,7 +228,7 @@ all its dependencies, and ready to be installed on non-GuixSD distributions.") (match (package-transitive-inputs package) (((_ inputs _ ...) ...) inputs)))) - %final-inputs)))) + (%final-inputs))))) (lambda (store package system) "Return a job for PACKAGE on SYSTEM, or #f if this combination is not valid." @@ -279,16 +266,22 @@ valid." ;; 'mips64el-linux'. (string-contains target system)) - (define (either proc1 proc2) + (define (pointless? target) + ;; Return #t if it makes no sense to cross-build to TARGET from SYSTEM. + (and (string-contains target "mingw") + (not (string=? "x86_64-linux" system)))) + + (define (either proc1 proc2 proc3) (lambda (x) - (or (proc1 x) (proc2 x)))) + (or (proc1 x) (proc2 x) (proc3 x)))) (append-map (lambda (target) (map (lambda (package) (package-cross-job store (job-name package) package target system)) %packages-to-cross-build)) - (remove (either from-32-to-64? same?) %cross-targets))) + (remove (either from-32-to-64? same? pointless?) + %cross-targets))) ;; Turn off grafts. Grafting is meant to happen on the user's machines. (parameterize ((%graft? #f)) |