summaryrefslogtreecommitdiff
path: root/guix
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2017-12-07 18:26:11 +0100
committerMarius Bakke <mbakke@fastmail.com>2017-12-07 18:26:11 +0100
commit9e111db4535b3cd5729e37294ae51d95240334b4 (patch)
treecc90a9de80ff39bd93426b763918d904abfeeb56 /guix
parent92b61d3e1bb50f0c1d087bc8d57cc00c3ce360df (diff)
parentcf69135d5e6797e566b8bb18419ae9e3c8aeb621 (diff)
Merge branch 'master' into core-updates
Diffstat (limited to 'guix')
-rw-r--r--guix/build/syscalls.scm19
-rw-r--r--guix/packages.scm20
2 files changed, 31 insertions, 8 deletions
diff --git a/guix/build/syscalls.scm b/guix/build/syscalls.scm
index e5779cbd0b..0cb630cfb3 100644
--- a/guix/build/syscalls.scm
+++ b/guix/build/syscalls.scm
@@ -119,6 +119,7 @@
termios-input-speed
termios-output-speed
local-flags
+ input-flags
tcsetattr-action
tcgetattr
tcsetattr
@@ -1704,6 +1705,24 @@ given an integer, returns the list of names of the constants that are or'd."
(define IEXTEN #o0100000)
(define EXTPROC #o0200000))
+(define-bits input-flags
+ input-flags->symbols
+ (define IGNBRK #o0000001)
+ (define BRKINT #o0000002)
+ (define IGNPAR #o0000004)
+ (define PARMRK #o0000010)
+ (define INPCK #o0000020)
+ (define ISTRIP #o0000040)
+ (define INLCR #o0000100)
+ (define IGNCR #o0000200)
+ (define ICRNL #o0000400)
+ (define IUCLC #o0001000)
+ (define IXON #o0002000)
+ (define IXANY #o0004000)
+ (define IXOFF #o0010000)
+ (define IMAXBEL #o0020000)
+ (define IUTF8 #o0040000))
+
;; "Actions" values for 'tcsetattr'.
(define-bits tcsetattr-action
%unused-tcsetattr-action->symbols
diff --git a/guix/packages.scm b/guix/packages.scm
index d3f3cf0fdd..9571565e17 100644
--- a/guix/packages.scm
+++ b/guix/packages.scm
@@ -997,14 +997,18 @@ and return it."
"Fold PROC over the packages BAG depends on. Each package is visited only
once, in depth-first order. If NATIVE? is true, restrict to native
dependencies; otherwise, restrict to target dependencies."
+ (define bag-direct-inputs*
+ (if native?
+ (lambda (bag)
+ (append (bag-build-inputs bag)
+ (bag-target-inputs bag)
+ (if (bag-target bag)
+ '()
+ (bag-host-inputs bag))))
+ bag-host-inputs))
+
(define nodes
- (match (if native?
- (append (bag-build-inputs bag)
- (bag-target-inputs bag)
- (if (bag-target bag)
- '()
- (bag-host-inputs bag)))
- (bag-host-inputs bag))
+ (match (bag-direct-inputs* bag)
(((labels things _ ...) ...)
things)))
@@ -1017,7 +1021,7 @@ dependencies; otherwise, restrict to target dependencies."
(((? package? head) . tail)
(if (set-contains? visited head)
(loop tail result visited)
- (let ((inputs (bag-direct-inputs (package->bag head))))
+ (let ((inputs (bag-direct-inputs* (package->bag head))))
(loop (match inputs
(((labels things _ ...) ...)
(append things tail)))