diff mbox series

[bug#66263,v1,12/22] gnu: cross-gcc: Find AVR Libc files.

Message ID 20231128113510.11214-12-jean@foundationdevices.com
State New
Headers show
Series None | expand

Commit Message

Jean-Pierre De Jesus DIAZ Nov. 28, 2023, 11:34 a.m. UTC
* gnu/packages/cross-base.scm (cross-gcc-arguments)
  <configure-flags>: Add --with-native-system-header-dir for AVR.
  <make-flags>: Add target prefix to /lib to find AVR library.

Change-Id: Ie9cae338da241fe987f53463aa3774a890e2af9a
---
 gnu/packages/cross-base.scm | 18 ++++++++++++++++--
 1 file changed, 16 insertions(+), 2 deletions(-)
diff mbox series

Patch

diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index 5f87eec56b..58c37e43c1 100644
--- a/gnu/packages/cross-base.scm
+++ b/gnu/packages/cross-base.scm
@@ -202,21 +202,35 @@  (define (cross-gcc-arguments target xgcc libc)
 
                          #$@(if (target-avr? target)
                                 #~("--enable-multilib")
+                                #~())
+
+
+                         #$@(if (and libc (target-avr? target))
+                                #~((string-append "--with-native-system-header-dir="
+                                                  #$libc "/" #$target "/include"))
                                 #~()))
 
                    (remove
                      (lambda (flag)
                        (or (and #$libc
                                 (string-prefix? "--enable-languages" flag))
+                           (and #$libc
+                                #$(target-avr? target)
+                                (string-prefix? "--with-native-system-header-dir"
+                                                flag))
                            (and #$(target-avr? target)
                                 (string=? flag "--disable-multilib"))))
                      #$flags)))
         ((#:make-flags flags)
          (if libc
-             #~(let ((libc (assoc-ref %build-inputs "libc")))
+             #~(let ((libc (assoc-ref %build-inputs "libc"))
+                     (lib-prefix (if #$(target-avr? target)
+                                     (string-append "/" #$target)
+                                     "")))
                 ;; 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")
+                 (cons (string-append "FLAGS_FOR_TARGET=-B"
+                                      libc lib-prefix "/lib")
                        #$flags))
              flags))
         ((#:phases phases)