GNU bug report logs - #26999
[PATCH] gnu: sunxi-tools: Build armhf target tools.

Previous Next

Package: guix-patches;

Reported by: Danny Milosavljevic <dannym <at> scratchpost.org>

Date: Fri, 19 May 2017 18:48:01 UTC

Severity: normal

Tags: patch

Done: Danny Milosavljevic <dannym <at> scratchpost.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 26999 in the body.
You can then email your comments to 26999 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#26999; Package guix-patches. (Fri, 19 May 2017 18:48:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Danny Milosavljevic <dannym <at> scratchpost.org>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Fri, 19 May 2017 18:48:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Danny Milosavljevic <dannym <at> scratchpost.org>
To: guix-patches <at> gnu.org
Cc: Danny Milosavljevic <dannym <at> scratchpost.org>
Subject: [PATCH] gnu: sunxi-tools: Build armhf target tools.
Date: Fri, 19 May 2017 20:46:56 +0200
* gnu/packages/admin.scm (sunxi-tools)
[native-inputs]: Add cross-gcc, cross-libc.
[arguments]: Add "set-environment-up" phase.
Replace "build" phase.
Add "build-armhf" phase.
Update make-flags.
---
 gnu/packages/admin.scm | 35 +++++++++++++++++++++++++++++++----
 1 file changed, 31 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index aa6ccc0a7..1bee5de09 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -57,6 +57,7 @@
   #:use-module (gnu packages perl)
   #:use-module (gnu packages tcl)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages cross-base)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages bison)
@@ -1904,7 +1905,11 @@ Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.")
         '(delete-file-recursively "bin"))
        (file-name (string-append name "-" version ".tar.gz"))))
     (native-inputs
-     `(("pkg-config" ,pkg-config)))
+     `(("pkg-config" ,pkg-config)
+       ("cross-gcc" ,(cross-gcc "arm-linux-gnueabihf"
+                                (cross-binutils "arm-linux-gnueabihf")
+                                (cross-libc "arm-linux-gnueabihf")))
+       ("cross-libc" ,(cross-libc "arm-linux-gnueabihf"))))
     (inputs
      `(("libusb" ,libusb)))
     (build-system gnu-build-system)
@@ -1912,12 +1917,34 @@ Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.")
      `(#:tests? #f ; no tests exist
        #:make-flags (list (string-append "PREFIX="
                                          (assoc-ref %outputs "out"))
-                          "CROSS_COMPILE="
-                          "CC=gcc"
-                          "all")
+                          (string-append "CROSS_COMPILE="
+                                         "arm-linux-gnueabihf-")
+                          "CC=gcc")
        #:phases
        (modify-phases %standard-phases
          (delete 'configure)
+         (add-before 'build 'set-environment-up
+           (lambda* (#:key make-flags #:allow-other-keys)
+             (define (cross? x)
+               (string-contains x "cross-arm-linux"))
+             (setenv "CROSS_C_INCLUDE_PATH" (getenv "C_INCLUDE_PATH"))
+             (setenv "CROSS_CPLUS_INCLUDE_PATH" (getenv "CPLUS_INCLUDE_PATH"))
+             (setenv "CROSS_LIBRARY_PATH" (getenv "LIBRARY_PATH"))
+             (for-each
+               (lambda (env-name)
+                 (let* ((env-value (getenv env-name))
+                        (search-path (search-path-as-string->list env-value))
+                        (new-search-path (filter (lambda (e) (not (cross? e))) search-path))
+                        (new-env-value (list->search-path-as-string new-search-path ":")))
+                   (setenv env-name new-env-value)))
+               '("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH" "LIBRARY_PATH"))
+             #t))
+         (replace 'build
+           (lambda* (#:key make-flags #:allow-other-keys)
+             (zero? (apply system* "make" "tools" make-flags))))
+         (add-after 'build 'build-armhf
+           (lambda* (#:key make-flags #:allow-other-keys)
+             (zero? (apply system* "make" "target-tools" "misc" make-flags))))
          (replace 'install
            (lambda* (#:key make-flags #:allow-other-keys)
              (zero? (apply system* "make" "install-all" "install-misc"




Information forwarded to guix-patches <at> gnu.org:
bug#26999; Package guix-patches. (Fri, 19 May 2017 20:43:02 GMT) Full text and rfc822 format available.

Message #8 received at 26999 <at> debbugs.gnu.org (full text, mbox):

From: Danny Milosavljevic <dannym <at> scratchpost.org>
To: 26999 <at> debbugs.gnu.org
Cc: Danny Milosavljevic <dannym <at> scratchpost.org>
Subject: [PATCH v2] gnu: sunxi-tools: Build armhf target tools.
Date: Fri, 19 May 2017 22:42:24 +0200
* gnu/packages/admin.scm (sunxi-tools)
[native-inputs]: Add cross-gcc, cross-libc.
[arguments]: Add "set-environment-up" phase.
Replace "build" phase.
Add "build-armhf" phase.
Update make-flags.
---
 gnu/packages/admin.scm | 39 ++++++++++++++++++++++++++++++++++-----
 1 file changed, 34 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index aa6ccc0a7..8bcfe065a 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -57,6 +57,7 @@
   #:use-module (gnu packages perl)
   #:use-module (gnu packages tcl)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages cross-base)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages bison)
@@ -1904,20 +1905,48 @@ Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.")
         '(delete-file-recursively "bin"))
        (file-name (string-append name "-" version ".tar.gz"))))
     (native-inputs
-     `(("pkg-config" ,pkg-config)))
+     `(("pkg-config" ,pkg-config)
+       ("cross-gcc" ,(cross-gcc "arm-linux-gnueabihf"
+                                (cross-binutils "arm-linux-gnueabihf")
+                                (cross-libc "arm-linux-gnueabihf")))
+       ("cross-libc" ,(cross-libc "arm-linux-gnueabihf"))))
     (inputs
      `(("libusb" ,libusb)))
     (build-system gnu-build-system)
     (arguments
-     `(#:tests? #f ; no tests exist
+     `(#:tests? #f                      ; no tests exist
        #:make-flags (list (string-append "PREFIX="
                                          (assoc-ref %outputs "out"))
-                          "CROSS_COMPILE="
-                          "CC=gcc"
-                          "all")
+                          (string-append "CROSS_COMPILE="
+                                         "arm-linux-gnueabihf-")
+                          "CC=gcc")
        #:phases
        (modify-phases %standard-phases
          (delete 'configure)
+         (add-before 'build 'set-environment-up
+           (lambda* (#:key make-flags #:allow-other-keys)
+             (define (cross? x)
+               (string-contains x "cross-arm-linux"))
+             (setenv "CROSS_C_INCLUDE_PATH" (getenv "C_INCLUDE_PATH"))
+             (setenv "CROSS_CPLUS_INCLUDE_PATH" (getenv "CPLUS_INCLUDE_PATH"))
+             (setenv "CROSS_LIBRARY_PATH" (getenv "LIBRARY_PATH"))
+             (for-each
+              (lambda (env-name)
+                (let* ((env-value (getenv env-name))
+                       (search-path (search-path-as-string->list env-value))
+                       (new-search-path (filter (lambda (e) (not (cross? e)))
+                                                search-path))
+                       (new-env-value (list->search-path-as-string
+                                       new-search-path ":")))
+                  (setenv env-name new-env-value)))
+              '("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH" "LIBRARY_PATH"))
+             #t))
+         (replace 'build
+           (lambda* (#:key make-flags #:allow-other-keys)
+             (zero? (apply system* "make" "tools" "misc" make-flags))))
+         (add-after 'build 'build-armhf
+           (lambda* (#:key make-flags #:allow-other-keys)
+             (zero? (apply system* "make" "target-tools" make-flags))))
          (replace 'install
            (lambda* (#:key make-flags #:allow-other-keys)
              (zero? (apply system* "make" "install-all" "install-misc"




bug closed, send any further explanations to 26999 <at> debbugs.gnu.org and Danny Milosavljevic <dannym <at> scratchpost.org> Request was from Danny Milosavljevic <dannym <at> scratchpost.org> to control <at> debbugs.gnu.org. (Thu, 25 May 2017 11:05:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 22 Jun 2017 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 8 years ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.