[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#32948] [PATCH 01/21] gnu: Add java-batik-i18n.
From: |
Julien Lepiller |
Subject: |
[bug#32948] [PATCH 01/21] gnu: Add java-batik-i18n. |
Date: |
Fri, 05 Oct 2018 18:28:15 +0200 |
User-agent: |
Roundcube Webmail/1.3.6 |
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 <address@hidden>
+;;;
+;;; 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)))
- [bug#32948] [PATCH 07/21] gnu: Add java-w3c-sac., (continued)
- [bug#32948] [PATCH 07/21] gnu: Add java-w3c-sac., Danny Milosavljevic, 2018/10/05
- [bug#32948] [PATCH 08/21] gnu: Add java-w3c-svg., Danny Milosavljevic, 2018/10/05
- [bug#32948] [PATCH 16/21] gnu: Add java-batik-gvt., Danny Milosavljevic, 2018/10/05
- [bug#32948] [PATCH 17/21] gnu: Add java-batik-script., Danny Milosavljevic, 2018/10/05
- [bug#32948] [PATCH 19/21] gnu: Add java-batik-svggen., Danny Milosavljevic, 2018/10/05
- [bug#32948] [PATCH 15/21] gnu: Add java-batik-anim., Danny Milosavljevic, 2018/10/05
- [bug#32948] [PATCH 14/21] gnu: Add java-batik-svg-dom., Danny Milosavljevic, 2018/10/05
- [bug#32948] [PATCH 18/21] gnu: Add java-batik-bridge., Danny Milosavljevic, 2018/10/05
- [bug#32948] [PATCH 01/21] gnu: Add java-batik-i18n., Danny Milosavljevic, 2018/10/05
- [bug#32948] [PATCH 01/21] gnu: Add java-batik-i18n.,
Julien Lepiller <=
[bug#32948] [PATCH 20/21] gnu: Add java-batik-transcoder., Danny Milosavljevic, 2018/10/05