* [bug#35570] java-tomcat: Make it the full package
@ 2019-05-04 22:34 Björn Höfling
2019-05-04 22:37 ` [bug#35570] [PATCH 1/8] gnu: ant-build-system: Don't override symlinks Björn Höfling
` (8 more replies)
0 siblings, 9 replies; 10+ messages in thread
From: Björn Höfling @ 2019-05-04 22:34 UTC (permalink / raw)
To: 35570
[-- Attachment #1: Type: text/plain, Size: 861 bytes --]
The current java-tomcat package is only building the jar-files and uses
Tomcat only as a servlet-api package. This patch series changes it to
the "real" package with a bin, conf, ... directory.
If you have a CATALINA_BASE, i.e. a Tomcat instance directory with
conf, log, webapps, you can start Tomcat like that:
CATALINA_BASE=/home/bjoern/guix/tmp/catalina-home /gnu/store/q5dqsiiwb665jfb6ckcfpw3ijgm4gyh7-java-tomcat-8.5.40/bin/startup.sh
And then navigate to http://localhost:8080/ to view your new site.
The standard Tomcat installation copies the commons-daemon.jar and the
java-ecj.jar. We better use symlinks to the input package. But these
would be overridden by a repacking phase: Thus, we need to modify the
ant-build-system, placing this series into the staging branch.
What's finally outstanding is a tomcat-service.
Björn
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply [flat|nested] 10+ messages in thread
* [bug#35570] [PATCH 1/8] gnu: ant-build-system: Don't override symlinks.
2019-05-04 22:34 [bug#35570] java-tomcat: Make it the full package Björn Höfling
@ 2019-05-04 22:37 ` Björn Höfling
2019-05-04 22:37 ` [bug#35570] [PATCH 2/8] gnu: java-javaee-servletapi: Don't use unstable tarball Björn Höfling
` (7 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Björn Höfling @ 2019-05-04 22:37 UTC (permalink / raw)
To: 35570
[-- Attachment #1: Type: text/plain, Size: 2316 bytes --]
When repacking jar-files, don't work on symlinks: Otherwise, they would be
overridden with the repacked jar-file.
* guix/build/ant-build-system.scm (regular-jar-file-predicate): New procedure.
(generate-jar-indices, strip-jar-timestamps): Use it.
---
guix/build/ant-build-system.scm | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/guix/build/ant-build-system.scm b/guix/build/ant-build-system.scm
index d79a2d55ed..0fec06f497 100644
--- a/guix/build/ant-build-system.scm
+++ b/guix/build/ant-build-system.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2019 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -171,6 +172,12 @@ to the default GNU unpack strategy."
#:allow-other-keys)
(apply invoke `("ant" ,build-target ,@make-flags)))
+(define (regular-jar-file-predicate file stat)
+ "Predicate returning true if FILE is ending on '.jar'
+and STAT indicates it is a regular file."
+ (and ((file-name-predicate "\\.jar$") file stat)
+ (eq? 'regular (stat:type stat))))
+
(define* (generate-jar-indices #:key outputs #:allow-other-keys)
"Generate file \"META-INF/INDEX.LIST\". This file does not use word wraps
and is preferred over \"META-INF/MANIFEST.MF\", which does use word wraps,
@@ -181,7 +188,10 @@ dependencies of this jar file."
(invoke "jar" "-i" jar))
(for-each (match-lambda
((output . directory)
- (for-each generate-index (find-files directory "\\.jar$"))))
+ (for-each generate-index
+ (find-files
+ directory
+ regular-jar-file-predicate))))
outputs)
#t)
@@ -222,7 +232,8 @@ repack them. This is necessary to ensure that archives are reproducible."
(for-each (match-lambda
((output . directory)
- (for-each repack-archive (find-files directory "\\.jar$"))))
+ (for-each repack-archive
+ (find-files directory regular-jar-file-predicate))))
outputs)
#t)
--
2.21.0
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [bug#35570] [PATCH 2/8] gnu: java-javaee-servletapi: Don't use unstable tarball.
2019-05-04 22:34 [bug#35570] java-tomcat: Make it the full package Björn Höfling
2019-05-04 22:37 ` [bug#35570] [PATCH 1/8] gnu: ant-build-system: Don't override symlinks Björn Höfling
@ 2019-05-04 22:37 ` Björn Höfling
2019-05-04 22:38 ` [bug#35570] [PATCH 3/8] gnu: java-javaee-servletapi: Add properties-files to jar Björn Höfling
` (6 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Björn Höfling @ 2019-05-04 22:37 UTC (permalink / raw)
To: 35570
[-- Attachment #1: Type: text/plain, Size: 1693 bytes --]
* gnu/packages/java.scm (java-javaee-servletapi)[source]: Use git-fetch.
---
gnu/packages/java.scm | 18 ++++++++++--------
1 file changed, 10 insertions(+), 8 deletions(-)
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 9664d749fb..f92b3d5e89 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -10,6 +10,7 @@
;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2019 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -2836,14 +2837,15 @@ API and version 2.1 of the Java ServerPages
API.") (package
(name "java-javaee-servletapi")
(version "3.1.0")
- (source (origin
- (method url-fetch)
- (uri (string-append
"https://github.com/javaee/servlet-spec/"
- "archive/" version ".zip"))
- (file-name (string-append name "-" version ".zip"))
- (sha256
- (base32
-
"0m6p13vgfb1ihich1jp5j6fqlhkjsrkn32c86bsbkryp38ipwg8w"))))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url
"https://github.com/javaee/servlet-spec.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+
"0s03lj8w5an70lkqbjycgfrfk0kc07vbfav91jzk87gh3awf9ksl"))))
(build-system ant-build-system) (arguments
`(#:jar-name "javax-servletapi.jar"
--
2.21.0
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [bug#35570] [PATCH 3/8] gnu: java-javaee-servletapi: Add properties-files to jar.
2019-05-04 22:34 [bug#35570] java-tomcat: Make it the full package Björn Höfling
2019-05-04 22:37 ` [bug#35570] [PATCH 1/8] gnu: ant-build-system: Don't override symlinks Björn Höfling
2019-05-04 22:37 ` [bug#35570] [PATCH 2/8] gnu: java-javaee-servletapi: Don't use unstable tarball Björn Höfling
@ 2019-05-04 22:38 ` Björn Höfling
2019-05-04 22:39 ` [bug#35570] [PATCH 4/8] gnu: Remove dependencies on java-tomcat, use servlet API Björn Höfling
` (5 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Björn Höfling @ 2019-05-04 22:38 UTC (permalink / raw)
To: 35570
[-- Attachment #1: Type: text/plain, Size: 1708 bytes --]
* gnu/packages/java.scm (jav-javaee-servletapi)[arguments]: Add phase
'copy-resources' to copy properties-files.
---
gnu/packages/java.scm | 20 +++++++++++++++++++-
1 file changed, 19 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index f92b3d5e89..9b635699f6 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2851,7 +2851,25 @@ API and version 2.1 of the Java ServerPages
API.") `(#:jar-name "javax-servletapi.jar"
;; no tests
#:tests? #f
- #:source-dir "src/main/java"))
+ #:source-dir "src/main/java"
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'copy-resources
+ (lambda _
+ (mkdir-p "build/classes/javax/servlet/http")
+ (let ((from-prefix "src/main/java/javax/servlet/")
+ (to-prefix "build/classes/javax/servlet/"))
+ (for-each (lambda (f)
+ (copy-file (string-append from-prefix f)
+ (string-append to-prefix f)))
+ (list "LocalStrings_ja.properties"
+ "LocalStrings.properties"
+ "LocalStrings_fr.properties"
+ "http/LocalStrings_es.properties"
+ "http/LocalStrings_ja.properties"
+ "http/LocalStrings.properties"
+ "http/LocalStrings_fr.properties")))
+ #t)))))
(native-inputs
`(("unzip" ,unzip)))
(home-page "https://javaee.github.io/servlet-spec/")
--
2.21.0
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [bug#35570] [PATCH 4/8] gnu: Remove dependencies on java-tomcat, use servlet API
2019-05-04 22:34 [bug#35570] java-tomcat: Make it the full package Björn Höfling
` (2 preceding siblings ...)
2019-05-04 22:38 ` [bug#35570] [PATCH 3/8] gnu: java-javaee-servletapi: Add properties-files to jar Björn Höfling
@ 2019-05-04 22:39 ` Björn Höfling
2019-05-04 22:41 ` [bug#35570] [PATCH 5/8] gnu: java-commons-daemon: Update to 1.1.0 Björn Höfling
` (4 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Björn Höfling @ 2019-05-04 22:39 UTC (permalink / raw)
To: 35570
[-- Attachment #1: Type: text/plain, Size: 4484 bytes --]
These packages are using java-tomcat as a dependency where they
actually only need a servlet API.
* gnu/packages/maven.scm (maven-wagon-tck-http)[inputs]: Remove
java-tomcat, add java-javaee-servletapi.
(maven-wagon-http)[native-inputs]: Same here.
* gnu/packages/web.scm (java-eclipse-jetty-util)[inputs]: Same here.
(java-eclipse-jetty-http-test-classes)[inputs]: Same here.
(java-eclipse-jetty-security)[inputs]: Same here.
(java-eclipse-jetty-servlet)[inputs]: Same here.
(java-eclipse-jetty-webapp-9.2)[inputs]: Same here.
---
gnu/packages/maven.scm | 5 +++--
gnu/packages/web.scm | 11 ++++++-----
2 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm
index d383f16255..592cc74f2d 100644
--- a/gnu/packages/maven.scm
+++ b/gnu/packages/maven.scm
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2019 Tobias Geerinckx-Rite <me@tobias.gr>
+;;; Copyright © 2019 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -523,7 +524,7 @@ gets and puts artifacts using the file system.")))
(inputs
`(("java-plexus-util" ,java-plexus-utils)
("maven-wagon-provider-api" ,maven-wagon-provider-api)
- ("java-tomcat" ,java-tomcat)
+ ("java-javaee-servletapi" ,java-javaee-servletapi)
("java-slf4j-api" ,java-slf4j-api)
("java-commons-codec" ,java-commons-codec)
("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus)
@@ -663,7 +664,7 @@ wagon providers supporting HTTP.")))
("java-jdom2" ,java-jdom2)
("java-asm" ,java-asm)
("java-geronimo-xbean-reflect" ,java-geronimo-xbean-reflect)
- ("java-tomcat" ,java-tomcat)
+ ("java-javaee-servletapi" ,java-javaee-servletapi)
("java-eclipse-jetty-util-9.2" ,java-eclipse-jetty-util-9.2)
("java-eclipse-jetty-io-9.2" ,java-eclipse-jetty-io-9.2)
("java-eclipse-jetty-http-9.2" ,java-eclipse-jetty-http-9.2)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 7242ede3be..3d9070f169 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -31,6 +31,7 @@
;;; Copyright © 2018 Mădălin Ionel Patrașcu
<madalinionel.patrascu@mdc-berlin.de> ;;; Copyright © 2018 Alex Vong
<alexvong1995@gmail.com> ;;; Copyright © 2019 Nicolas Goaziou
<mail@nicolasgoaziou.fr> +;;; Copyright © 2019 Björn Höfling
<bjoern.hoefling@bjoernhoefling.de> ;;;
;;; This file is part of GNU Guix.
;;;
@@ -5702,7 +5703,7 @@ Web Server.")
#t)))))
(inputs
`(("slf4j" ,java-slf4j-api)
- ("servlet" ,java-tomcat)))
+ ("servlet" ,java-javaee-servletapi)))
(native-inputs
`(("junit" ,java-junit)
("hamcrest" ,java-hamcrest-all)
@@ -5890,7 +5891,7 @@ or embedded instantiation. This package provides
the JMX management."))) #t)))))
(inputs
`(("slf4j" ,java-slf4j-api)
- ("servlet" ,java-tomcat)
+ ("java-javaee-servletapi" ,java-javaee-servletapi)
("http" ,java-eclipse-jetty-http)
("io" ,java-eclipse-jetty-io)
("util" ,java-eclipse-jetty-util)))))
@@ -5985,7 +5986,7 @@ artifact.")))
#t)))))
(inputs
`(("slf4j" ,java-slf4j-api)
- ("servlet" ,java-tomcat)
+ ("servlet" ,java-javaee-servletapi)
("http" ,java-eclipse-jetty-http)
("server" ,java-eclipse-jetty-server)
("util" ,java-eclipse-jetty-util)))
@@ -6028,7 +6029,7 @@ infrastructure")))
#t)))))
(inputs
`(("slf4j" ,java-slf4j-api)
- ("servlet" ,java-tomcat)
+ ("java-javaee-servletapi" ,java-javaee-servletapi)
("http" ,java-eclipse-jetty-http)
("http-test" ,java-eclipse-jetty-http-test-classes)
("io" ,java-eclipse-jetty-io)
@@ -6163,7 +6164,7 @@ container.")))
("java-eclipse-jetty-servlet-9.2" ,java-eclipse-jetty-servlet-9.2)
("java-eclipse-jetty-security-9.2" ,java-eclipse-jetty-security-9.2)
("java-eclipse-jetty-xml-9.2" ,java-eclipse-jetty-xml-9.2)
- ("java-tomcat" ,java-tomcat)
+ ("java-javaee-servletapi" ,java-javaee-servletapi)
,@(package-inputs java-eclipse-jetty-util-9.2)))
(native-inputs
`(("java-eclipse-jetty-io-9.2" ,java-eclipse-jetty-io-9.2)
--
2.21.0
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [bug#35570] [PATCH 5/8] gnu: java-commons-daemon: Update to 1.1.0.
2019-05-04 22:34 [bug#35570] java-tomcat: Make it the full package Björn Höfling
` (3 preceding siblings ...)
2019-05-04 22:39 ` [bug#35570] [PATCH 4/8] gnu: Remove dependencies on java-tomcat, use servlet API Björn Höfling
@ 2019-05-04 22:41 ` Björn Höfling
2019-05-04 22:41 ` [bug#35570] [PATCH 6/8] gnu: Add java-ecj in version 4.6.3 Björn Höfling
` (3 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Björn Höfling @ 2019-05-04 22:41 UTC (permalink / raw)
To: 35570
[-- Attachment #1: Type: text/plain, Size: 941 bytes --]
* gnu/packages/java (java-commons-daemon): Update to 1.1.0.
---
gnu/packages/java.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 9b635699f6..3e0198b6aa 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6248,14 +6248,14 @@ This is a part of the Apache Commons Project.")
(define-public java-commons-daemon
(package
(name "java-commons-daemon")
- (version "1.0.15")
+ (version "1.1.0")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://apache/commons/daemon/source/" "commons-daemon-" version
"-src.tar.gz")) (sha256
(base32
-
"0ci46kq8jpz084ccwq0mmkahcgsmh20ziclp2jf5i0djqv95gvhi"))))
+
"141gkhfzv5v3pdhic6y4ardq2dhsa3v36j8wmmhy6f8mac48fp7n"))))
(build-system ant-build-system) (arguments
`(#:test-target "test"
--
2.21.0
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [bug#35570] [PATCH 6/8] gnu: Add java-ecj in version 4.6.3.
2019-05-04 22:34 [bug#35570] java-tomcat: Make it the full package Björn Höfling
` (4 preceding siblings ...)
2019-05-04 22:41 ` [bug#35570] [PATCH 5/8] gnu: java-commons-daemon: Update to 1.1.0 Björn Höfling
@ 2019-05-04 22:41 ` Björn Höfling
2019-05-04 22:42 ` [bug#35570] [PATCH 7/8] gnu: java-tomcat: Build the full Tomcat package Björn Höfling
` (2 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Björn Höfling @ 2019-05-04 22:41 UTC (permalink / raw)
To: 35570
[-- Attachment #1: Type: text/plain, Size: 1992 bytes --]
* gnu/packages/java.scm (java-ecj): New variable.
---
gnu/packages/java.scm | 39 +++++++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 3e0198b6aa..df151013fd 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2363,6 +2363,45 @@ Main-Class:
org.eclipse.jdt.internal.compiler.batch.Main\n" (native-inputs
`(("unzip" ,unzip)))))
+(define-public java-ecj
+ (package (inherit java-ecj-3)
+ (version "4.6.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+
"http://archive.eclipse.org/eclipse/downloads/drops4/R-"
+ version
+ "-201703010400/ecjsrc-"
+ version
+ ".jar"))
+ (sha256
+ (base32
+
"11cfgsdgznja1pvlxkjbqykxd7pcd5655vkm7s44xmahmap15gpl"))))
+ (arguments
+ `(#:tests? #f ; none included
+ #:build-target "build"
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-build.xml
+ (lambda _
+ (substitute* "src/build.xml"
+ (("^.*MANIFEST.*$")
+ ""))
+ #t))
+ (add-after 'unpack 'fix-prop
+ (lambda _
+ (substitute* "src/build.xml"
+ (("^.*properties.*$")
+ "<include name=\"**/*.properties\"/>
+ <include name=\"**/*.props\"/>"))
+ #t))
+ (add-before 'build 'chdir
+ (lambda _
+ (chdir "src")
+ #t))
+ (replace 'install (install-jars ".")))))))
+
(define-public java-cisd-base
(let ((revision 38938)
(base-version "14.12.0"))
--
2.21.0
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [bug#35570] [PATCH 7/8] gnu: java-tomcat: Build the full Tomcat package.
2019-05-04 22:34 [bug#35570] java-tomcat: Make it the full package Björn Höfling
` (5 preceding siblings ...)
2019-05-04 22:41 ` [bug#35570] [PATCH 6/8] gnu: Add java-ecj in version 4.6.3 Björn Höfling
@ 2019-05-04 22:42 ` Björn Höfling
2019-05-04 22:42 ` [bug#35570] [PATCH 8/8] gnu: java-tomcat: Update to 8.5.40 Björn Höfling
2019-10-13 20:58 ` bug#35570: java-tomcat: Make it the full package Björn Höfling
8 siblings, 0 replies; 10+ messages in thread
From: Björn Höfling @ 2019-05-04 22:42 UTC (permalink / raw)
To: 35570
[-- Attachment #1: Type: text/plain, Size: 4067 bytes --]
Currently java-tomcat uses the deploy build target. In that way, it is
built like a library, with only the jar files. This commit will change
the arget to deploy to build the full tomcat package.
* gnu/packages/web.scm (java-tomcat)[source]: Remove bat-files in
snippet. [inputs]: Remove java-eclipse-jdt-core, add
java-commons-daemon, java-ecj. [native-inputs]: Remove.
[arguments]: Use "deploy" build-target, add phases 'modify-deploy,
'symlink-commons-daemon, 'symlink-java-ecj, change 'install phase.
---
gnu/packages/web.scm | 40 +++++++++++++++++++++++++++++++++++-----
1 file changed, 35 insertions(+), 5 deletions(-)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 3d9070f169..cb9af0a781 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -5552,14 +5552,14 @@ encoder/decoder based on the draft-12
specification for UBJSON.") (snippet
'(begin
(for-each delete-file (find-files "." "\\.jar$"))
+ (for-each delete-file (find-files "." "\\.bat$"))
#t))))
(build-system ant-build-system)
(inputs
- `(("java-eclipse-jdt-core" ,java-eclipse-jdt-core)))
- (native-inputs
- `(("java-junit" ,java-junit)))
+ `(("java-commons-daemon" ,java-commons-daemon)
+ ("java-ecj" ,java-ecj)))
(arguments
- `(#:build-target "package"
+ `(#:build-target "deploy"
#:tests? #f; requires downloading some files.
#:phases
(modify-phases %standard-phases
@@ -5582,6 +5582,33 @@ encoder/decoder based on the draft-12
specification for UBJSON.") (("<filter token=\"VERSION_BUILT\"
value=.*") "<filter token=\"VERSION_BUILT\" value=\"Jan 1 1970 00:00:00
UTC\"/>")) #t))
+ (add-after 'unpack 'modify-deploy
+ (lambda _
+ ;; The Tomcat build downloads and copies these files to
the
+ ;; bin and lib directory.
+ ;; We instead symlink to the input (see below).
+ (substitute* "build.xml"
+ (("<copy
tofile=\"\\$\\{tomcat.build\\}/bin/commons-daemon.jar.*") "")
+ (("<copy file=\"\\$\\{jdt.jar\\}\"
todir=\"\\$\\{tomcat.build\\}/lib\"/>") ""))
+ #t))
+ (add-after 'install 'symlink-commons-daemon
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((commons-daemon (assoc-ref inputs
"java-commons-daemon"))
+ (files (find-files commons-daemon
"commons-daemon-.*\\.jar"))
+ (daemon-jar (car files))
+ (out-bin (string-append (assoc-ref outputs "out")
"/bin"))
+ (target (string-append out-bin
"/commons-daemon.jar")))
+ (symlink daemon-jar target)
+ #t)))
+ (add-after 'install 'symlink-java-ecj
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((java-ecj (assoc-ref inputs "java-ecj"))
+ (files (find-files java-ecj "ecj.*\\.jar"))
+ (java-ecj-jar (car files))
+ (out-lib (string-append (assoc-ref outputs "out")
"/lib"))
+ (target (string-append out-lib "/java-ecj.jar")))
+ (symlink java-ecj-jar target)
+ #t)))
(add-after 'unpack 'generate-properties
(lambda _
;; This could have been passed to make-flags, but getcwd
returns @@ -5592,7 +5619,10 @@ encoder/decoder based on the draft-12
specification for UBJSON.") (string-append "base.path=" (getcwd)
"/downloads\n")))) #t))
(replace 'install
- (install-jars "output/build/lib")))))
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (copy-recursively "output/build" out))
+ #t)))))
(home-page "https://tomcat.apache.org")
(synopsis "Java Servlet, JavaServer Pages, Java Expression
Language and Java WebSocket")
--
2.21.0
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [bug#35570] [PATCH 8/8] gnu: java-tomcat: Update to 8.5.40.
2019-05-04 22:34 [bug#35570] java-tomcat: Make it the full package Björn Höfling
` (6 preceding siblings ...)
2019-05-04 22:42 ` [bug#35570] [PATCH 7/8] gnu: java-tomcat: Build the full Tomcat package Björn Höfling
@ 2019-05-04 22:42 ` Björn Höfling
2019-10-13 20:58 ` bug#35570: java-tomcat: Make it the full package Björn Höfling
8 siblings, 0 replies; 10+ messages in thread
From: Björn Höfling @ 2019-05-04 22:42 UTC (permalink / raw)
To: 35570
[-- Attachment #1: Type: text/plain, Size: 1055 bytes --]
* gnu/packages/web.scm (java-tomcat): Update to 8.5.40.
---
gnu/packages/web.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index cb9af0a781..2f1818dd3d 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -5539,14 +5539,14 @@ encoder/decoder based on the draft-12 specification for UBJSON.")
(define-public java-tomcat
(package
(name "java-tomcat")
- (version "8.5.38")
+ (version "8.5.40")
(source (origin
(method url-fetch)
(uri (string-append "mirror://apache/tomcat/tomcat-8/v"
version "/src/apache-tomcat-" version "-src.tar.gz"))
(sha256
(base32
- "13pbsyk39g1qph82nngp54mqycmg60rxlxwy4yszsssahrqnggb2"))
+ "0isv1cya8iq6ijgg5sshpy3p4j4gs7708n559n9vzy20zbylnhi0"))
(modules '((guix build utils)))
;; Delete bundled jars.
(snippet
--
2.21.0
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply related [flat|nested] 10+ messages in thread
* bug#35570: java-tomcat: Make it the full package
2019-05-04 22:34 [bug#35570] java-tomcat: Make it the full package Björn Höfling
` (7 preceding siblings ...)
2019-05-04 22:42 ` [bug#35570] [PATCH 8/8] gnu: java-tomcat: Update to 8.5.40 Björn Höfling
@ 2019-10-13 20:58 ` Björn Höfling
8 siblings, 0 replies; 10+ messages in thread
From: Björn Höfling @ 2019-10-13 20:58 UTC (permalink / raw)
To: 35570-done; +Cc: Gábor Boskovits
[-- Attachment #1: Type: text/plain, Size: 1315 bytes --]
On Sun, 5 May 2019 00:34:50 +0200
Björn Höfling <bjoern.hoefling@bjoernhoefling.de> wrote:
> The current java-tomcat package is only building the jar-files and
> uses Tomcat only as a servlet-api package. This patch series changes
> it to the "real" package with a bin, conf, ... directory.
>
> If you have a CATALINA_BASE, i.e. a Tomcat instance directory with
> conf, log, webapps, you can start Tomcat like that:
>
> CATALINA_BASE=/home/bjoern/guix/tmp/catalina-home /gnu/store/q5dqsiiwb665jfb6ckcfpw3ijgm4gyh7-java-tomcat-8.5.40/bin/startup.sh
>
> And then navigate to http://localhost:8080/ to view your new site.
>
> The standard Tomcat installation copies the commons-daemon.jar and the
> java-ecj.jar. We better use symlinks to the input package. But these
> would be overridden by a repacking phase: Thus, we need to modify the
> ant-build-system, placing this series into the staging branch.
>
> What's finally outstanding is a tomcat-service.
>
> Björn
Pushed to staging as
d99e7ee0f2bbe4abe08552afaa9821036da2a760
with an update to the latest 8.5.x Tomcat.
Thanks to Gábor for reviewing.
I will continue with getting Tomcat9 in (which needs some more/updated
dependencies) and I plan to write a service for Tomcat, if time admits
me to do so.
Björn
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2019-10-13 20:59 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-05-04 22:34 [bug#35570] java-tomcat: Make it the full package Björn Höfling
2019-05-04 22:37 ` [bug#35570] [PATCH 1/8] gnu: ant-build-system: Don't override symlinks Björn Höfling
2019-05-04 22:37 ` [bug#35570] [PATCH 2/8] gnu: java-javaee-servletapi: Don't use unstable tarball Björn Höfling
2019-05-04 22:38 ` [bug#35570] [PATCH 3/8] gnu: java-javaee-servletapi: Add properties-files to jar Björn Höfling
2019-05-04 22:39 ` [bug#35570] [PATCH 4/8] gnu: Remove dependencies on java-tomcat, use servlet API Björn Höfling
2019-05-04 22:41 ` [bug#35570] [PATCH 5/8] gnu: java-commons-daemon: Update to 1.1.0 Björn Höfling
2019-05-04 22:41 ` [bug#35570] [PATCH 6/8] gnu: Add java-ecj in version 4.6.3 Björn Höfling
2019-05-04 22:42 ` [bug#35570] [PATCH 7/8] gnu: java-tomcat: Build the full Tomcat package Björn Höfling
2019-05-04 22:42 ` [bug#35570] [PATCH 8/8] gnu: java-tomcat: Update to 8.5.40 Björn Höfling
2019-10-13 20:58 ` bug#35570: java-tomcat: Make it the full package Björn Höfling
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).