diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 849ec13fde..521cb68876 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -1075,11 +1075,18 @@ (define (linker-script? file) ,@(if (target-hurd?) '((add-after 'install 'augment-libc.so (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out"))) + (let ((out (assoc-ref outputs "out"))) (substitute* (string-append out "/lib/libc.so") (("/[^ ]+/lib/libc.so.0.3") (string-append out "/lib/libc.so.0.3" - " libmachuser.so libhurduser.so"))))))) + " libmachuser.so libhurduser.so")))))) + (add-after 'install 'create-machine-symlink + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (cpu "i386")) + (symlink cpu + (string-append out + "/include/mach/machine")))))) '())))) (inputs `(("static-bash" ,static-bash))) diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm index af5fe739a1..6c524f3a53 100644 --- a/gnu/packages/cross-base.scm +++ b/gnu/packages/cross-base.scm @@ -742,12 +742,18 @@ (define cross-binutils ,@(if (target-hurd? target) '((add-after 'install 'augment-libc.so (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out"))) + (let ((out (assoc-ref outputs "out"))) (substitute* (string-append out "/lib/libc.so") (("/[^ ]+/lib/libc.so.0.3") (string-append out "/lib/libc.so.0.3" - " libmachuser.so libhurduser.so")))) - #t))) + " libmachuser.so libhurduser.so")))))) + (add-after 'install 'create-machine-symlink + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (cpu "i386")) + (symlink cpu + (string-append out + "/include/mach/machine")))))) '()))))) ;; Shadow the native "kernel-headers" because glibc's recipe expects the