unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Julien Lepiller <julien@lepiller.eu>
To: 32948@debbugs.gnu.org
Subject: [bug#32948] [PATCH 01/21] gnu: Add java-batik-i18n.
Date: Fri, 05 Oct 2018 18:28:15 +0200	[thread overview]
Message-ID: <d5ae85ec575566426755d3b70a37379b@lepiller.eu> (raw)
In-Reply-To: <20181005155020.10239-1-dannym@scratchpost.org>

Le 2018-10-05 17:50, Danny Milosavljevic a écrit :
> * gnu/packages/batik.scm (java-batik): New variable.
> (java-batik-package): New procedure.
> (java-batik-disable-tests): New procedure.
> (java-batik-i18n): New variable.

I think the message should be simply
* gnu/packages/batik.scm: New file.

> ---
>  gnu/packages/batik.scm | 85 ++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 85 insertions(+)
>  create mode 100644 gnu/packages/batik.scm
> 
> diff --git a/gnu/packages/batik.scm b/gnu/packages/batik.scm
> new file mode 100644
> index 000000000..2ca15b763
> --- /dev/null
> +++ b/gnu/packages/batik.scm
> @@ -0,0 +1,85 @@
> +;;; GNU Guix --- Functional package management for GNU
> +;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
> +;;;
> +;;; This file is part of GNU Guix.
> +;;;
> +;;; GNU Guix is free software; you can redistribute it and/or modify 
> it
> +;;; under the terms of the GNU General Public License as published by
> +;;; the Free Software Foundation; either version 3 of the License, or 
> (at
> +;;; your option) any later version.
> +;;;
> +;;; GNU Guix is distributed in the hope that it will be useful, but
> +;;; WITHOUT ANY WARRANTY; without even the implied warranty of
> +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +;;; GNU General Public License for more details.
> +;;;
> +;;; You should have received a copy of the GNU General Public License
> +;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
> +
> +(define-module (wip batik)

Testing leftover? It should be (gnu packages batik)

> +  #:use-module ((guix licenses) #:prefix license:)
> +  #:use-module (guix utils)
> +  #:use-module (guix download)
> +  #:use-module (guix git-download)
> +  #:use-module (guix packages)
> +  #:use-module (guix build-system ant)
> +  #:use-module (gnu packages)
> +  #:use-module (gnu packages compression)
> +  #:use-module (gnu packages java)
> +  #:use-module (gnu packages textutils))
> +
> +;;; TODO: Use maven.
> +;;; TODO: Remove bundled jar files (I guess our ant-build-system ought 
> to
> +;;; do that).
> +
> +(define java-batik
> +  (package
> +    (name "java-batik")
> +    (version "1.10")
> +    (source
> +      (origin
> +        (method url-fetch)
> +        (uri (string-append
> +              "mirror://apache/xmlgraphics/batik/source/batik-src-" 
> version
> +              ".tar.gz"))
> +        (sha256
> +         (base32
> +          "05nipxvm940m2dgzmrvflr2r72a5mmqbl25pvqr0xn73a5lygi6z"))
> +        (file-name (string-append name "-" version))))

The filename should end with ".tar.gz"

> +    (build-system ant-build-system)
> +    (native-inputs
> +     `(("java-junit" ,java-junit)))
> +    (home-page "https://xmlgraphics.apache.org/batik/")
> +    (synopsis "SVG toolkit for Java")
> +    (description "This package provides an SVG toolkit for Java.")
> +    (license license:asl2.0)))
> +
> +(define (java-batik-package subdir inputs)
> +  (package
> +    (inherit java-batik)
> +    (name (string-append "java-" subdir))
> +    (propagated-inputs
> +     inputs)
> +    (arguments
> +     `(#:jar-name (string-append ,subdir ".jar")
> +       #:tests? #t

That's already the default value

> +       #:phases
> +       (modify-phases %standard-phases
> +         (add-after 'unpack 'chdir
> +           (lambda _
> +             ;; FIXME: Be nicer.
> +             (delete-file-recursively "batik-util/src/test")

Could you explain?

> +             (chdir ,subdir)
> +             #t)))))))
> +
> +(define (java-batik-disable-tests base-package)
> +  (package
> +    (inherit base-package)
> +    (arguments
> +     (substitute-keyword-arguments (package-arguments base-package)
> +      ((#:tests? _)
> +       #f)))))

Maybe use:
(arguments
   `(#:tests? #f
     ,@(package-arguments base-package)))

> +
> +(define-public java-batik-i18n
> +  ;; No tests exist.
> +  (java-batik-disable-tests (java-batik-package "batik-i18n" '())))

Nice! I guess every package will have the same synopsis and description, 
which makes it hard to understand what they do. Could you do something 
about it? For instance, using:

(description (string-append (package-description java-batik) "  " 
additional-description))) in java-batik-package?

I also have my own version of this package that uses build.xml. So my 
question is, why did you split this package? Here are two package 
definitions I use:

(define-public java-batik
   (package
     (name "java-batik")
     (version "1.10")
     (source (origin
               (method url-fetch)
               (uri (string-append 
"mirror://apache/xmlgraphics/batik/source/"
                                   "batik-src-" version ".tar.gz"))
               (sha256
                (base32
                 
"05nipxvm940m2dgzmrvflr2r72a5mmqbl25pvqr0xn73a5lygi6z"))))
     (build-system ant-build-system)
     (arguments
      `(#:test-target "regard"; FIXME: no test is actually run
        #:build-target "all-jar"
        #:phases
        (modify-phases %standard-phases
          (add-before 'check 'remove-failing
            (lambda _
              ;; This file looks for w3c.dom.Window, but it has been 
moved to
              ;; org.apache.batik.w3c.dom.Window.
              (delete-file 
"samples/tests/resources/java/sources/com/untrusted/script/UntrustedScriptHandler.java")
              #t))
          (replace 'install
            (lambda* (#:key outputs #:allow-other-keys)
              (let ((dir (string-append (assoc-ref outputs "out") 
"/share/java/")))
                (mkdir-p dir)
                (copy-file (string-append "batik-" ,version 
"/lib/batik-all-" ,version ".jar")
                           (string-append dir "batik-all.jar"))))))))
     (inputs
      `(("java-xmlgraphics-commons" ,java-xmlgraphics-commons)))
     (native-inputs
      `(("java-junit" ,java-junit)))
     (home-page "https://xmlgraphics.apache.org/batik")
     (synopsis "")
     (description "")
     (license license:asl2.0)))

(define-public java-xmlgraphics-commons
   (package
     (name "java-xmlgraphics-commons")
     (version "2.3")
     (source (origin
               (method url-fetch)
               (uri (string-append 
"mirror://apache/xmlgraphics/commons/source/"
                                   "xmlgraphics-commons-" version 
"-src.tar.gz"))
               (sha256
                (base32
                 
"0a432a4ca3vgnbada5cy9mlmfzmq6hi4i176drfxrp17q2d43w23"))))
     (build-system ant-build-system)
     (arguments
      `(#:jar-name "xmlgraphics-commons.jar"
        #:source-dir "src/main/java"
        #:test-dir "src/test"
        #:tests? #f; FIXME: need commons-xml-resolver
        #:phases
        (modify-phases %standard-phases
          (add-before 'build 'copy-resources
            (lambda _
              (copy-recursively "src/main/resources" "build/classes")
              #t)))))
     (inputs
      `(("java-commons-io" ,java-commons-io)
        ("java-commons-logging-minimal" ,java-commons-logging-minimal)))
     (native-inputs
      `(("java-junit" ,java-junit)
        ("java-mockito-1" ,java-mockito-1)))
     (home-page "https://xmlgraphics.apache.org")
     (synopsis "")
     (description "")
     (license license:asl2.0)))

  parent reply	other threads:[~2018-10-05 16:29 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-05 15:44 [bug#32948] [PATCH 00/21] Add batik Danny Milosavljevic
2018-10-05 15:50 ` [bug#32948] [PATCH 01/21] gnu: Add java-batik-i18n Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 02/21] gnu: Add java-batik-constants Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 03/21] gnu: Add java-batik-util Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 04/21] gnu: Add java-batik-xml Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 05/21] gnu: Add java-batik-ext Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 06/21] gnu: Add java-w3c-smil Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 07/21] gnu: Add java-w3c-sac Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 08/21] gnu: Add java-w3c-svg Danny Milosavljevic
2018-10-09 12:47     ` Björn Höfling
2018-10-05 15:50   ` [bug#32948] [PATCH 09/21] gnu: Add java-xmlgraphics-commons Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 10/21] gnu: Add java-batik-css Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 11/21] gnu: Add java-batik-dom Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 12/21] gnu: Add java-batik-awt-util Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 13/21] gnu: Add java-batik-parser Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 14/21] gnu: Add java-batik-svg-dom Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 15/21] gnu: Add java-batik-anim Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 16/21] gnu: Add java-batik-gvt Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 17/21] gnu: Add java-batik-script Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 18/21] gnu: Add java-batik-bridge Danny Milosavljevic
2018-10-05 15:50   ` [bug#32948] [PATCH 19/21] gnu: Add java-batik-svggen Danny Milosavljevic
2018-10-05 15:54   ` [bug#32948] [PATCH 01/21] gnu: Add java-batik-i18n Danny Milosavljevic
2018-10-05 16:28   ` Julien Lepiller [this message]
2018-10-05 18:49     ` Danny Milosavljevic
2018-10-06 11:06       ` Julien Lepiller
2018-10-05 15:51 ` [bug#32948] [PATCH 20/21] gnu: Add java-batik-transcoder Danny Milosavljevic
2018-10-05 15:51   ` [bug#32948] [PATCH 21/21] gnu: Add batik Danny Milosavljevic
2018-10-05 16:37     ` Julien Lepiller
2024-02-21 16:54 ` bug#32948: close bug #32948 Steve George

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=d5ae85ec575566426755d3b70a37379b@lepiller.eu \
    --to=julien@lepiller.eu \
    --cc=32948@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).