From 9b5f498deff516a9799a132fb04b40fb9ccfd7a6 Mon Sep 17 00:00:00 2001 From: Manolis Ragkousis Date: Sun, 13 Nov 2016 15:19:46 +0200 Subject: gnu: glibc-hurd: Force mach/hurd/libpthread subdirs to build first. * gnu/packages/base.scm (glibc/hurd)[arguments]: Replace 'build' phase. Co-authored-by: Ludovic Courts --- gnu/packages/base.scm | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'gnu/packages/base.scm') diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 8aa426959f..9fb8c3a56d 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -715,7 +715,21 @@ (define-public glibc/hurd ;; Use the right 'pwd'. (substitute* "configure" (("/bin/pwd") "pwd"))) - ,original-phases))) + (alist-replace + 'build + (lambda _ + ;; Force mach/hurd/libpthread subdirs to build first in order to avoid + ;; linking errors. + ;; See + (let ((-j (list "-j" (number->string (parallel-job-count))))) + (let-syntax ((make (syntax-rules () + ((_ target) + (zero? (apply system* "make" target -j)))))) + (and (make "mach/subdir_lib") + (make "hurd/subdir_lib") + (make "libpthread/subdir_lib") + (zero? (apply system* "make" -j)))))) + ,original-phases)))) ((#:configure-flags original-configure-flags) `(append (list "--host=i586-pc-gnu" -- cgit v1.2.3