unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: gcj: Conditionally apply patch for armhf.
@ 2016-11-29 21:55 Ricardo Wurmus
  0 siblings, 0 replies; only message in thread
From: Ricardo Wurmus @ 2016-11-29 21:55 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/gcc.scm (gcj)[source]: Inherit from "gcc" package.
[native-inputs]: Conditionally add arm-patch.
[arguments]: Conditionally add phase "apply-arm-patch".
---
 gnu/packages/gcc.scm | 20 +++++++++++++++++---
 1 file changed, 17 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index 4d93317..72e2309 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -522,9 +522,6 @@ as the 'native-search-paths' field."
   (package (inherit gcc)
     (name "gcj")
     (version (package-version gcc))
-    (source (origin (inherit (package-source gcc))
-                    (patches (cons (search-patch "gcj-arm-mode.patch")
-                                   (origin-patches (package-source gcc))))))
     (inputs
      `(("fastjar" ,fastjar)
        ("perl" ,perl)
@@ -533,6 +530,15 @@ as the 'native-search-paths' field."
        ,@(package-inputs gcc)))
     (native-inputs
      `(("dejagnu" ,dejagnu)
+       ,@(if (string-prefix? "armhf" (or (%current-system)
+                                         (%current-target-system)))
+             `(("arm-patch" ,(origin
+                               (method url-fetch)
+                               (uri (search-patch "gcj-arm-mode.patch"))
+                               (sha256
+                                (base32
+                                 "1z15xs5yx6qinnb572swzxrn9f668sw7ga5280q3gznj1jyrynfn")))))
+             '())
        ,@(package-native-inputs gcc)))
     (native-search-paths %generic-search-paths)
 
@@ -560,6 +566,14 @@ as the 'native-search-paths' field."
                        ,flags))))
        ((#:phases phases)
         `(modify-phases ,phases
+           ;; Conditionally add phase to apply patch
+           ,@(if (string-prefix? "armhf" (or (%current-system)
+                                             (%current-target-system)))
+                 `((add-after 'unpack 'apply-arm-patch
+                     (lambda* (#:key inputs #:allow-other-keys)
+                       (zero? (system* "patch" "-p1"
+                                       "-i" (assoc-ref inputs "arm-patch"))))))
+                 '())
            (add-after
             'unpack 'add-lib-output-to-rpath
             (lambda _
-- 
2.10.2

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2016-11-29 21:55 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-11-29 21:55 [PATCH] gnu: gcj: Conditionally apply patch for armhf Ricardo Wurmus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).