[PATCH] gnu: sunxi-tools: Simplify build.

DoneSubmitted by Danny Milosavljevic.
Details
2 participants
  • Danny Milosavljevic
  • Ludovic Courtès
Owner
unassigned
Severity
normal
D
D
Danny Milosavljevic wrote on 19 Oct 2019 14:46
(address . guix-patches@gnu.org)(name . Danny Milosavljevic)(address . dannym@scratchpost.org)
20191019124616.19256-1-dannym@scratchpost.org
* gnu/packages/admin.scm (sunxi-tools-source): New procedure.(sunxi-target-tools): New variable.(sunxi-tools)[source]: Use sunxi-tools-source.[native-inputs]: Remove cross-gcc, cross-libc, cross-libc-static.Add sunxi-target-tools.[arguments]<#:make-flags>: Modify.[arguments]<#:phases>[set-environment-up]: Delete phase.[build-armhf]: Delete phase.[install]: Modify.--- gnu/packages/admin.scm | 99 ++++++++++++++++++++++-------------------- 1 file changed, 51 insertions(+), 48 deletions(-)
Toggle diff (133 lines)diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scmindex 82f1bb4eb8..3d967f185e 100644--- a/gnu/packages/admin.scm+++ b/gnu/packages/admin.scm@@ -2558,11 +2558,7 @@ Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.") ;; clause requiring us to give all recipients a copy. (license license:gpl1+))) -(define-public sunxi-tools- (package- (name "sunxi-tools")- (version "1.4.2")- (source+(define (sunxi-tools-source version) (origin (method git-fetch) (uri (git-reference@@ -2577,14 +2573,49 @@ Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.") '(begin (delete-file-recursively "bin") #t))- (file-name (git-file-name name version))))+ (file-name (git-file-name "sunxi-tools" version))))++(define sunxi-target-tools+ (package+ (name "sunxi-target-tools")+ (version "1.4.2")+ (build-system gnu-build-system)+ (source+ (sunxi-tools-source version))+ (arguments+ `(#:system "armhf-linux"+ #:tests? #f+ #:make-flags (list (string-append "PREFIX="+ (assoc-ref %outputs "out"))+ (string-append "CROSS_COMPILE=")+ "CC=gcc")+ #:phases+ (modify-phases %standard-phases+ (delete 'configure)+ (replace 'build+ (lambda* (#:key make-flags #:allow-other-keys)+ (apply invoke "make" "target-tools" make-flags)))+ (replace 'install+ (lambda* (#:key make-flags #:allow-other-keys)+ (apply invoke "make" "install-target-tools"+ make-flags))))))+ (home-page "https://github.com/linux-sunxi/sunxi-tools")+ (synopsis "Hardware management tools for Allwinner computers")+ (description "This package contains tools for Allwinner devices:+@enumerate+@item @command{sunxi-meminfo}: Prints memory bus settings.+@end enumerate")+ (license license:gpl2+)))++(define-public sunxi-tools+ (package+ (name "sunxi-tools")+ (version "1.4.2")+ (source+ (sunxi-tools-source version)) (native-inputs- `(("pkg-config" ,pkg-config)- ("cross-gcc" ,(cross-gcc "arm-linux-gnueabihf"- #:xbinutils (cross-binutils "arm-linux-gnueabihf")- #:libc (cross-libc "arm-linux-gnueabihf")))- ("cross-libc" ,(cross-libc "arm-linux-gnueabihf")) ; header files- ("cross-libc-static" ,(cross-libc "arm-linux-gnueabihf") "static")))+ `(("sunxi-target-tools" ,sunxi-target-tools)+ ("pkg-config" ,pkg-config))) (inputs `(("libusb" ,libusb))) (build-system gnu-build-system)@@ -2592,50 +2623,22 @@ 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"))- (string-append "CROSS_COMPILE="- "arm-linux-gnueabihf-")+ (string-append "CROSS_COMPILE=disabled") "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"))- (define (filter-environment! filter-predicate- environment-variable-names)- (for-each- (lambda (env-name)- (when (getenv env-name)- (let* ((env-value (getenv env-name))- (search-path (search-path-as-string->list env-value))- (new-search-path (filter filter-predicate- search-path))- (new-env-value (list->search-path-as-string- new-search-path ":")))- (setenv env-name new-env-value))))- environment-variable-names))- (setenv "CROSS_CPATH" (getenv "CPATH"))- (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"))- (filter-environment! cross?- '("CROSS_CPATH" "CROSS_C_INCLUDE_PATH" "CROSS_CPLUS_INCLUDE_PATH"- "CROSS_LIBRARY_PATH"))- (filter-environment! (lambda (e) (not (cross? e)))- '("CPATH" "C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH"- "LIBRARY_PATH"))- #t)) (replace 'build (lambda* (#:key make-flags #:allow-other-keys) (apply invoke "make" "tools" "misc" make-flags)))- (add-after 'build 'build-armhf- (lambda* (#:key make-flags #:allow-other-keys)- (setenv "LIBRARY_PATH" #f)- (apply invoke "make" "target-tools" make-flags))) (replace 'install- (lambda* (#:key make-flags #:allow-other-keys)- (apply invoke "make" "install-all" "install-misc"+ (lambda* (#:key inputs outputs make-flags #:allow-other-keys)+ ;; Those tools have been built for armhf but are part of the+ ;; installation in the upstream package. So do the same+ ;; here.+ (copy-recursively (assoc-ref inputs "sunxi-target-tools")+ (assoc-ref outputs "out"))+ (apply invoke "make" "install-tools" "install-misc" make-flags)))))) (home-page "https://github.com/linux-sunxi/sunxi-tools") (synopsis "Hardware management tools for Allwinner computers")
L
L
Ludovic Courtès wrote on 4 Dec 2019 17:53
(name . Danny Milosavljevic)(address . dannym@scratchpost.org)(address . 37823@debbugs.gnu.org)
871rtkdoc6.fsf@gnu.org
Hi Danny,
Danny Milosavljevic <dannym@scratchpost.org> skribis:
Toggle quote (10 lines)> * gnu/packages/admin.scm (sunxi-tools-source): New procedure.> (sunxi-target-tools): New variable.> (sunxi-tools)[source]: Use sunxi-tools-source.> [native-inputs]: Remove cross-gcc, cross-libc, cross-libc-static.> Add sunxi-target-tools.> [arguments]<#:make-flags>: Modify.> [arguments]<#:phases>[set-environment-up]: Delete phase.> [build-armhf]: Delete phase.> [install]: Modify.
Looks like it had fallen through the cracks, but it LGTM!
Thanks,Ludo’.
D
D
Danny Milosavljevic wrote on 4 Dec 2019 18:59
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 37823-done@debbugs.gnu.org)
20191204185958.4dbac91e@scratchpost.org
Hi,
pushed to guix master as commit 208e743415d7c36e9684851a31cc30dec16db2c3.
thanks!
-----BEGIN PGP SIGNATURE-----
iQEzBAEBCAAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAl3n9B4ACgkQ5xo1VCwwuqXBrQf/TCmRJfnLQyaazW9CADCmTI5TUlxRch+5fxus3BJc61wTyEX0p3rGmNB8qW7BNiEInLmtdSgdMdBhygtN+uZnj8wE+kx641PbzYaG2d83m7Nrr3wBafXIAnmSvOv/ag9yrX8/CK2u3xshbEI1CkSmno8RmsoSLSgQh3HTy5fiSieeQLGhYPPtm34SeBZfIg+ui5oKCpX0CI01OytQe0D9anvPcLtOkpCn63kgVL+eCVRwv90YUie9sjfuNfuyV+T33N2uonFx11m97YKQDyw+Bw4R2kH8HpQ5tY74GkMkIAhGCCy6QFYXR2IYJO/0d2ES4+XSlh7sVpBDjBNHehSpCw===nP1e-----END PGP SIGNATURE-----

Closed
?
Your comment

This issue is archived.

To comment on this conversation send email to 37823@debbugs.gnu.org