guix-patches
[Top][All Lists]
Advanced

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

bug#26966: [PATCH 17/22] gnu: clojure: Move below bootstrap packages.


From: Roel Janssen
Subject: bug#26966: [PATCH 17/22] gnu: clojure: Move below bootstrap packages.
Date: Mon, 22 May 2017 12:01:06 +0200
User-agent: mu4e 0.9.18; emacs 25.2.1

Ricardo Wurmus writes:

> * gnu/packages/java.scm (clojure): Move package.
> ---
>  gnu/packages/java.scm | 282 
> +++++++++++++++++++++++++-------------------------
>  1 file changed, 141 insertions(+), 141 deletions(-)
>
> diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
> index 5d1db6218..c5fa67eef 100644
> --- a/gnu/packages/java.scm
> +++ b/gnu/packages/java.scm
> @@ -707,147 +707,6 @@ the standard javac executable.  The tool runs on JamVM 
> instead of SableVM.")))
>         ("jamvm" ,jamvm)
>         ("classpath" ,classpath-devel)))))
>  
> -(define-public clojure
> -  (let* ((remove-archives '(begin
> -                             (for-each delete-file
> -                                       (find-files "." ".*\\.(jar|zip)"))
> -                             #t))
> -         (submodule (lambda (prefix version hash)
> -                      (origin
> -                        (method url-fetch)
> -                        (uri (string-append "https://github.com/clojure/";
> -                                            prefix version ".tar.gz"))
> -                        (sha256 (base32 hash))
> -                        (modules '((guix build utils)))
> -                        (snippet remove-archives)))))
> -    (package
> -      (name "clojure")
> -      (version "1.8.0")
> -      (source
> -       (origin
> -         (method url-fetch)
> -         (uri
> -          (string-append "http://repo1.maven.org/maven2/org/clojure/clojure/";
> -                         version "/clojure-" version ".zip"))
> -         (sha256
> -          (base32 "1nip095fz5c492sw15skril60i1vd21ibg6szin4jcvyy3xr6cym"))
> -         (modules '((guix build utils)))
> -         (snippet remove-archives)))
> -      (build-system ant-build-system)
> -      (arguments
> -       `(#:modules ((guix build ant-build-system)
> -                    (guix build utils)
> -                    (ice-9 ftw)
> -                    (ice-9 regex)
> -                    (srfi srfi-1)
> -                    (srfi srfi-26))
> -         #:test-target "test"
> -         #:phases
> -         (modify-phases %standard-phases
> -           (add-after 'unpack 'unpack-submodule-sources
> -             (lambda* (#:key inputs #:allow-other-keys)
> -               (for-each
> -                (lambda (name)
> -                  (mkdir-p name)
> -                  (with-directory-excursion name
> -                    (or (zero? (system* "tar"
> -                                        ;; Use xz for repacked tarball.
> -                                        "--xz"
> -                                        "--extract"
> -                                        "--verbose"
> -                                        "--file" (assoc-ref inputs name)
> -                                        "--strip-components=1"))
> -                        (error "failed to unpack tarball" name)))
> -                  (copy-recursively (string-append name "/src/main/clojure/")
> -                                    "src/clj/"))
> -                '("data-generators-src"
> -                  "java-classpath-src"
> -                  "test-check-src"
> -                  "test-generative-src"
> -                  "tools-namespace-src"
> -                  "tools-reader-src"))
> -               #t))
> -           ;; The javadoc target is not built by default.
> -           (add-after 'build 'build-doc
> -             (lambda _
> -               (zero? (system* "ant" "javadoc"))))
> -           ;; Needed since no install target is provided.
> -           (replace 'install
> -             (lambda* (#:key outputs #:allow-other-keys)
> -               (let ((java-dir (string-append (assoc-ref outputs "out")
> -                                              "/share/java/")))
> -                 ;; Install versioned to avoid collisions.
> -                 (install-file (string-append "clojure-" ,version ".jar")
> -                               java-dir)
> -                 #t)))
> -           ;; Needed since no install-doc target is provided.
> -           (add-after 'install 'install-doc
> -             (lambda* (#:key outputs #:allow-other-keys)
> -               (let ((doc-dir (string-append (assoc-ref outputs "out")
> -                                             "/share/doc/clojure-"
> -                                             ,version "/")))
> -                 (copy-recursively "doc/clojure" doc-dir)
> -                 (copy-recursively "target/javadoc/"
> -                                   (string-append doc-dir "javadoc/"))
> -                 (for-each (cut install-file <> doc-dir)
> -                           (filter (cut string-match
> -                                     ".*\\.(html|markdown|md|txt)"
> -                                     <>)
> -                                   (scandir "./")))
> -                 #t))))))
> -      ;; The native-inputs below are needed to run the tests.
> -      (native-inputs
> -       `(("data-generators-src"
> -          ,(submodule "data.generators/archive/data.generators-"
> -                      "0.1.2"
> -                      
> "0kki093jp4ckwxzfnw8ylflrfqs8b1i1wi9iapmwcsy328dmgzp1"))
> -         ("java-classpath-src"
> -          ,(submodule "java.classpath/archive/java.classpath-"
> -                      "0.2.3"
> -                      
> "0sjymly9xh1lkvwn5ygygpsfwz4dabblnlq0c9bx76rkvq62fyng"))
> -         ("test-check-src"
> -          ,(submodule "test.check/archive/test.check-"
> -                      "0.9.0"
> -                      
> "0p0mnyhr442bzkz0s4k5ra3i6l5lc7kp6ajaqkkyh4c2k5yck1md"))
> -         ("test-generative-src"
> -          ,(submodule "test.generative/archive/test.generative-"
> -                      "0.5.2"
> -                      
> "1pjafy1i7yblc7ixmcpfq1lfbyf3jaljvkgrajn70sws9xs7a9f8"))
> -         ("tools-namespace-src"
> -          ,(submodule "tools.namespace/archive/tools.namespace-"
> -                      "0.2.11"
> -                      
> "10baak8v0hnwz2hr33bavshm7y49mmn9zsyyms1dwjz45p5ymhy0"))
> -         ("tools-reader-src"
> -          ,(submodule "tools.reader/archive/tools.reader-"
> -                      "0.10.0"
> -                      
> "09i3lzbhr608h76mhdjm3932gg9xi8sflscla3c5f0v1nkc28cnr"))))
> -      (home-page "https://clojure.org/";)
> -      (synopsis "Lisp dialect running on the JVM")
> -      (description "Clojure is a dynamic, general-purpose programming 
> language,
> -combining the approachability and interactive development of a scripting
> -language with an efficient and robust infrastructure for multithreaded
> -programming.  Clojure is a compiled language, yet remains completely dynamic
> -– every feature supported by Clojure is supported at runtime.  Clojure
> -provides easy access to the Java frameworks, with optional type hints and 
> type
> -inference, to ensure that calls to Java can avoid reflection.
> -
> -Clojure is a dialect of Lisp, and shares with Lisp the code-as-data 
> philosophy
> -and a powerful macro system.  Clojure is predominantly a functional 
> programming
> -language, and features a rich set of immutable, persistent data structures.
> -When mutable state is needed, Clojure offers a software transactional memory
> -system and reactive Agent system that ensure clean, correct, multithreaded
> -designs.")
> -      ;; Clojure is licensed under EPL1.0
> -      ;; ASM bytecode manipulation library is licensed under BSD-3
> -      ;; Guava Murmur3 hash implementation is licensed under APL2.0
> -      ;; src/clj/repl.clj is licensed under CPL1.0
> -      ;;
> -      ;; See readme.html or readme.txt for details.
> -      (license (list license:epl1.0
> -                     license:bsd-3
> -                     license:asl2.0
> -                     license:cpl1.0)))))
> -
>  (define-public ant
>    (package
>      (name "ant")
> @@ -1844,6 +1703,147 @@ IcedTea build harness.")
>  (define-public icedtea icedtea-7)
>  
>  
> +(define-public clojure
> +  (let* ((remove-archives '(begin
> +                             (for-each delete-file
> +                                       (find-files "." ".*\\.(jar|zip)"))
> +                             #t))
> +         (submodule (lambda (prefix version hash)
> +                      (origin
> +                        (method url-fetch)
> +                        (uri (string-append "https://github.com/clojure/";
> +                                            prefix version ".tar.gz"))
> +                        (sha256 (base32 hash))
> +                        (modules '((guix build utils)))
> +                        (snippet remove-archives)))))
> +    (package
> +      (name "clojure")
> +      (version "1.8.0")
> +      (source
> +       (origin
> +         (method url-fetch)
> +         (uri
> +          (string-append "http://repo1.maven.org/maven2/org/clojure/clojure/";
> +                         version "/clojure-" version ".zip"))
> +         (sha256
> +          (base32 "1nip095fz5c492sw15skril60i1vd21ibg6szin4jcvyy3xr6cym"))
> +         (modules '((guix build utils)))
> +         (snippet remove-archives)))
> +      (build-system ant-build-system)
> +      (arguments
> +       `(#:modules ((guix build ant-build-system)
> +                    (guix build utils)
> +                    (ice-9 ftw)
> +                    (ice-9 regex)
> +                    (srfi srfi-1)
> +                    (srfi srfi-26))
> +         #:test-target "test"
> +         #:phases
> +         (modify-phases %standard-phases
> +           (add-after 'unpack 'unpack-submodule-sources
> +             (lambda* (#:key inputs #:allow-other-keys)
> +               (for-each
> +                (lambda (name)
> +                  (mkdir-p name)
> +                  (with-directory-excursion name
> +                    (or (zero? (system* "tar"
> +                                        ;; Use xz for repacked tarball.
> +                                        "--xz"
> +                                        "--extract"
> +                                        "--verbose"
> +                                        "--file" (assoc-ref inputs name)
> +                                        "--strip-components=1"))
> +                        (error "failed to unpack tarball" name)))
> +                  (copy-recursively (string-append name "/src/main/clojure/")
> +                                    "src/clj/"))
> +                '("data-generators-src"
> +                  "java-classpath-src"
> +                  "test-check-src"
> +                  "test-generative-src"
> +                  "tools-namespace-src"
> +                  "tools-reader-src"))
> +               #t))
> +           ;; The javadoc target is not built by default.
> +           (add-after 'build 'build-doc
> +             (lambda _
> +               (zero? (system* "ant" "javadoc"))))
> +           ;; Needed since no install target is provided.
> +           (replace 'install
> +             (lambda* (#:key outputs #:allow-other-keys)
> +               (let ((java-dir (string-append (assoc-ref outputs "out")
> +                                              "/share/java/")))
> +                 ;; Install versioned to avoid collisions.
> +                 (install-file (string-append "clojure-" ,version ".jar")
> +                               java-dir)
> +                 #t)))
> +           ;; Needed since no install-doc target is provided.
> +           (add-after 'install 'install-doc
> +             (lambda* (#:key outputs #:allow-other-keys)
> +               (let ((doc-dir (string-append (assoc-ref outputs "out")
> +                                             "/share/doc/clojure-"
> +                                             ,version "/")))
> +                 (copy-recursively "doc/clojure" doc-dir)
> +                 (copy-recursively "target/javadoc/"
> +                                   (string-append doc-dir "javadoc/"))
> +                 (for-each (cut install-file <> doc-dir)
> +                           (filter (cut string-match
> +                                     ".*\\.(html|markdown|md|txt)"
> +                                     <>)
> +                                   (scandir "./")))
> +                 #t))))))
> +      ;; The native-inputs below are needed to run the tests.
> +      (native-inputs
> +       `(("data-generators-src"
> +          ,(submodule "data.generators/archive/data.generators-"
> +                      "0.1.2"
> +                      
> "0kki093jp4ckwxzfnw8ylflrfqs8b1i1wi9iapmwcsy328dmgzp1"))
> +         ("java-classpath-src"
> +          ,(submodule "java.classpath/archive/java.classpath-"
> +                      "0.2.3"
> +                      
> "0sjymly9xh1lkvwn5ygygpsfwz4dabblnlq0c9bx76rkvq62fyng"))
> +         ("test-check-src"
> +          ,(submodule "test.check/archive/test.check-"
> +                      "0.9.0"
> +                      
> "0p0mnyhr442bzkz0s4k5ra3i6l5lc7kp6ajaqkkyh4c2k5yck1md"))
> +         ("test-generative-src"
> +          ,(submodule "test.generative/archive/test.generative-"
> +                      "0.5.2"
> +                      
> "1pjafy1i7yblc7ixmcpfq1lfbyf3jaljvkgrajn70sws9xs7a9f8"))
> +         ("tools-namespace-src"
> +          ,(submodule "tools.namespace/archive/tools.namespace-"
> +                      "0.2.11"
> +                      
> "10baak8v0hnwz2hr33bavshm7y49mmn9zsyyms1dwjz45p5ymhy0"))
> +         ("tools-reader-src"
> +          ,(submodule "tools.reader/archive/tools.reader-"
> +                      "0.10.0"
> +                      
> "09i3lzbhr608h76mhdjm3932gg9xi8sflscla3c5f0v1nkc28cnr"))))
> +      (home-page "https://clojure.org/";)
> +      (synopsis "Lisp dialect running on the JVM")
> +      (description "Clojure is a dynamic, general-purpose programming 
> language,
> +combining the approachability and interactive development of a scripting
> +language with an efficient and robust infrastructure for multithreaded
> +programming.  Clojure is a compiled language, yet remains completely dynamic
> +– every feature supported by Clojure is supported at runtime.  Clojure
> +provides easy access to the Java frameworks, with optional type hints and 
> type
> +inference, to ensure that calls to Java can avoid reflection.
> +
> +Clojure is a dialect of Lisp, and shares with Lisp the code-as-data 
> philosophy
> +and a powerful macro system.  Clojure is predominantly a functional 
> programming
> +language, and features a rich set of immutable, persistent data structures.
> +When mutable state is needed, Clojure offers a software transactional memory
> +system and reactive Agent system that ensure clean, correct, multithreaded
> +designs.")
> +      ;; Clojure is licensed under EPL1.0
> +      ;; ASM bytecode manipulation library is licensed under BSD-3
> +      ;; Guava Murmur3 hash implementation is licensed under APL2.0
> +      ;; src/clj/repl.clj is licensed under CPL1.0
> +      ;;
> +      ;; See readme.html or readme.txt for details.
> +      (license (list license:epl1.0
> +                     license:bsd-3
> +                     license:asl2.0
> +                     license:cpl1.0)))))
> +
>  (define-public java-swt
>    (package
>      (name "java-swt")

LGTM.

Kind regards,
Roel Janssen





reply via email to

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