Subject: [bug#28663] [PATCH 03/22] gnu: Add java-microemulator.

From: julien lepiller <[email-masked]>
Date: Tue, 03 Oct 2017 10:27:05 +0200

Le 2017-10-03 09:54, Roel Janssen a écrit :
> [email-masked] writes:
> 
>> From: Julien Lepiller <[email-masked]>
>> 
>> * gnu/packages/java.scm (java-microemulator): New variable.
>> ---
>>  gnu/packages/java.scm | 58 
>> +++++++++++++++++++++++++++++++++++++++++++++++++++
>>  1 file changed, 58 insertions(+)
>> 
>> diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
>> index 806f13ab8..6973840c1 100644
>> --- a/gnu/packages/java.scm
>> +++ b/gnu/packages/java.scm
>> @@ -4716,3 +4716,61 @@ complex transformations and code analysis 
>> tools.")
>>               #t)))))
>>      (native-inputs
>>       `(("java-junit" ,java-junit)))))
>> +
>> +(define java-asm-old
>> +  (package
>> +    (inherit java-asm)
>> +    (version "3.3.1")
>> +    (source (origin
>> +              (method url-fetch)
>> +              (uri (string-append 
>> "http://download.forge.ow2.org/asm/asm-"
>> +                                  version ".tar.gz"))
>> +              (sha256
>> +               (base32
>> +                
>> "1xcp06wbqqq4jm93pafjw5jc08vy30qiw9s7kff9gmw23ka279b9"))))))
>> +
>> +;; FIXME: This is an old project, and the sourceforge page says it 
>> moved to
>> +;; googlecode, which is dead...
> 
> It looks like it's on Github now:
> https://github.com/barteo/microemu
> 
> The last commit there was in May 2013, while the last commit on
> Sourceforge was in November 2009.
> 
>> +(define-public java-microemulator
>> +  (package
>> +    (name "java-microemulator")
>> +    (version "2.0.4")
>> +    (source (origin
>> +              (method url-fetch)
>> +              (uri (string-append 
>> "mirror://sourceforge/microemulator/microemulator/"
>> +                                  version "/microemulator-" version 
>> ".zip"))
>> +              (sha256
>> +               (base32
>> +                
>> "0x9a4xqw6747c130y2znfwg945jgpjnd4bzj5gdamxmi7848dslb"))))
>> +    (build-system ant-build-system)
>> +    (arguments
>> +     `(#:jar-name "microemulator.jar"
>> +       #:source-dir "src"
>> +       #:tests? #f; no tests
>> +       #:phases
>> +       (modify-phases %standard-phases
>> +         ;; The archive contains the sources as a jar file
>> +         (add-before 'configure 'unpack-jar
>> +           (lambda _
>> +             (mkdir-p "src")
>> +             (with-directory-excursion "src"
>> +               (zero? (system* "jar" "xf" 
>> "../microemulator-sources.jar")))))
>> +         (add-before 'configure 'remove-old-dep
>> +           (lambda _
>> +             ;; requires netscape.javascript for which I can't find a 
>> free implementation
>> +             (delete-file 
>> "src/org/microemu/applet/CookieRecordStoreManager.java")
>> +             ;; requires an old version of swt
>> +             (delete-file "src/org/microemu/app/Swt.java"))))))
>> +    (inputs
>> +     `(("java-swt" ,java-swt)
>> +       ("asm" ,java-asm-old)))
>> +    (native-inputs
>> +     `(("unzip" ,unzip)))
>> +    (home-page "https://sourceforge.net/projects/microemulator/")
>> +    (synopsis "J2ME CLDC/MIDP emulator")
>> +    (description "Microemulator is a Java 2 Micro Edition (J2ME) 
>> CLDC/MIDP
>> +Emulator.  It allows to demonstrate MIDlet based applications in web 
>> browser
>> +applet and can be run as a standalone java application.")
>> +    (license (list license:asl2.0
>> +                   ;; or altenatively:
>> +                   license:lgpl2.1+)))
> 
> So maybe we can try the latest version as can be found on Github?

Looking at github, I can see the latest version is still 2.0.4, but I 
guess it's more future-proof to use the github url. Will update 
accordingly.

Thank you for the review!

> Kind regards,
> Roel Janssen