guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: java-swt: Use other archive on 64-bit systems.


From: Ricardo Wurmus
Subject: Re: [PATCH] gnu: java-swt: Use other archive on 64-bit systems.
Date: Tue, 07 Jun 2016 12:43:12 +0200
User-agent: mu4e 0.9.16; emacs 24.5.1

Efraim Flashner <address@hidden> writes:

> On Mon, May 09, 2016 at 04:16:33PM +0200, Ricardo Wurmus wrote:
>> * gnu/packages/java.scm (java-swt)[source]: Use separate source archive
>>   for 64-bit systems.
>> ---
>>  gnu/packages/java.scm | 37 +++++++++++++++++++++++++++----------
>>  1 file changed, 27 insertions(+), 10 deletions(-)
>> 
>> diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
>> index 45e5683..d2a93bc 100644
>> --- a/gnu/packages/java.scm
>> +++ b/gnu/packages/java.scm
>> @@ -51,21 +51,38 @@
>>    #:use-module (gnu packages xorg)
>>    #:use-module (gnu packages zip)
>>    #:use-module (gnu packages texinfo)
>> -  #:use-module ((srfi srfi-1) #:select (fold alist-delete)))
>> +  #:use-module ((srfi srfi-1) #:select (fold alist-delete))
>> +  #:use-module (srfi srfi-11)
>> +  #:use-module (ice-9 match))
>>  
>>  (define-public java-swt
>>    (package
>>      (name "java-swt")
>>      (version "4.5")
>> -    (source (origin
>> -              (method url-fetch)
>> -              (uri (string-append
>> -                    "http://ftp-stud.fht-esslingen.de/pub/Mirrors/";
>> -                    "eclipse/eclipse/downloads/drops4/R-" version
>> -                    "-201506032000/swt-" version "-gtk-linux-x86.zip"))
>> -              (sha256
>> -               (base32
>> -                "03mhzraikcs4fsz7d3h5af9pw1bbcfd6dglsvbk2ciwimy9zj30q"))))
>> +    (source
>> +     ;; The types of many variables and procedures differ in the sources
>> +     ;; dependent on whether the target architecture is a 32-bit system or a
>> +     ;; 64-bit system.  Instead of patching the sources on demand in a build
>> +     ;; phase we download either the 32-bit archive (which mostly uses "int"
>> +     ;; types) or the 64-bit archive (which mostly uses "long" types).
>> +     (let ((hash32 "03mhzraikcs4fsz7d3h5af9pw1bbcfd6dglsvbk2ciwimy9zj30q")
>> +           (hash64 "1qq0pjll6030v4ml0hifcaaik7sx3fl7ghybfdw95vsvxafwp2ff")
>> +           (file32 "x86")
>> +           (file64 "x86_64"))
>> +       (let-values (((hash file)
>> +                     (match (or (%current-target-system) (%current-system))
>> +                       ("i686-linux"     (values hash32 file32))
>> +                       ("x86_64-linux"   (values hash64 file64))
>> +                       ("armhf-linux"    (values hash32 file32))
>> +                       ("mips64el-linux" (values hash64 file64))
>> +                       (_                (values hash32 file32)))))
>
> If the catch-all is for 32-bit then you could leave out i686 and armhf.
> With the values being x86 or x86_64, will it build on arm or mips?

I’ve pushed this after only handling the case of x86_64.  Since we only
have working JDK packages for i686 and x86_64 right now, I think this
makes sense.

Thanks for your comments!

~~ Ricardo




reply via email to

[Prev in Thread] Current Thread [Next in Thread]