summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/guix.texi4
-rw-r--r--guix/scripts/environment.scm9
2 files changed, 12 insertions, 1 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index ccccf7b347..71167dfdc7 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -4219,6 +4219,10 @@ only contain package inputs.
@item --search-paths
Display the environment variable definitions that make up the
environment.
+
+@item --system=@var{system}
+@itemx -s @var{system}
+Attempt to build for @var{system}---e.g., @code{i686-linux}.
@end table
It also supports all of the common build options that @command{guix
diff --git a/guix/scripts/environment.scm b/guix/scripts/environment.scm
index e2ac086f6d..7a7664a1ea 100644
--- a/guix/scripts/environment.scm
+++ b/guix/scripts/environment.scm
@@ -115,6 +115,8 @@ shell command in that environment.\n"))
--pure unset existing environment variables"))
(display (_ "
--search-paths display needed environment variable definitions"))
+ (display (_ "
+ -s, --system=SYSTEM attempt to build for SYSTEM--e.g., \"i686-linux\""))
(newline)
(show-build-options-help)
(newline)
@@ -128,6 +130,7 @@ shell command in that environment.\n"))
(define %default-options
;; Default to opening a new shell.
`((exec . ,(or (getenv "SHELL") "/bin/sh"))
+ (system . ,(%current-system))
(substitutes? . #t)
(max-silent-time . 3600)
(verbosity . 0)))
@@ -162,6 +165,10 @@ shell command in that environment.\n"))
(option '(#\n "dry-run") #f #f
(lambda (opt name arg result)
(alist-cons 'dry-run? #t result)))
+ (option '(#\s "system") #t #f
+ (lambda (opt name arg result)
+ (alist-cons 'system arg
+ (alist-delete 'system result eq?))))
%standard-build-options))
(define (pick-all alist key)
@@ -243,7 +250,7 @@ OUTPUT) tuples, using the build options in OPTS."
((label item output)
(list item output)))
inputs)
- #:system (%current-system))))
+ #:system (assoc-ref opts 'system))))
(mbegin %store-monad
;; First build INPUTS. This is necessary even for
;; --search-paths.