;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014, 2015, 2016, 2020 Ludovic Courtès ;;; Copyright © 2014, 2015, 2018 Mark H Weaver ;;; Copyright © 2016 Jan Nieuwenhuizen ;;; Copyright © 2016 Manolis Fragkiskos Ragkousis ;;; Copyright © 2019 Marius Bakke ;;; Copyright © 2019 Carl Dong ;;; ;;; This file is part of GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;
aboutsummaryrefslogtreecommitdiff
blob: 920e5f2358653d49258657078e5612041c385663 (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
digraph "Guix package" {
  "72851008" [label = "coreutils-8.25", shape = box, fontname = Helvetica];
  "72851008" -> "49728512" [color = darkseagreen];
  "72851008" -> "74872512" [color = darkseagreen];
  "72851008" -> "53180864" [color = darkseagreen];
  "72851008" -> "75199232" [color = darkseagreen];
  "49728512" [label = "perl-5.24.0", shape = box, fontname = Helvetica];
  "74872512" [label = "acl-2.2.52", shape = box, fontname = Helvetica];
  "74872512" -> "74873280" [color = red];
  "74872512" -> "49728512" [color = red];
  "74872512" -> "74872704" [color = red];
  "74873280" [label = "gettext-minimal-0.19.8.1", shape = box, fontname = Helvetica];
  "74873280" -> "41550784" [color = cyan3];
  "41550784" [label = "expat-2.2.0", shape = box, fontname = Helvetica];
  "74872704" [label = "attr-2.4.47", shape = box, fontname = Helvetica];
  "74872704" -> "74873280" [color = cyan3];
  "74872704" -> "49728512" [color = cyan3];
  "53180864" [label = "gmp-6.1.1", shape = box, fontname = Helvetica];
  "53180864" -> "50262784" [color = darkgoldenrod];
  "50262784" [label = "m4-1.4.17", shape = box, fontname = Helvetica];
  "75199232" [label = "libcap-2.24", shape = box, fontname = Helvetica];
  "75199232" -> "49728512" [color = blue];
  "75199232" -> "74872704" [color = blue];

}
"/crt/_mingw.h.in") (string-append mingw-headers "/crt/_mingw.h")) (substitute* (string-append mingw-headers "/crt/_mingw.h") (("@MINGW_HAS_SECURE_API@") "#define MINGW_HAS_SECURE_API 1") (("@DEFAULT_WIN32_WINNT@") "0x502") (("@DEFAULT_MSVCRT_VERSION@") "0x700")) (let ((cpath (string-append mingw-headers "/include" ":" mingw-headers "/crt" ":" mingw-headers "/defaults/include"))) (for-each (cut setenv <> cpath) (cons "CROSS_LIBRARY_PATH" %gcc-cross-include-paths)))))) (when libc (setenv "CROSS_LIBRARY_PATH" (string-append libc "/lib" ":" libc "/" target "/lib"))) (setenv "CPP" (string-append gcc "/bin/cpp")) (for-each (lambda (var) (and=> (getenv var) (lambda (value) (let* ((path (search-path-as-string->list value)) (native-path (list->search-path-as-string (remove cross? path) ":"))) (setenv var native-path))))) (cons "LIBRARY_PATH" %gcc-include-paths)) #t)) (define (install-strip . _) "Install a stripped GCC." ;; Unlike our 'strip' phase, this will do the right thing for ;; cross-compilers. (invoke "make" "install-strip")) (define* (cross-gcc-build-phases target #:optional (phases %standard-phases)) "Modify PHASES to include everything needed to build a cross-GCC for TARGET, a target triplet." (modify-phases phases (add-before 'configure 'set-cross-path ;; This mingw32 target checking logic should match that of target-mingw? ;; in (guix utils), but (guix utils) is too large too copy over to the ;; build side entirely and for now we have no way to select variables to ;; copy over. See (gnu packages cross-base) for more details. (if (string-suffix? "-mingw32" target) (cut set-cross-path/mingw #:target target <...>) set-cross-path)) (add-after 'install 'make-cross-binutils-visible (cut make-cross-binutils-visible #:target target <...>)) (replace 'install install-strip))) ;;; cross-toolchain.scm ends here