diff options
author | Marius Bakke <mbakke@fastmail.com> | 2019-05-24 22:44:51 +0200 |
---|---|---|
committer | Marius Bakke <mbakke@fastmail.com> | 2019-05-24 22:44:51 +0200 |
commit | ddb4062784c66ecc0c42910b209dc80356a197ea (patch) | |
tree | d61154cfe888201707c2b4708bd6297ac371f0b0 /gnu/packages/base.scm | |
parent | 563ecba5cf1dac64818fa7c452fcb191ec28e0fd (diff) | |
parent | dbe533292b2af2faad371c10bc9b3f03193f94b7 (diff) | |
download | patches-ddb4062784c66ecc0c42910b209dc80356a197ea.tar patches-ddb4062784c66ecc0c42910b209dc80356a197ea.tar.gz |
Merge branch 'master' into staging
Diffstat (limited to 'gnu/packages/base.scm')
-rw-r--r-- | gnu/packages/base.scm | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index e33e3c52c8..a941a8f8eb 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -1009,6 +1009,29 @@ with the Linux kernel.") (("/bin/pwd") "pwd")) #t)))))))) +(define (make-gcc-libc base-gcc libc) + "Return a GCC that targets LIBC." + (package (inherit base-gcc) + (name (string-append (package-name base-gcc) "-" + (package-name libc) "-" + (package-version libc))) + (arguments + (substitute-keyword-arguments + (ensure-keyword-arguments (package-arguments base-gcc) + '(#:implicit-inputs? #f)) + ((#:make-flags flags) + `(let ((libc (assoc-ref %build-inputs "libc"))) + ;; FLAGS_FOR_TARGET are needed for the target libraries to receive + ;; the -Bxxx for the startfiles. + (cons (string-append "FLAGS_FOR_TARGET=-B" libc "/lib") + ,flags))))) + (native-inputs + `(("libc" ,libc) + ("libc:static" ,libc "static") + ,@(append (package-inputs base-gcc) + (fold alist-delete (%final-inputs) '("libc" "libc:static"))))) + (inputs '()))) + (define-public (make-glibc-locales glibc) (package (inherit glibc) |