From 83e980a86f856fff632adb866fe0f29ddcfac322 Mon Sep 17 00:00:00 2001 From: Coty Sutherland Date: Thu, 1 Sep 2022 14:35:49 -0400 Subject: [PATCH 001/124] Cleaning up some unused deps and system properties --- tomcat.spec | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 22e25c2..ad3145e 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -92,8 +92,6 @@ BuildRequires: findutils BuildRequires: java-devel >= 1:1.8.0 BuildRequires: javapackages-local BuildRequires: aqute-bnd -BuildRequires: aqute-bndlib -BuildRequires: wsdl4j BuildRequires: systemd Requires: java-headless >= 1:1.8.0 @@ -224,14 +222,9 @@ touch HACK -Dcommons-daemon.native.win.mgr.exe="HACK" \ -Dnsis.exe="HACK" \ -Djaxrpc-lib.jar="HACK" \ - -Dwsdl4j-lib.jar="$(build-classpath wsdl4j)" \ + -Dwsdl4j-lib.jar="HACK" \ -Dbnd.jar="$(build-classpath aqute-bnd/biz.aQute.bnd)" \ - -Dbndlib.jar="$(build-classpath aqute-bnd/biz.aQute.bndlib)" \ - -Dbndlibg.jar="$(build-classpath aqute-bnd/aQute.libg)" \ - -Dbndannotation.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ -Dosgi-annotations.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ - -Dslf4j-api.jar="$(build-classpath slf4j/slf4j-api)" \ - -Dosgi-cmpn.jar="$(build-classpath osgi-compendium/osgi.cmpn)" \ -Dversion="%{version}" \ -Dversion.build="%{micro_version}" \ deploy @@ -503,6 +496,9 @@ fi %{appdir}/ROOT %changelog +* Thu Sep 01 2022 Coty Sutherland - 1:9.0.65-2 +- Cleaning up some unused deps and system properties + * Thu Jul 21 2022 Hui Wang - 1:9.0.65-1 - Update to 9.0.65 From 3d2c0b3c1d73e4a007b8d1b055175e578c47c1b3 Mon Sep 17 00:00:00 2001 From: Coty Sutherland Date: Thu, 1 Sep 2022 14:35:49 -0400 Subject: [PATCH 002/124] Cleaning up some unused deps and system properties --- tomcat.spec | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 22e25c2..ad3145e 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -92,8 +92,6 @@ BuildRequires: findutils BuildRequires: java-devel >= 1:1.8.0 BuildRequires: javapackages-local BuildRequires: aqute-bnd -BuildRequires: aqute-bndlib -BuildRequires: wsdl4j BuildRequires: systemd Requires: java-headless >= 1:1.8.0 @@ -224,14 +222,9 @@ touch HACK -Dcommons-daemon.native.win.mgr.exe="HACK" \ -Dnsis.exe="HACK" \ -Djaxrpc-lib.jar="HACK" \ - -Dwsdl4j-lib.jar="$(build-classpath wsdl4j)" \ + -Dwsdl4j-lib.jar="HACK" \ -Dbnd.jar="$(build-classpath aqute-bnd/biz.aQute.bnd)" \ - -Dbndlib.jar="$(build-classpath aqute-bnd/biz.aQute.bndlib)" \ - -Dbndlibg.jar="$(build-classpath aqute-bnd/aQute.libg)" \ - -Dbndannotation.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ -Dosgi-annotations.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ - -Dslf4j-api.jar="$(build-classpath slf4j/slf4j-api)" \ - -Dosgi-cmpn.jar="$(build-classpath osgi-compendium/osgi.cmpn)" \ -Dversion="%{version}" \ -Dversion.build="%{micro_version}" \ deploy @@ -503,6 +496,9 @@ fi %{appdir}/ROOT %changelog +* Thu Sep 01 2022 Coty Sutherland - 1:9.0.65-2 +- Cleaning up some unused deps and system properties + * Thu Jul 21 2022 Hui Wang - 1:9.0.65-1 - Update to 9.0.65 From 15ab3c33424a75c3446fcc846fe2243799944d67 Mon Sep 17 00:00:00 2001 From: Coty Sutherland Date: Thu, 1 Sep 2022 15:18:59 -0400 Subject: [PATCH 003/124] java_arches doesn't seem to exist in epel-8 so wrapping it in a conditional --- tomcat.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tomcat.spec b/tomcat.spec index ad3145e..0053c63 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -84,7 +84,9 @@ Patch5: %{name}-%{major_version}.%{minor_version}-JDTCompiler.patch Patch6: %{name}-%{major_version}.%{minor_version}-osgi-annotations.patch BuildArch: noarch +%if 0%{?fedora} || 0%{rhel} >= 9 ExclusiveArch: %{java_arches} noarch +%endif BuildRequires: ant BuildRequires: ecj >= 1:4.10 From d2be8a4737ca92522811439b416fa6b37a95dbeb Mon Sep 17 00:00:00 2001 From: Coty Sutherland Date: Thu, 1 Sep 2022 15:21:31 -0400 Subject: [PATCH 004/124] Fix typo --- tomcat.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tomcat.spec b/tomcat.spec index 0053c63..4884fb0 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -84,7 +84,7 @@ Patch5: %{name}-%{major_version}.%{minor_version}-JDTCompiler.patch Patch6: %{name}-%{major_version}.%{minor_version}-osgi-annotations.patch BuildArch: noarch -%if 0%{?fedora} || 0%{rhel} >= 9 +%if 0%{?fedora} || 0%{?rhel} > 8 ExclusiveArch: %{java_arches} noarch %endif From e15c374184e3240759ce0f34d5882ed37472b1b4 Mon Sep 17 00:00:00 2001 From: Coty Sutherland Date: Thu, 1 Sep 2022 15:56:15 -0400 Subject: [PATCH 005/124] Adding what I think is the missing package for epel8 --- tomcat.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/tomcat.spec b/tomcat.spec index 4884fb0..f3df537 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -226,6 +226,7 @@ touch HACK -Djaxrpc-lib.jar="HACK" \ -Dwsdl4j-lib.jar="HACK" \ -Dbnd.jar="$(build-classpath aqute-bnd/biz.aQute.bnd)" \ + -Dbndlib.jar="$(build-classpath aqute-bnd/biz.aQute.bndlib)" \ -Dosgi-annotations.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ -Dversion="%{version}" \ -Dversion.build="%{micro_version}" \ From 220f81ddb3e46c620a2eeae5732b213bfc62400c Mon Sep 17 00:00:00 2001 From: Coty Sutherland Date: Thu, 1 Sep 2022 15:58:38 -0400 Subject: [PATCH 006/124] Forgot the actual package requires --- tomcat.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/tomcat.spec b/tomcat.spec index f3df537..27ad9f9 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -94,6 +94,7 @@ BuildRequires: findutils BuildRequires: java-devel >= 1:1.8.0 BuildRequires: javapackages-local BuildRequires: aqute-bnd +BuildRequires: aqute-bndlib BuildRequires: systemd Requires: java-headless >= 1:1.8.0 From ebb9b3da2021453aab7849b6216533b59240caca Mon Sep 17 00:00:00 2001 From: Coty Sutherland Date: Thu, 1 Sep 2022 16:10:12 -0400 Subject: [PATCH 007/124] Third times the charm... --- tomcat.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/tomcat.spec b/tomcat.spec index 27ad9f9..b0c344b 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -228,6 +228,7 @@ touch HACK -Dwsdl4j-lib.jar="HACK" \ -Dbnd.jar="$(build-classpath aqute-bnd/biz.aQute.bnd)" \ -Dbndlib.jar="$(build-classpath aqute-bnd/biz.aQute.bndlib)" \ + -Dbndlibg.jar="$(build-classpath aqute-bnd/aQute.libg)" \ -Dosgi-annotations.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ -Dversion="%{version}" \ -Dversion.build="%{micro_version}" \ From 0c7d03abb29219d800a150e9945566f67cce154e Mon Sep 17 00:00:00 2001 From: Coty Sutherland Date: Fri, 2 Sep 2022 09:03:14 -0400 Subject: [PATCH 008/124] Add slf4j back to the classpath for aqute-bnd --- tomcat.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/tomcat.spec b/tomcat.spec index b0c344b..d66d534 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -230,6 +230,7 @@ touch HACK -Dbndlib.jar="$(build-classpath aqute-bnd/biz.aQute.bndlib)" \ -Dbndlibg.jar="$(build-classpath aqute-bnd/aQute.libg)" \ -Dosgi-annotations.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ + -Dslf4j-api.jar="$(build-classpath slf4j/slf4j-api)" \ -Dversion="%{version}" \ -Dversion.build="%{micro_version}" \ deploy From 8ecfecfdca217ea7acc155a7ff285148fb5fa36f Mon Sep 17 00:00:00 2001 From: Coty Sutherland Date: Fri, 2 Sep 2022 12:36:53 -0400 Subject: [PATCH 009/124] Remove some classes that are not provided by the bnd version shipped in el8 This reintroduces two upstream bugs dealing with metadata; see https://bz.apache.org/bugzilla/show_bug.cgi?id=64849 & https://bz.apache.org/bugzilla/show_bug.cgi?id=64751 --- remove-bnd.annotation.spi-classes.patch | 53 +++++++++++++++++++++++++ tomcat.spec | 3 ++ 2 files changed, 56 insertions(+) create mode 100644 remove-bnd.annotation.spi-classes.patch diff --git a/remove-bnd.annotation.spi-classes.patch b/remove-bnd.annotation.spi-classes.patch new file mode 100644 index 0000000..72d75e9 --- /dev/null +++ b/remove-bnd.annotation.spi-classes.patch @@ -0,0 +1,53 @@ +diff -up ./java/org/apache/el/ExpressionFactoryImpl.java.orig ./java/org/apache/el/ExpressionFactoryImpl.java +--- ./java/org/apache/el/ExpressionFactoryImpl.java.orig 2022-09-02 12:32:30.524315631 -0400 ++++ ./java/org/apache/el/ExpressionFactoryImpl.java 2022-09-02 12:34:46.929889802 -0400 +@@ -33,7 +33,6 @@ import org.apache.el.util.MessageFactory + * + * @author Jacob Hookom [jacob@hookom.net] + */ +-@aQute.bnd.annotation.spi.ServiceProvider(value=ExpressionFactory.class) + public class ExpressionFactoryImpl extends ExpressionFactory { + + @Override +diff -up ./java/org/apache/juli/logging/LogFactory.java.orig ./java/org/apache/juli/logging/LogFactory.java +--- ./java/org/apache/juli/logging/LogFactory.java.orig 2022-09-02 12:32:07.898220396 -0400 ++++ ./java/org/apache/juli/logging/LogFactory.java 2022-09-02 12:32:20.824274802 -0400 +@@ -21,8 +21,6 @@ import java.nio.file.FileSystems; + import java.util.ServiceLoader; + import java.util.logging.LogManager; + +-import aQute.bnd.annotation.spi.ServiceConsumer; +- + /** + * This is a modified LogFactory that uses a simple {@link ServiceLoader} based + * discovery mechanism with a default of using JDK based logging. An +@@ -63,7 +61,6 @@ import aQute.bnd.annotation.spi.ServiceC + * @author Costin Manolache + * @author Richard A. Sitze + */ +-@ServiceConsumer(value=org.apache.juli.logging.Log.class) + public class LogFactory { + + private static final LogFactory singleton = new LogFactory(); +diff -up ./java/org/apache/tomcat/websocket/server/DefaultServerEndpointConfigurator.java.orig ./java/org/apache/tomcat/websocket/server/DefaultServerEndpointConfigurator.java +--- ./java/org/apache/tomcat/websocket/server/DefaultServerEndpointConfigurator.java.orig 2022-09-02 12:29:50.926643837 -0400 ++++ ./java/org/apache/tomcat/websocket/server/DefaultServerEndpointConfigurator.java 2022-09-02 12:30:09.789723245 -0400 +@@ -26,7 +26,6 @@ import javax.websocket.HandshakeResponse + import javax.websocket.server.HandshakeRequest; + import javax.websocket.server.ServerEndpointConfig; + +-@aQute.bnd.annotation.spi.ServiceProvider(value=ServerEndpointConfig.Configurator.class) + public class DefaultServerEndpointConfigurator + extends ServerEndpointConfig.Configurator { + +diff -up ./java/org/apache/tomcat/websocket/WsContainerProvider.java.orig ./java/org/apache/tomcat/websocket/WsContainerProvider.java +--- ./java/org/apache/tomcat/websocket/WsContainerProvider.java.orig 2022-09-02 12:30:19.813765442 -0400 ++++ ./java/org/apache/tomcat/websocket/WsContainerProvider.java 2022-09-02 12:30:28.311801214 -0400 +@@ -19,7 +19,6 @@ package org.apache.tomcat.websocket; + import javax.websocket.ContainerProvider; + import javax.websocket.WebSocketContainer; + +-@aQute.bnd.annotation.spi.ServiceProvider(value=ContainerProvider.class) + public class WsContainerProvider extends ContainerProvider { + + @Override diff --git a/tomcat.spec b/tomcat.spec index d66d534..2ed3315 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -82,6 +82,7 @@ Patch3: %{name}-%{major_version}.%{minor_version}-catalina-policy.patch Patch4: rhbz-1857043.patch Patch5: %{name}-%{major_version}.%{minor_version}-JDTCompiler.patch Patch6: %{name}-%{major_version}.%{minor_version}-osgi-annotations.patch +Patch7: remove-bnd.annotation.spi-classes.patch BuildArch: noarch %if 0%{?fedora} || 0%{?rhel} > 8 @@ -195,6 +196,7 @@ find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name " %patch4 -p0 %patch5 -p0 %patch6 -p0 +%patch7 -p0 # Remove webservices naming resources as it's generally unused %{__rm} -rf java/org/apache/naming/factory/webservices @@ -504,6 +506,7 @@ fi %changelog * Thu Sep 01 2022 Coty Sutherland - 1:9.0.65-2 - Cleaning up some unused deps and system properties +- Remove some classes that are not provided by the bnd version shipped in el8 * Thu Jul 21 2022 Hui Wang - 1:9.0.65-1 - Update to 9.0.65 From 69cd4bb9acc0079f69c37aade6f319126d7c4a4c Mon Sep 17 00:00:00 2001 From: Coty Sutherland Date: Fri, 2 Sep 2022 14:24:57 -0400 Subject: [PATCH 010/124] Add some conditional logic that applies changes only to epel8 so that I can merge this with epel9 --- tomcat.spec | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 2ed3315..47bfcc2 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -196,7 +196,9 @@ find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name " %patch4 -p0 %patch5 -p0 %patch6 -p0 +%if 0%{?rhel} == 8 %patch7 -p0 +%endif # Remove webservices naming resources as it's generally unused %{__rm} -rf java/org/apache/naming/factory/webservices @@ -229,10 +231,12 @@ touch HACK -Djaxrpc-lib.jar="HACK" \ -Dwsdl4j-lib.jar="HACK" \ -Dbnd.jar="$(build-classpath aqute-bnd/biz.aQute.bnd)" \ + -Dosgi-annotations.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ +%if 0%{?rhel} == 8 -Dbndlib.jar="$(build-classpath aqute-bnd/biz.aQute.bndlib)" \ -Dbndlibg.jar="$(build-classpath aqute-bnd/aQute.libg)" \ - -Dosgi-annotations.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ -Dslf4j-api.jar="$(build-classpath slf4j/slf4j-api)" \ +%endif -Dversion="%{version}" \ -Dversion.build="%{micro_version}" \ deploy @@ -506,7 +510,8 @@ fi %changelog * Thu Sep 01 2022 Coty Sutherland - 1:9.0.65-2 - Cleaning up some unused deps and system properties -- Remove some classes that are not provided by the bnd version shipped in el8 +- Conditionally remove some classes that are not provided by the bnd + version shipped in el8 * Thu Jul 21 2022 Hui Wang - 1:9.0.65-1 - Update to 9.0.65 From 8e4906e924e855514fd1bf7db251bcba4868437e Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Tue, 8 Nov 2022 16:50:53 +0800 Subject: [PATCH 011/124] Update tomcat to 9.0.68 --- sources | 2 +- tomcat-9.0-catalina-policy.patch | 9 ++++----- tomcat-9.0-osgi-annotations.patch | 4 ++-- tomcat.spec | 17 ++++++++++++----- 4 files changed, 19 insertions(+), 13 deletions(-) diff --git a/sources b/sources index 78df857..5c55728 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.65-src.tar.gz) = 3ff344370cc36f5bed389ed198054783a4f5bc86476a751cda280618457a06bae38c1e764b0c110c2f68efe2d34243a4e24596e8b90e8fbd171bf584a22fd3bc +SHA512 (apache-tomcat-9.0.68-src.tar.gz) = 63bb2c42f683c4c5e362b19bda046de172382714e80298106c61cc728feea9681b568450f04cb95d6cae08e5a71933c7755b9b81b706c46d63f4683c2a3a96be diff --git a/tomcat-9.0-catalina-policy.patch b/tomcat-9.0-catalina-policy.patch index 0211e70..dd6a47d 100644 --- a/tomcat-9.0-catalina-policy.patch +++ b/tomcat-9.0-catalina-policy.patch @@ -1,6 +1,6 @@ ---- conf/catalina.policy.orig 2021-07-07 10:25:53.461393329 +0800 -+++ conf/catalina.policy 2021-07-07 10:27:47.688682404 +0800 -@@ -56,6 +56,16 @@ grant codeBase "file:${java.home}/lib/ex +--- conf/catalina.policy.orig 2022-11-04 16:17:41.227506990 +0800 ++++ conf/catalina.policy 2022-11-04 16:21:51.393351415 +0800 +@@ -56,6 +56,15 @@ grant codeBase "file:${java.home}/lib/ex // permission java.security.AllPermission; //}; @@ -13,11 +13,10 @@ +grant codeBase "file:/usr/share/java/ecj/ecj.jar" { + permission java.security.AllPermission; +}; -+ // ========== CATALINA CODE PERMISSIONS ======================================= -@@ -261,4 +271,4 @@ grant codeBase "file:${catalina.home}/we +@@ -261,4 +270,4 @@ grant codeBase "file:${catalina.home}/we // // The permissions granted to a specific JAR // grant codeBase "war:file:${catalina.base}/webapps/examples.war*/WEB-INF/lib/foo.jar" { diff --git a/tomcat-9.0-osgi-annotations.patch b/tomcat-9.0-osgi-annotations.patch index c68708a..c70b463 100644 --- a/tomcat-9.0-osgi-annotations.patch +++ b/tomcat-9.0-osgi-annotations.patch @@ -1,6 +1,6 @@ --- build.properties.default.orig 2022-06-21 20:30:04.498997718 +0800 +++ build.properties.default 2022-06-21 20:30:57.579522800 +0800 -@@ -308,6 +308,16 @@ bnd.home=${base.path}/bnd-${bnd.version} +@@ -309,6 +309,16 @@ bnd.home=${base.path}/bnd-${bnd.version} bnd.jar=${bnd.home}/biz.aQute.bnd-${bnd.version}.jar bnd.loc=${base-maven.loc}/biz/aQute/bnd/biz.aQute.bnd/${bnd.version}/biz.aQute.bnd-${bnd.version}.jar @@ -15,7 +15,7 @@ +osgi-annotations.loc=${base-maven.loc}/org/osgi/org.osgi.annotation.bundle/${osgi-annotations.version}/org.osgi.annotation.bundle-${osgi-annotations.version}.jar + # ----- JSign, version 4.1 or later ----- - jsign.version=4.1 + jsign.version=4.2 --- build.xml.orig 2022-06-21 20:36:12.785560093 +0800 +++ build.xml 2022-06-21 20:40:41.155154959 +0800 diff --git a/tomcat.spec b/tomcat.spec index ad3145e..7acea9b 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 65 +%global micro_version 68 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 2%{?dist} +Release: 1%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -92,6 +92,8 @@ BuildRequires: findutils BuildRequires: java-devel >= 1:1.8.0 BuildRequires: javapackages-local BuildRequires: aqute-bnd +BuildRequires: aqute-bndlib +BuildRequires: wsdl4j BuildRequires: systemd Requires: java-headless >= 1:1.8.0 @@ -222,9 +224,14 @@ touch HACK -Dcommons-daemon.native.win.mgr.exe="HACK" \ -Dnsis.exe="HACK" \ -Djaxrpc-lib.jar="HACK" \ - -Dwsdl4j-lib.jar="HACK" \ + -Dwsdl4j-lib.jar="$(build-classpath wsdl4j)" \ -Dbnd.jar="$(build-classpath aqute-bnd/biz.aQute.bnd)" \ + -Dbndlib.jar="$(build-classpath aqute-bnd/biz.aQute.bndlib)" \ + -Dbndlibg.jar="$(build-classpath aqute-bnd/aQute.libg)" \ + -Dbndannotation.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ -Dosgi-annotations.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ + -Dslf4j-api.jar="$(build-classpath slf4j/slf4j-api)" \ + -Dosgi-cmpn.jar="$(build-classpath osgi-compendium/osgi.cmpn)" \ -Dversion="%{version}" \ -Dversion.build="%{micro_version}" \ deploy @@ -496,8 +503,8 @@ fi %{appdir}/ROOT %changelog -* Thu Sep 01 2022 Coty Sutherland - 1:9.0.65-2 -- Cleaning up some unused deps and system properties +* Thu Nov 03 2033 Hui Wang - 1:9.0.68-1 +- Update to 9.0.68 * Thu Jul 21 2022 Hui Wang - 1:9.0.65-1 - Update to 9.0.65 From f1660807811a5b94ea5ac6ed4e201db6e64c3d3c Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Fri, 13 Jan 2023 19:25:32 +0800 Subject: [PATCH 012/124] Update tomcat to 9.0.70 --- sources | 2 +- tomcat.spec | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/sources b/sources index 5c55728..e456e94 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.68-src.tar.gz) = 63bb2c42f683c4c5e362b19bda046de172382714e80298106c61cc728feea9681b568450f04cb95d6cae08e5a71933c7755b9b81b706c46d63f4683c2a3a96be +SHA512 (apache-tomcat-9.0.70-src.tar.gz) = 266ffbdfa57bd9778ea3485f5e2cabf9a2d389235afa74b154e684bcf2806a4fe7a54049f2bd8ea96414396d06695fe890b1eed9672278d9eb345ba3cd71032e diff --git a/tomcat.spec b/tomcat.spec index 7acea9b..d86c64b 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 68 +%global micro_version 70 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -503,7 +503,10 @@ fi %{appdir}/ROOT %changelog -* Thu Nov 03 2033 Hui Wang - 1:9.0.68-1 +* Fri Jan 13 2023 Hui Wang - 1:9.0.70-1 +- Update to 9.0.70 + +* Thu Nov 03 2022 Hui Wang - 1:9.0.68-1 - Update to 9.0.68 * Thu Jul 21 2022 Hui Wang - 1:9.0.65-1 From 98bac20b8ce7cd84c76a83aa0fb35b61d2626618 Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Fri, 13 Jan 2023 21:44:27 +0800 Subject: [PATCH 013/124] Update to 9.0.70 --- sources | 2 +- tomcat-9.0-osgi-annotations.patch | 4 ++-- tomcat.spec | 7 +++++-- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/sources b/sources index 78df857..e456e94 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.65-src.tar.gz) = 3ff344370cc36f5bed389ed198054783a4f5bc86476a751cda280618457a06bae38c1e764b0c110c2f68efe2d34243a4e24596e8b90e8fbd171bf584a22fd3bc +SHA512 (apache-tomcat-9.0.70-src.tar.gz) = 266ffbdfa57bd9778ea3485f5e2cabf9a2d389235afa74b154e684bcf2806a4fe7a54049f2bd8ea96414396d06695fe890b1eed9672278d9eb345ba3cd71032e diff --git a/tomcat-9.0-osgi-annotations.patch b/tomcat-9.0-osgi-annotations.patch index c68708a..c70b463 100644 --- a/tomcat-9.0-osgi-annotations.patch +++ b/tomcat-9.0-osgi-annotations.patch @@ -1,6 +1,6 @@ --- build.properties.default.orig 2022-06-21 20:30:04.498997718 +0800 +++ build.properties.default 2022-06-21 20:30:57.579522800 +0800 -@@ -308,6 +308,16 @@ bnd.home=${base.path}/bnd-${bnd.version} +@@ -309,6 +309,16 @@ bnd.home=${base.path}/bnd-${bnd.version} bnd.jar=${bnd.home}/biz.aQute.bnd-${bnd.version}.jar bnd.loc=${base-maven.loc}/biz/aQute/bnd/biz.aQute.bnd/${bnd.version}/biz.aQute.bnd-${bnd.version}.jar @@ -15,7 +15,7 @@ +osgi-annotations.loc=${base-maven.loc}/org/osgi/org.osgi.annotation.bundle/${osgi-annotations.version}/org.osgi.annotation.bundle-${osgi-annotations.version}.jar + # ----- JSign, version 4.1 or later ----- - jsign.version=4.1 + jsign.version=4.2 --- build.xml.orig 2022-06-21 20:36:12.785560093 +0800 +++ build.xml 2022-06-21 20:40:41.155154959 +0800 diff --git a/tomcat.spec b/tomcat.spec index 47bfcc2..0728be1 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 65 +%global micro_version 70 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 2%{?dist} +Release: 1%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -508,6 +508,9 @@ fi %{appdir}/ROOT %changelog +* Fri Jan 13 2023 Hui Wang - 1:9.0.70-1 +- Update to 9.0.70 + * Thu Sep 01 2022 Coty Sutherland - 1:9.0.65-2 - Cleaning up some unused deps and system properties - Conditionally remove some classes that are not provided by the bnd From 3d349e6aeafcabfd53be4239c7b951ada14b7f5b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 21 Jan 2023 05:15:06 +0000 Subject: [PATCH 014/124] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- tomcat.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tomcat.spec b/tomcat.spec index d86c64b..932e42d 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -503,6 +503,9 @@ fi %{appdir}/ROOT %changelog +* Sat Jan 21 2023 Fedora Release Engineering - 1:9.0.70-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Fri Jan 13 2023 Hui Wang - 1:9.0.70-1 - Update to 9.0.70 From 06d3a3141584885d8416da02c4124539cdc229c3 Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Sun, 29 Jan 2023 19:23:32 +0800 Subject: [PATCH 015/124] Update to 9.0.71 Remove osgi-annotations patch Add bnd annotation dependency which is in bndlib package --- tomcat-9.0-bnd-annotation.patch | 10 +++++ tomcat-9.0-osgi-annotations.patch | 66 ------------------------------- tomcat.spec | 22 +++++------ 3 files changed, 20 insertions(+), 78 deletions(-) create mode 100644 tomcat-9.0-bnd-annotation.patch delete mode 100644 tomcat-9.0-osgi-annotations.patch diff --git a/tomcat-9.0-bnd-annotation.patch b/tomcat-9.0-bnd-annotation.patch new file mode 100644 index 0000000..9d57c81 --- /dev/null +++ b/tomcat-9.0-bnd-annotation.patch @@ -0,0 +1,10 @@ +--- build.xml.orig 2023-01-29 17:38:29.477052402 +0800 ++++ build.xml 2023-01-29 17:42:03.369583841 +0800 +@@ -216,6 +216,7 @@ + + + ++ + + + diff --git a/tomcat-9.0-osgi-annotations.patch b/tomcat-9.0-osgi-annotations.patch deleted file mode 100644 index c70b463..0000000 --- a/tomcat-9.0-osgi-annotations.patch +++ /dev/null @@ -1,66 +0,0 @@ ---- build.properties.default.orig 2022-06-21 20:30:04.498997718 +0800 -+++ build.properties.default 2022-06-21 20:30:57.579522800 +0800 -@@ -309,6 +309,16 @@ bnd.home=${base.path}/bnd-${bnd.version} - bnd.jar=${bnd.home}/biz.aQute.bnd-${bnd.version}.jar - bnd.loc=${base-maven.loc}/biz/aQute/bnd/biz.aQute.bnd/${bnd.version}/biz.aQute.bnd-${bnd.version}.jar - -+# ----- OSGi annotations bundle, version 1.0.0 or later ----- -+# ----- required to avoid Javadoc error when using bnd annotations ----- -+osgi-annotations.version=1.1.1 -+osgi-annotations.checksum.enabled=true -+osgi-annotations.checksum.algorithm=MD5|SHA-1 -+osgi-annotations.checksum.value=04e5db48a469cb53dd0e4e954deab2e0|a1644f3dbbb614f2a44671d27dd13c4d9142007d -+osgi-annotations.home=${base.path}/osgi-annotations-${osgi-annotations.version} -+osgi-annotations.jar=${osgi-annotations.home}/org.osgi.annotation.bundle-${osgi-annotations.version}.jar -+osgi-annotations.loc=${base-maven.loc}/org/osgi/org.osgi.annotation.bundle/${osgi-annotations.version}/org.osgi.annotation.bundle-${osgi-annotations.version}.jar -+ - # ----- JSign, version 4.1 or later ----- - jsign.version=4.2 - ---- build.xml.orig 2022-06-21 20:36:12.785560093 +0800 -+++ build.xml 2022-06-21 20:40:41.155154959 +0800 -@@ -213,6 +213,7 @@ - - - -+ - - - -@@ -2270,7 +2271,8 @@ Apache Tomcat ${version} native binaries - failonwarning="true"> - - -- -+ -+ - - - -@@ -3671,12 +3673,26 @@ Read the Building page on the Apache Tom - - - -+ -+ -+ -+ -+ -+ -+ -+ -+ - - - - - - -+ -+ -+ -+ -+ - - - diff --git a/tomcat.spec b/tomcat.spec index 932e42d..0e194dd 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 70 +%global micro_version 71 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 2%{?dist} +Release: 1%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -81,7 +81,7 @@ Patch2: %{name}-build.patch Patch3: %{name}-%{major_version}.%{minor_version}-catalina-policy.patch Patch4: rhbz-1857043.patch Patch5: %{name}-%{major_version}.%{minor_version}-JDTCompiler.patch -Patch6: %{name}-%{major_version}.%{minor_version}-osgi-annotations.patch +Patch6: %{name}-%{major_version}.%{minor_version}-bnd-annotation.patch BuildArch: noarch ExclusiveArch: %{java_arches} noarch @@ -93,12 +93,10 @@ BuildRequires: java-devel >= 1:1.8.0 BuildRequires: javapackages-local BuildRequires: aqute-bnd BuildRequires: aqute-bndlib -BuildRequires: wsdl4j BuildRequires: systemd Requires: java-headless >= 1:1.8.0 Requires: javapackages-tools -Requires: procps Requires: %{name}-lib = %{epoch}:%{version}-%{release} %if 0%{?fedora} || 0%{?rhel} > 7 Recommends: tomcat-native >= %{native_version} @@ -224,14 +222,9 @@ touch HACK -Dcommons-daemon.native.win.mgr.exe="HACK" \ -Dnsis.exe="HACK" \ -Djaxrpc-lib.jar="HACK" \ - -Dwsdl4j-lib.jar="$(build-classpath wsdl4j)" \ + -Dwsdl4j-lib.jar="HACK" \ -Dbnd.jar="$(build-classpath aqute-bnd/biz.aQute.bnd)" \ - -Dbndlib.jar="$(build-classpath aqute-bnd/biz.aQute.bndlib)" \ - -Dbndlibg.jar="$(build-classpath aqute-bnd/aQute.libg)" \ - -Dbndannotation.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ - -Dosgi-annotations.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ - -Dslf4j-api.jar="$(build-classpath slf4j/slf4j-api)" \ - -Dosgi-cmpn.jar="$(build-classpath osgi-compendium/osgi.cmpn)" \ + -Dbnd-annotation.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ -Dversion="%{version}" \ -Dversion.build="%{micro_version}" \ deploy @@ -503,6 +496,11 @@ fi %{appdir}/ROOT %changelog +* Sun Jan 29 2023 Hui Wang - 1:9.0.71-1 +- Update to 9.0.71 +- Remove osgi-annotations patch +- Add bnd-annotation dependency which is in bndlib package + * Sat Jan 21 2023 Fedora Release Engineering - 1:9.0.70-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From 013888a3ae3d51a70673472c883df7d66cbd4ce2 Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Sun, 29 Jan 2023 19:31:45 +0800 Subject: [PATCH 016/124] Upload 9.0.72 source --- sources | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources b/sources index e456e94..fa93e4d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.70-src.tar.gz) = 266ffbdfa57bd9778ea3485f5e2cabf9a2d389235afa74b154e684bcf2806a4fe7a54049f2bd8ea96414396d06695fe890b1eed9672278d9eb345ba3cd71032e +SHA512 (apache-tomcat-9.0.71-src.tar.gz) = 0c62a5e526178e39c68717223ce2cb4a31096e5765b718639e4ba4bbf3d70ba28238cd1bb5cf74747f718b35baf98de32c7ee8a7ebd445c6191700070c1ca930 From 2145287741463cc2fd7e1fefd84cdb004d38d05f Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Fri, 17 Mar 2023 17:05:19 +0800 Subject: [PATCH 017/124] Update to 9.0.73 --- sources | 2 +- tomcat.spec | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/sources b/sources index fa93e4d..261d4f4 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.71-src.tar.gz) = 0c62a5e526178e39c68717223ce2cb4a31096e5765b718639e4ba4bbf3d70ba28238cd1bb5cf74747f718b35baf98de32c7ee8a7ebd445c6191700070c1ca930 +SHA512 (apache-tomcat-9.0.73-src.tar.gz) = 1691a0087ceaf2100ce17fe9b9a973d079c39b20effbe0c0d68f92d2684a681e001b0c2b8bde40c289754ac02ba02f9eb4dfac617fccb8f451c96dfdd4741237 diff --git a/tomcat.spec b/tomcat.spec index 0e194dd..f89963e 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 71 +%global micro_version 73 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -496,6 +496,9 @@ fi %{appdir}/ROOT %changelog +* Fri Mar 17 2023 Hui Wang - 1:9.0.73-1 +- Update to 9.0.73 + * Sun Jan 29 2023 Hui Wang - 1:9.0.71-1 - Update to 9.0.71 - Remove osgi-annotations patch From 616cc662dc96d2b46cf6d3d75b789c30b5fb95b7 Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Wed, 31 May 2023 19:38:10 +0800 Subject: [PATCH 018/124] Resolves: #2168636 Remove tomcat from epel9 because tomcat is being added to RHEL 9.2 --- .gitignore | 4 - dead.package | 1 + java-9-start-up-parameters.conf | 7 - remove-bnd.annotation.spi-classes.patch | 53 -- rhbz-1857043.patch | 200 ----- sources | 1 - tomcat-9.0-JDTCompiler.patch | 24 - tomcat-9.0-bootstrap-MANIFEST.MF.patch | 9 - tomcat-9.0-catalina-policy.patch | 26 - tomcat-9.0-digest.script | 45 - tomcat-9.0-log4j.properties | 11 - tomcat-9.0-osgi-annotations.patch | 66 -- tomcat-9.0-tomcat-users-webapp.patch | 17 - tomcat-9.0-tool-wrapper.script | 45 - tomcat-9.0.conf | 51 -- tomcat-9.0.logrotate | 11 - tomcat-9.0.service | 20 - tomcat-9.0.sysconfig | 11 - tomcat-9.0.wrapper | 24 - tomcat-build.patch | 12 - tomcat-functions | 42 - tomcat-named.service | 24 - tomcat-preamble | 52 -- tomcat-server | 25 - tomcat.spec | 1059 ----------------------- 25 files changed, 1 insertion(+), 1839 deletions(-) delete mode 100644 .gitignore create mode 100644 dead.package delete mode 100644 java-9-start-up-parameters.conf delete mode 100644 remove-bnd.annotation.spi-classes.patch delete mode 100644 rhbz-1857043.patch delete mode 100644 sources delete mode 100644 tomcat-9.0-JDTCompiler.patch delete mode 100644 tomcat-9.0-bootstrap-MANIFEST.MF.patch delete mode 100644 tomcat-9.0-catalina-policy.patch delete mode 100644 tomcat-9.0-digest.script delete mode 100644 tomcat-9.0-log4j.properties delete mode 100644 tomcat-9.0-osgi-annotations.patch delete mode 100644 tomcat-9.0-tomcat-users-webapp.patch delete mode 100644 tomcat-9.0-tool-wrapper.script delete mode 100644 tomcat-9.0.conf delete mode 100644 tomcat-9.0.logrotate delete mode 100644 tomcat-9.0.service delete mode 100644 tomcat-9.0.sysconfig delete mode 100644 tomcat-9.0.wrapper delete mode 100644 tomcat-build.patch delete mode 100644 tomcat-functions delete mode 100644 tomcat-named.service delete mode 100644 tomcat-preamble delete mode 100644 tomcat-server delete mode 100644 tomcat.spec diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 471c3e4..0000000 --- a/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -apache-tomcat-*-src.tar.gz -results_tomcat -tomcat*.src.rpm -apache-tomcat-*-src/ diff --git a/dead.package b/dead.package new file mode 100644 index 0000000..d066881 --- /dev/null +++ b/dead.package @@ -0,0 +1 @@ +Resolves: #2168636 Remove tomcat from epel9 because tomcat is being added to RHEL 9.2 diff --git a/java-9-start-up-parameters.conf b/java-9-start-up-parameters.conf deleted file mode 100644 index 341e077..0000000 --- a/java-9-start-up-parameters.conf +++ /dev/null @@ -1,7 +0,0 @@ -# Add the JAVA 9 specific start-up parameters required by Tomcat -JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.base/java.lang=ALL-UNNAMED" -JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.base/java.io=ALL-UNNAMED" -JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.base/java.util=ALL-UNNAMED" -JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.base/java.util.concurrent=ALL-UNNAMED" -JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED" -export JDK_JAVA_OPTIONS diff --git a/remove-bnd.annotation.spi-classes.patch b/remove-bnd.annotation.spi-classes.patch deleted file mode 100644 index 72d75e9..0000000 --- a/remove-bnd.annotation.spi-classes.patch +++ /dev/null @@ -1,53 +0,0 @@ -diff -up ./java/org/apache/el/ExpressionFactoryImpl.java.orig ./java/org/apache/el/ExpressionFactoryImpl.java ---- ./java/org/apache/el/ExpressionFactoryImpl.java.orig 2022-09-02 12:32:30.524315631 -0400 -+++ ./java/org/apache/el/ExpressionFactoryImpl.java 2022-09-02 12:34:46.929889802 -0400 -@@ -33,7 +33,6 @@ import org.apache.el.util.MessageFactory - * - * @author Jacob Hookom [jacob@hookom.net] - */ --@aQute.bnd.annotation.spi.ServiceProvider(value=ExpressionFactory.class) - public class ExpressionFactoryImpl extends ExpressionFactory { - - @Override -diff -up ./java/org/apache/juli/logging/LogFactory.java.orig ./java/org/apache/juli/logging/LogFactory.java ---- ./java/org/apache/juli/logging/LogFactory.java.orig 2022-09-02 12:32:07.898220396 -0400 -+++ ./java/org/apache/juli/logging/LogFactory.java 2022-09-02 12:32:20.824274802 -0400 -@@ -21,8 +21,6 @@ import java.nio.file.FileSystems; - import java.util.ServiceLoader; - import java.util.logging.LogManager; - --import aQute.bnd.annotation.spi.ServiceConsumer; -- - /** - * This is a modified LogFactory that uses a simple {@link ServiceLoader} based - * discovery mechanism with a default of using JDK based logging. An -@@ -63,7 +61,6 @@ import aQute.bnd.annotation.spi.ServiceC - * @author Costin Manolache - * @author Richard A. Sitze - */ --@ServiceConsumer(value=org.apache.juli.logging.Log.class) - public class LogFactory { - - private static final LogFactory singleton = new LogFactory(); -diff -up ./java/org/apache/tomcat/websocket/server/DefaultServerEndpointConfigurator.java.orig ./java/org/apache/tomcat/websocket/server/DefaultServerEndpointConfigurator.java ---- ./java/org/apache/tomcat/websocket/server/DefaultServerEndpointConfigurator.java.orig 2022-09-02 12:29:50.926643837 -0400 -+++ ./java/org/apache/tomcat/websocket/server/DefaultServerEndpointConfigurator.java 2022-09-02 12:30:09.789723245 -0400 -@@ -26,7 +26,6 @@ import javax.websocket.HandshakeResponse - import javax.websocket.server.HandshakeRequest; - import javax.websocket.server.ServerEndpointConfig; - --@aQute.bnd.annotation.spi.ServiceProvider(value=ServerEndpointConfig.Configurator.class) - public class DefaultServerEndpointConfigurator - extends ServerEndpointConfig.Configurator { - -diff -up ./java/org/apache/tomcat/websocket/WsContainerProvider.java.orig ./java/org/apache/tomcat/websocket/WsContainerProvider.java ---- ./java/org/apache/tomcat/websocket/WsContainerProvider.java.orig 2022-09-02 12:30:19.813765442 -0400 -+++ ./java/org/apache/tomcat/websocket/WsContainerProvider.java 2022-09-02 12:30:28.311801214 -0400 -@@ -19,7 +19,6 @@ package org.apache.tomcat.websocket; - import javax.websocket.ContainerProvider; - import javax.websocket.WebSocketContainer; - --@aQute.bnd.annotation.spi.ServiceProvider(value=ContainerProvider.class) - public class WsContainerProvider extends ContainerProvider { - - @Override diff --git a/rhbz-1857043.patch b/rhbz-1857043.patch deleted file mode 100644 index dd74c3b..0000000 --- a/rhbz-1857043.patch +++ /dev/null @@ -1,200 +0,0 @@ -diff -up ./build.xml.orig ./build.xml ---- build.xml.orig 2021-07-07 10:53:55.493742841 +0800 -+++ build.xml 2021-07-07 11:09:43.107968515 +0800 -@@ -1020,7 +1020,7 @@ - filesDir="${tomcat.classes}" - filesId="files.annotations-api" - manifest="${tomcat.manifests}/annotations-api.jar.manifest" -- addOSGi="true" /> -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - -+ addOSGi="false" /> - - - - -# Source functions library -if [ -f /usr/share/java-utils/java-functions ] ; then - . /usr/share/java-utils/java-functions -else - echo "Can't find functions library, aborting" - exit 1 -fi - -# Get the tomcat config (use this for environment specific settings) -if [ -z "${TOMCAT_CFG}" ]; then - TOMCAT_CFG="/etc/tomcat/tomcat.conf" -fi - -if [ -r "$TOMCAT_CFG" ]; then - . $TOMCAT_CFG -fi - -set_javacmd - -# CLASSPATH munging -if [ -n "$JSSE_HOME" ]; then - CLASSPATH="${CLASSPATH}:$(build-classpath jcert jnet jsse 2>/dev/null)" -fi -CLASSPATH="${CLASSPATH}:${CATALINA_HOME}/bin/bootstrap.jar" -CLASSPATH="${CLASSPATH}:${CATALINA_HOME}/bin/tomcat-juli.jar" -export CLASSPATH - -# Configuration -MAIN_CLASS="org.apache.catalina.startup.Tool" -BASE_FLAGS="-Dcatalina.home=\"$CATALINA_HOME\"" -BASE_OPTIONS="" -BASE_JARS="commons-daemon tomcat/catalina servlet tomcat/tomcat-util tomcat/tomcat-coyote tomcat/tomcat-api tomcat/tomcat-util-scan" - -# Set parameters -set_classpath $BASE_JARS -set_flags $BASE_FLAGS -set_options $BASE_OPTIONS - -# Let's start -run -server org.apache.catalina.realm.RealmBase "$@" diff --git a/tomcat-9.0-log4j.properties b/tomcat-9.0-log4j.properties deleted file mode 100644 index dfc2309..0000000 --- a/tomcat-9.0-log4j.properties +++ /dev/null @@ -1,11 +0,0 @@ -log4j.rootLogger=debug, R -log4j.appender.R=org.apache.log4j.RollingFileAppender -log4j.appender.R.File=${catalina.base}/logs/tomcat.log -log4j.appender.R.MaxFileSize=10MB -log4j.appender.R.MaxBackupIndex=10 -log4j.appender.R.layout=org.apache.log4j.PatternLayout -log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n -log4j.logger.org.apache.catalina=DEBUG, R -log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost]=DEBUG, R -log4j.logger.org.apache.catalina.core=DEBUG, R -log4j.logger.org.apache.catalina.session=DEBUG, R diff --git a/tomcat-9.0-osgi-annotations.patch b/tomcat-9.0-osgi-annotations.patch deleted file mode 100644 index c70b463..0000000 --- a/tomcat-9.0-osgi-annotations.patch +++ /dev/null @@ -1,66 +0,0 @@ ---- build.properties.default.orig 2022-06-21 20:30:04.498997718 +0800 -+++ build.properties.default 2022-06-21 20:30:57.579522800 +0800 -@@ -309,6 +309,16 @@ bnd.home=${base.path}/bnd-${bnd.version} - bnd.jar=${bnd.home}/biz.aQute.bnd-${bnd.version}.jar - bnd.loc=${base-maven.loc}/biz/aQute/bnd/biz.aQute.bnd/${bnd.version}/biz.aQute.bnd-${bnd.version}.jar - -+# ----- OSGi annotations bundle, version 1.0.0 or later ----- -+# ----- required to avoid Javadoc error when using bnd annotations ----- -+osgi-annotations.version=1.1.1 -+osgi-annotations.checksum.enabled=true -+osgi-annotations.checksum.algorithm=MD5|SHA-1 -+osgi-annotations.checksum.value=04e5db48a469cb53dd0e4e954deab2e0|a1644f3dbbb614f2a44671d27dd13c4d9142007d -+osgi-annotations.home=${base.path}/osgi-annotations-${osgi-annotations.version} -+osgi-annotations.jar=${osgi-annotations.home}/org.osgi.annotation.bundle-${osgi-annotations.version}.jar -+osgi-annotations.loc=${base-maven.loc}/org/osgi/org.osgi.annotation.bundle/${osgi-annotations.version}/org.osgi.annotation.bundle-${osgi-annotations.version}.jar -+ - # ----- JSign, version 4.1 or later ----- - jsign.version=4.2 - ---- build.xml.orig 2022-06-21 20:36:12.785560093 +0800 -+++ build.xml 2022-06-21 20:40:41.155154959 +0800 -@@ -213,6 +213,7 @@ - - - -+ - - - -@@ -2270,7 +2271,8 @@ Apache Tomcat ${version} native binaries - failonwarning="true"> - - -- -+ -+ - - - -@@ -3671,12 +3673,26 @@ Read the Building page on the Apache Tom - - - -+ -+ -+ -+ -+ -+ -+ -+ -+ - - - - - - -+ -+ -+ -+ -+ - - - diff --git a/tomcat-9.0-tomcat-users-webapp.patch b/tomcat-9.0-tomcat-users-webapp.patch deleted file mode 100644 index 85b8b9b..0000000 --- a/tomcat-9.0-tomcat-users-webapp.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- conf/tomcat-users.xml~ 2008-01-28 17:41:06.000000000 -0500 -+++ conf/tomcat-users.xml 2008-03-07 19:40:07.000000000 -0500 -@@ -53,4 +53,14 @@ - - - --> -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ - diff --git a/tomcat-9.0-tool-wrapper.script b/tomcat-9.0-tool-wrapper.script deleted file mode 100644 index 949d46d..0000000 --- a/tomcat-9.0-tool-wrapper.script +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/sh -# -# tomcat-digest script -# JPackage Project - -# Source functions library -if [ -f /usr/share/java-utils/java-functions ] ; then - . /usr/share/java-utils/java-functions -else - echo "Can't find functions library, aborting" - exit 1 -fi - -# Get the tomcat config (use this for environment specific settings) -if [ -z "${TOMCAT_CFG}" ]; then - TOMCAT_CFG="/etc/tomcat/tomcat.conf" -fi - -if [ -r "$TOMCAT_CFG" ]; then - . $TOMCAT_CFG -fi - -set_javacmd - -# CLASSPATH munging -if [ -n "$JSSE_HOME" ]; then - CLASSPATH="${CLASSPATH}:$(build-classpath jcert jnet jsse 2>/dev/null)" -fi -CLASSPATH="${CLASSPATH}:${CATALINA_HOME}/bin/bootstrap.jar" -CLASSPATH="${CLASSPATH}:${CATALINA_HOME}/bin/tomcat-juli.jar" -export CLASSPATH - -# Configuration -MAIN_CLASS="org.apache.catalina.startup.Tool" -BASE_OPTIONS="" -BASE_FLAGS="-Dcatalina.home=\"$CATALINA_HOME\"" -BASE_JARS="commons-daemon tomcat/catalina servlet tomcat/tomcat-util tomcat/tomcat-coyote tomcat/tomcat-api tomcat/tomcat-util-scan" - -# Set parameters -set_classpath $BASE_JARS -set_flags $BASE_FLAGS -set_options $BASE_OPTIONS - -# Let's start -run "$@" diff --git a/tomcat-9.0.conf b/tomcat-9.0.conf deleted file mode 100644 index e5fa60a..0000000 --- a/tomcat-9.0.conf +++ /dev/null @@ -1,51 +0,0 @@ -# System-wide configuration file for tomcat services -# This will be loaded by systemd as an environment file, -# so please keep the syntax. For shell expansion support -# place your custom files as /etc/tomcat/conf.d/*.conf -# -# There are 2 "classes" of startup behavior in this package. -# The old one, the default service named tomcat.service. -# The new named instances are called tomcat@instance.service. -# -# Use this file to change default values for all services. -# Change the service specific ones to affect only one service. -# For tomcat.service it's /etc/sysconfig/tomcat, for -# tomcat@instance it's /etc/sysconfig/tomcat@instance. - -# This variable is used to figure out if config is loaded or not. -TOMCAT_CFG_LOADED="1" - -# In new-style instances, if CATALINA_BASE isn't specified, it will -# be constructed by joining TOMCATS_BASE and NAME. -TOMCATS_BASE="/var/lib/tomcats/" - -# Where your java installation lives -JAVA_HOME="/usr/lib/jvm/jre" - -# Where your tomcat installation lives -CATALINA_HOME="@@@TCHOME@@@" - -# System-wide tmp -CATALINA_TMPDIR="/var/cache/tomcat/temp" - -# You can pass some parameters to java here if you wish to -#JAVA_OPTS="-Xminf0.1 -Xmaxf0.3" - -# Use JAVA_OPTS to set java.library.path for libtcnative.so -#JAVA_OPTS="-Djava.library.path=/usr/lib" - -# Set default javax.sql.DataSource factory to apache commons one. See rhbz#1214381 -JAVA_OPTS="-Djavax.sql.DataSource.Factory=org.apache.commons.dbcp.BasicDataSourceFactory" - -# You can change your tomcat locale here -#LANG="en_US" - -# Run tomcat under the Java Security Manager -SECURITY_MANAGER="false" - -# SHUTDOWN_WAIT has been deprecated. To change the shutdown wait time, set -# TimeoutStopSec in tomcat.service. - -# If you wish to further customize your tomcat environment, -# put your own definitions here -# (i.e. LD_LIBRARY_PATH for some jdbc drivers) diff --git a/tomcat-9.0.logrotate b/tomcat-9.0.logrotate deleted file mode 100644 index 082092a..0000000 --- a/tomcat-9.0.logrotate +++ /dev/null @@ -1,11 +0,0 @@ -# This is an example config only and is disabled by default -# If you wish to use it, you'll need to update /etc/tomcat/logging.properties -# to prevent catalina*.log from being rotated by Tomcat -@@@TCLOG@@@/catalina*.log { - copytruncate - weekly - rotate 52 - compress - missingok - create 0644 tomcat tomcat -} diff --git a/tomcat-9.0.service b/tomcat-9.0.service deleted file mode 100644 index 832e7c6..0000000 --- a/tomcat-9.0.service +++ /dev/null @@ -1,20 +0,0 @@ -# Systemd unit file for default tomcat -# -# To create clones of this service: -# DO NOTHING, use tomcat@.service instead. - -[Unit] -Description=Apache Tomcat Web Application Container -After=syslog.target network.target - -[Service] -Type=simple -EnvironmentFile=/etc/tomcat/tomcat.conf -Environment="NAME=" -EnvironmentFile=-/etc/sysconfig/tomcat -ExecStart=/usr/libexec/tomcat/server start -SuccessExitStatus=143 -User=tomcat - -[Install] -WantedBy=multi-user.target diff --git a/tomcat-9.0.sysconfig b/tomcat-9.0.sysconfig deleted file mode 100644 index 3117bf7..0000000 --- a/tomcat-9.0.sysconfig +++ /dev/null @@ -1,11 +0,0 @@ -# Service-specific configuration file for tomcat. This will be sourced by -# systemd for the default service (tomcat.service) -# If you want to customize named instance, make a similar file -# and name it tomcat@instancename. - -# You will not need to set this, usually. For default service it equals -# CATALINA_HOME. For named service, it equals ${TOMCATS_BASE}${NAME} -#CATALINA_BASE="@@@TCHOME@@@" - -# Please take a look at /etc/tomcat/tomcat.conf to have an idea what you -# can override. diff --git a/tomcat-9.0.wrapper b/tomcat-9.0.wrapper deleted file mode 100644 index c97cb85..0000000 --- a/tomcat-9.0.wrapper +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash - -if [ "$1" = "version" ]; then - . /usr/libexec/tomcat/preamble - exec ${JAVACMD} -classpath ${CATALINA_HOME}/lib/catalina.jar \ - org.apache.catalina.util.ServerInfo -fi - -SRV="tomcat" -if [ -n "$2" ]; then - SRV="tomcat@$2" -fi - -if [ "$1" = "start" ]; then - systemctl start ${SRV}.service -elif [ "$1" = "stop" ]; then - systemctl stop ${SRV}.service -elif [ "$1" = "version" ]; then - ${JAVACMD} -classpath ${CATALINA_HOME}/lib/catalina.jar \ - org.apache.catalina.util.ServerInfo -else - echo "Usage: $0 {start|stop|version} [server-id]" - exit 1 -fi diff --git a/tomcat-build.patch b/tomcat-build.patch deleted file mode 100644 index 49c63ff..0000000 --- a/tomcat-build.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up ./res/bnd/build-defaults.bnd.orig ./res/bnd/build-defaults.bnd ---- ./res/bnd/build-defaults.bnd.orig 2020-07-13 13:47:01.229077747 -0400 -+++ ./res/bnd/build-defaults.bnd 2020-07-13 13:47:12.923095618 -0400 -@@ -13,7 +13,7 @@ - # See the License for the specific language governing permissions and - # limitations under the License. - --Bundle-Version: ${version_cleanup;${version}} -+Bundle-Version: ${version} - - Specification-Title: Apache Tomcat - Specification-Version: ${version.major.minor} diff --git a/tomcat-functions b/tomcat-functions deleted file mode 100644 index ab08fa2..0000000 --- a/tomcat-functions +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash - -if [ -r /usr/share/java-utils/java-functions ]; then - . /usr/share/java-utils/java-functions -else - echo "Can't read Java functions library, aborting" - exit 1 -fi - -_save_function() { - local ORIG_FUNC=$(declare -f $1) - local NEWNAME_FUNC="$2${ORIG_FUNC#$1}" - eval "$NEWNAME_FUNC" -} - -run_jsvc(){ - if [ -x /usr/bin/jsvc ]; then - TOMCAT_USER="${TOMCAT_USER:-tomcat}" - JSVC="/usr/bin/jsvc" - - JSVC_OPTS="-nodetach -pidfile /var/run/jsvc-tomcat${NAME}.pid -user ${TOMCAT_USER} -outfile ${CATALINA_BASE}/logs/catalina.out -errfile ${CATALINA_BASE}/logs/catalina.out" - if [ "$1" = "stop" ]; then - JSVC_OPTS="${JSVC_OPTS} -stop" - fi - - exec "${JSVC}" ${JSVC_OPTS} ${FLAGS} -classpath "${CLASSPATH}" ${OPTIONS} "${MAIN_CLASS}" "${@}" - else - echo "Can't find /usr/bin/jsvc executable" - fi - -} - -_save_function run run_java - -run() { - if [ "${USE_JSVC}" = "true" ] ; then - run_jsvc $@ - else - run_java $@ - fi -} - diff --git a/tomcat-named.service b/tomcat-named.service deleted file mode 100644 index b6cd8bd..0000000 --- a/tomcat-named.service +++ /dev/null @@ -1,24 +0,0 @@ -# Systemd unit file for tomcat instances. -# -# To create clones of this service: -# 0. systemctl enable tomcat@name.service -# 1. create catalina.base directory structure in -# /var/lib/tomcats/name -# 2. profit. - -[Unit] -Description=Apache Tomcat Web Application Container -After=syslog.target network.target - -[Service] -Type=simple -EnvironmentFile=/etc/tomcat/tomcat.conf -Environment="NAME=%i" -EnvironmentFile=-/etc/sysconfig/tomcat@%i -ExecStart=/usr/libexec/tomcat/server start -ExecStop=/usr/libexec/tomcat/server stop -SuccessExitStatus=143 -User=tomcat - -[Install] -WantedBy=multi-user.target diff --git a/tomcat-preamble b/tomcat-preamble deleted file mode 100644 index 1271dca..0000000 --- a/tomcat-preamble +++ /dev/null @@ -1,52 +0,0 @@ -#!/bin/bash - -. /usr/libexec/tomcat/functions - -# Get the tomcat config (use this for environment specific settings) - -if [ -z "${TOMCAT_CFG_LOADED}" ]; then - if [ -z "${TOMCAT_CFG}" ]; then - TOMCAT_CFG="/etc/tomcat/tomcat.conf" - fi - . $TOMCAT_CFG -fi - -if [ -d "${TOMCAT_CONFD=/etc/tomcat/conf.d}" ]; then - for file in ${TOMCAT_CONFD}/*.conf ; do - if [ -f "$file" ] ; then - . "$file" - fi - done -fi - -if [ -z "$CATALINA_BASE" ]; then - if [ -n "$NAME" ]; then - if [ -z "$TOMCATS_BASE" ]; then - TOMCATS_BASE="/var/lib/tomcats/" - fi - CATALINA_BASE="${TOMCATS_BASE}${NAME}" - else - CATALINA_BASE="${CATALINA_HOME}" - fi -fi -VERBOSE=1 -set_javacmd -cd ${CATALINA_HOME} -# CLASSPATH munging -if [ ! -z "$CLASSPATH" ] ; then - CLASSPATH="$CLASSPATH": -fi - -if [ -n "$JSSE_HOME" ]; then - CLASSPATH="${CLASSPATH}$(build-classpath jcert jnet jsse 2>/dev/null):" -fi -CLASSPATH="${CLASSPATH}${CATALINA_HOME}/bin/bootstrap.jar" -CLASSPATH="${CLASSPATH}:${CATALINA_HOME}/bin/tomcat-juli.jar" -CLASSPATH="${CLASSPATH}:$(build-classpath commons-daemon 2>/dev/null)" - -if [ -z "$LOGGING_PROPERTIES" ] ; then - LOGGING_PROPERTIES="${CATALINA_BASE}/conf/logging.properties" - if [ ! -f "${LOGGING_PROPERTIES}" ] ; then - LOGGING_PROPERTIES="${CATALINA_HOME}/conf/logging.properties" - fi -fi diff --git a/tomcat-server b/tomcat-server deleted file mode 100644 index 17ae385..0000000 --- a/tomcat-server +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash - -. /usr/libexec/tomcat/preamble - -MAIN_CLASS=org.apache.catalina.startup.Bootstrap - -FLAGS="$JAVA_OPTS" -OPTIONS="-Dcatalina.base=$CATALINA_BASE \ --Dcatalina.home=$CATALINA_HOME \ --Djava.endorsed.dirs=$JAVA_ENDORSED_DIRS \ --Djava.io.tmpdir=$CATALINA_TMPDIR \ --Djava.util.logging.config.file=${LOGGING_PROPERTIES} \ --Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager" - -if [ "$1" = "start" ] ; then - FLAGS="${FLAGS} $CATALINA_OPTS" - if [ "${SECURITY_MANAGER}" = "true" ] ; then - OPTIONS="${OPTIONS} \ - -Djava.security.manager \ - -Djava.security.policy==${CATALINA_BASE}/conf/catalina.policy" - fi - run start -elif [ "$1" = "stop" ] ; then - run stop -fi diff --git a/tomcat.spec b/tomcat.spec deleted file mode 100644 index 0728be1..0000000 --- a/tomcat.spec +++ /dev/null @@ -1,1059 +0,0 @@ -# Copyright (c) 2000-2008, JPackage Project -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the -# distribution. -# 3. Neither the name of the JPackage Project nor the names of its -# contributors may be used to endorse or promote products derived -# from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -# - -%global jspspec 2.3 -%global major_version 9 -%global minor_version 0 -%global micro_version 70 -%global packdname apache-tomcat-%{version}-src -%global servletspec 4.0 -%global elspec 3.0 -%global tcuid 53 -# Recommended version is specified in java/org/apache/catalina/core/AprLifecycleListener.java -%global native_version 1.2.21 - - -# FHS 2.3 compliant tree structure - http://www.pathname.com/fhs/2.3/ -%global basedir %{_var}/lib/%{name} -%global appdir %{basedir}/webapps -%global homedir %{_datadir}/%{name} -%global bindir %{homedir}/bin -%global confdir %{_sysconfdir}/%{name} -%global libdir %{_javadir}/%{name} -%global logdir %{_var}/log/%{name} -%global cachedir %{_var}/cache/%{name} -%global tempdir %{cachedir}/temp -%global workdir %{cachedir}/work -%global _systemddir /lib/systemd/system - -Name: tomcat -Epoch: 1 -Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 1%{?dist} -Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API - -License: ASL 2.0 -URL: http://tomcat.apache.org/ -Source0: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz -Source1: %{name}-%{major_version}.%{minor_version}.conf -Source3: %{name}-%{major_version}.%{minor_version}.sysconfig -Source4: %{name}-%{major_version}.%{minor_version}.wrapper -Source5: %{name}-%{major_version}.%{minor_version}.logrotate -Source6: %{name}-%{major_version}.%{minor_version}-digest.script -Source7: %{name}-%{major_version}.%{minor_version}-tool-wrapper.script -Source11: %{name}-%{major_version}.%{minor_version}.service -Source21: tomcat-functions -Source30: tomcat-preamble -Source31: tomcat-server -Source32: tomcat-named.service -Source33: java-9-start-up-parameters.conf - -Patch0: %{name}-%{major_version}.%{minor_version}-bootstrap-MANIFEST.MF.patch -Patch1: %{name}-%{major_version}.%{minor_version}-tomcat-users-webapp.patch -Patch2: %{name}-build.patch -Patch3: %{name}-%{major_version}.%{minor_version}-catalina-policy.patch -Patch4: rhbz-1857043.patch -Patch5: %{name}-%{major_version}.%{minor_version}-JDTCompiler.patch -Patch6: %{name}-%{major_version}.%{minor_version}-osgi-annotations.patch -Patch7: remove-bnd.annotation.spi-classes.patch - -BuildArch: noarch -%if 0%{?fedora} || 0%{?rhel} > 8 -ExclusiveArch: %{java_arches} noarch -%endif - -BuildRequires: ant -BuildRequires: ecj >= 1:4.10 -BuildRequires: findutils -BuildRequires: java-devel >= 1:1.8.0 -BuildRequires: javapackages-local -BuildRequires: aqute-bnd -BuildRequires: aqute-bndlib -BuildRequires: systemd - -Requires: java-headless >= 1:1.8.0 -Requires: javapackages-tools -Requires: procps -Requires: %{name}-lib = %{epoch}:%{version}-%{release} -%if 0%{?fedora} || 0%{?rhel} > 7 -Recommends: tomcat-native >= %{native_version} -%endif -Requires(pre): shadow-utils -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd - -# added after log4j sub-package was removed -Provides: %{name}-log4j = %{epoch}:%{version}-%{release} - -%description -Tomcat is the servlet container that is used in the official Reference -Implementation for the Java Servlet and JavaServer Pages technologies. -The Java Servlet and JavaServer Pages specifications are developed by -Sun under the Java Community Process. - -Tomcat is developed in an open and participatory environment and -released under the Apache Software License version 2.0. Tomcat is intended -to be a collaboration of the best-of-breed developers from around the world. - -%package admin-webapps -Summary: The host-manager and manager web applications for Apache Tomcat -Requires: %{name} = %{epoch}:%{version}-%{release} - -%description admin-webapps -The host-manager and manager web applications for Apache Tomcat. - -%package docs-webapp -Summary: The docs web application for Apache Tomcat -Requires: %{name} = %{epoch}:%{version}-%{release} - -%description docs-webapp -The docs web application for Apache Tomcat. - -%package jsp-%{jspspec}-api -Summary: Apache Tomcat JavaServer Pages v%{jspspec} API Implementation Classes -Provides: jsp = %{jspspec} -Obsoletes: %{name}-jsp-2.2-api -Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} -Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} - -%description jsp-%{jspspec}-api -Apache Tomcat JSP API Implementation Classes. - -%package lib -Summary: Libraries needed to run the Tomcat Web container -Requires: %{name}-jsp-%{jspspec}-api = %{epoch}:%{version}-%{release} -Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} -Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} -Requires: ecj >= 1:4.10 -Requires(preun): coreutils - -%description lib -Libraries needed to run the Tomcat Web container. - -%package servlet-%{servletspec}-api -Summary: Apache Tomcat Java Servlet v%{servletspec} API Implementation Classes -Provides: servlet = %{servletspec} -Provides: servlet6 -Provides: servlet3 -Obsoletes: %{name}-servlet-3.1-api - -%description servlet-%{servletspec}-api -Apache Tomcat Servlet API Implementation Classes. - -%package el-%{elspec}-api -Summary: Apache Tomcat Expression Language v%{elspec} API Implementation Classes -Provides: el_api = %{elspec} -Obsoletes: %{name}-el-2.2-api - -%description el-%{elspec}-api -Apache Tomcat EL API Implementation Classes. - -%package webapps -Summary: The ROOT web application for Apache Tomcat -Requires: %{name} = %{epoch}:%{version}-%{release} - -%description webapps -The ROOT web application for Apache Tomcat. - -%prep -%setup -q -n %{packdname} -# remove pre-built binaries and windows files -find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name "*.gz" -o \ - -name "*.jar" -o -name "*.war" -o -name "*.zip" \) -delete - -%patch0 -p0 -%patch1 -p0 -%patch2 -p0 -%patch3 -p0 -%patch4 -p0 -%patch5 -p0 -%patch6 -p0 -%if 0%{?rhel} == 8 -%patch7 -p0 -%endif - -# Remove webservices naming resources as it's generally unused -%{__rm} -rf java/org/apache/naming/factory/webservices - -# Configure maven files -%mvn_package ":tomcat-el-api" tomcat-el-api -%mvn_alias "org.apache.tomcat:tomcat-el-api" "org.eclipse.jetty.orbit:javax.el" -%mvn_package ":tomcat-jsp-api" tomcat-jsp-api -%mvn_alias "org.apache.tomcat:tomcat-jsp-api" "org.eclipse.jetty.orbit:javax.servlet.jsp" -%mvn_package ":tomcat-servlet-api" tomcat-servlet-api - - -%build -export OPT_JAR_LIST="xalan-j2-serializer" -# we don't care about the tarballs and we're going to replace -# tomcat-dbcp.jar with apache-commons-{collections,dbcp,pool}-tomcat5.jar -# so just create a dummy file for later removal -touch HACK - -# who needs a build.properties file anyway -%{ant} -Dbase.path="." \ - -Dbuild.compiler="modern" \ - -Dcommons-daemon.jar="HACK" \ - -Dcommons-daemon.native.src.tgz="HACK" \ - -Djdt.jar="$(build-classpath ecj/ecj)" \ - -Dtomcat-native.tar.gz="HACK" \ - -Dtomcat-native.home="." \ - -Dcommons-daemon.native.win.mgr.exe="HACK" \ - -Dnsis.exe="HACK" \ - -Djaxrpc-lib.jar="HACK" \ - -Dwsdl4j-lib.jar="HACK" \ - -Dbnd.jar="$(build-classpath aqute-bnd/biz.aQute.bnd)" \ - -Dosgi-annotations.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ -%if 0%{?rhel} == 8 - -Dbndlib.jar="$(build-classpath aqute-bnd/biz.aQute.bndlib)" \ - -Dbndlibg.jar="$(build-classpath aqute-bnd/aQute.libg)" \ - -Dslf4j-api.jar="$(build-classpath slf4j/slf4j-api)" \ -%endif - -Dversion="%{version}" \ - -Dversion.build="%{micro_version}" \ - deploy - -# remove some jars that we'll replace with symlinks later -%{__rm} output/build/bin/commons-daemon.jar output/build/lib/ecj.jar -# Remove the example webapps per Apache Tomcat Security Considerations -# see https://tomcat.apache.org/tomcat-9.0-doc/security-howto.html -%{__rm} -rf output/build/webapps/examples - - -%install -# build initial path structure -%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_bindir} -%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_sbindir} -%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_systemddir} -%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d -%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig -%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{appdir} -%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{bindir} -%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{confdir} -%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{confdir}/Catalina/localhost -%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{confdir}/conf.d -/bin/echo "Place your custom *.conf files here. Shell expansion is supported." > ${RPM_BUILD_ROOT}%{confdir}/conf.d/README -%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{libdir} -%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{logdir} -%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{_localstatedir}/lib/tomcats -%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{homedir} -%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{tempdir} -%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{workdir} -%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_unitdir} -%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_libexecdir}/%{name} - -# move things into place -# First copy supporting libs to tomcat lib -pushd output/build - %{__cp} -a bin/*.{jar,xml} ${RPM_BUILD_ROOT}%{bindir} - %{__cp} -a conf/*.{policy,properties,xml,xsd} ${RPM_BUILD_ROOT}%{confdir} - %{__cp} -a lib/*.jar ${RPM_BUILD_ROOT}%{libdir} - %{__cp} -a webapps/* ${RPM_BUILD_ROOT}%{appdir} -popd - -%{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ - -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE1} \ - > ${RPM_BUILD_ROOT}%{confdir}/%{name}.conf -%{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ - -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE3} \ - > ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/%{name} -%{__install} -m 0644 %{SOURCE4} \ - ${RPM_BUILD_ROOT}%{_sbindir}/%{name} -%{__install} -m 0644 %{SOURCE11} \ - ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service -%{__sed} -e "s|\@\@\@TCLOG\@\@\@|%{logdir}|g" %{SOURCE5} \ - > ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{name}.disabled -%{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ - -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE6} \ - > ${RPM_BUILD_ROOT}%{_bindir}/%{name}-digest -%{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ - -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE7} \ - > ${RPM_BUILD_ROOT}%{_bindir}/%{name}-tool-wrapper - -%{__install} -m 0644 %{SOURCE21} \ - ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/functions -%{__install} -m 0755 %{SOURCE30} \ - ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/preamble -%{__install} -m 0755 %{SOURCE31} \ - ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/server -%{__install} -m 0644 %{SOURCE32} \ - ${RPM_BUILD_ROOT}%{_unitdir}/%{name}@.service - -%{__install} -m 0644 %{SOURCE33} ${RPM_BUILD_ROOT}%{confdir}/conf.d/ - -# Substitute libnames in catalina-tasks.xml -sed -i \ - "s,el-api.jar,%{name}-el-%{elspec}-api.jar,; - s,servlet-api.jar,%{name}-servlet-%{servletspec}-api.jar,; - s,jsp-api.jar,%{name}-jsp-%{jspspec}-api.jar,;" \ - ${RPM_BUILD_ROOT}%{bindir}/catalina-tasks.xml - -# create jsp and servlet API symlinks -pushd ${RPM_BUILD_ROOT}%{_javadir} - %{__mv} %{name}/jsp-api.jar %{name}-jsp-%{jspspec}-api.jar - %{__ln_s} %{name}-jsp-%{jspspec}-api.jar %{name}-jsp-api.jar - %{__mv} %{name}/servlet-api.jar %{name}-servlet-%{servletspec}-api.jar - %{__ln_s} %{name}-servlet-%{servletspec}-api.jar %{name}-servlet-api.jar - %{__mv} %{name}/el-api.jar %{name}-el-%{elspec}-api.jar - %{__ln_s} %{name}-el-%{elspec}-api.jar %{name}-el-api.jar -popd - -pushd output/build - %{_bindir}/build-jar-repository lib ecj 2>&1 -popd - -pushd ${RPM_BUILD_ROOT}%{libdir} - # symlink JSP and servlet API jars - %{__ln_s} ../../java/%{name}-jsp-%{jspspec}-api.jar . - %{__ln_s} ../../java/%{name}-servlet-%{servletspec}-api.jar . - %{__ln_s} ../../java/%{name}-el-%{elspec}-api.jar . - %{__ln_s} $(build-classpath ecj/ecj) jasper-jdt.jar -popd - -# symlink to the FHS locations where we've installed things -pushd ${RPM_BUILD_ROOT}%{homedir} - %{__ln_s} %{appdir} webapps - %{__ln_s} %{confdir} conf - %{__ln_s} %{libdir} lib - %{__ln_s} %{logdir} logs - %{__ln_s} %{tempdir} temp - %{__ln_s} %{workdir} work -popd - -# Install the maven metadata for the spec impl artifacts as other projects use them -#%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_mavenpomdir} -pushd res/maven - for pom in tomcat-el-api.pom tomcat-jsp-api.pom tomcat-servlet-api.pom; do - # fix-up version in all pom files - sed -i 's/@MAVEN.DEPLOY.VERSION@/%{version}/g' $pom - done -popd - -# Configure and install maven artifacts -%mvn_artifact res/maven/tomcat-el-api.pom output/build/lib/el-api.jar -%mvn_artifact res/maven/tomcat-jsp-api.pom output/build/lib/jsp-api.jar -%mvn_artifact res/maven/tomcat-servlet-api.pom output/build/lib/servlet-api.jar -%mvn_install - -%pre -# add the tomcat user and group -getent group tomcat >/dev/null || %{_sbindir}/groupadd -f -g %{tcuid} -r tomcat -if ! getent passwd tomcat >/dev/null ; then - if ! getent passwd %{tcuid} >/dev/null ; then - %{_sbindir}/useradd -r -u %{tcuid} -g tomcat -d %{homedir} -s /sbin/nologin -c "Apache Tomcat" tomcat - # Tomcat uses a reserved ID, so there should never be an else - fi -fi -exit 0 - -%post -# install but don't activate -%systemd_post %{name}.service - -%post jsp-%{jspspec}-api -%{_sbindir}/update-alternatives --install %{_javadir}/jsp.jar jsp \ - %{_javadir}/%{name}-jsp-%{jspspec}-api.jar 20200 - -%post servlet-%{servletspec}-api -%{_sbindir}/update-alternatives --install %{_javadir}/servlet.jar servlet \ - %{_javadir}/%{name}-servlet-%{servletspec}-api.jar 30000 - -%post el-%{elspec}-api -%{_sbindir}/update-alternatives --install %{_javadir}/elspec.jar elspec \ - %{_javadir}/%{name}-el-%{elspec}-api.jar 20300 - -%preun -# clean tempdir and workdir on removal or upgrade -%{__rm} -rf %{workdir}/* %{tempdir}/* -%systemd_preun %{name}.service - -%postun -%systemd_postun_with_restart %{name}.service - -%postun jsp-%{jspspec}-api -if [ "$1" = "0" ]; then - %{_sbindir}/update-alternatives --remove jsp \ - %{_javadir}/%{name}-jsp-%{jspspec}-api.jar -fi - -%postun servlet-%{servletspec}-api -if [ "$1" = "0" ]; then - %{_sbindir}/update-alternatives --remove servlet \ - %{_javadir}/%{name}-servlet-%{servletspec}-api.jar -fi - -%postun el-%{elspec}-api -if [ "$1" = "0" ]; then - %{_sbindir}/update-alternatives --remove elspec \ - %{_javadir}/%{name}-el-%{elspec}-api.jar -fi - -%files -%defattr(0664,root,tomcat,0755) -%doc {LICENSE,NOTICE,RELEASE*} -%attr(0755,root,root) %{_bindir}/%{name}-digest -%attr(0755,root,root) %{_bindir}/%{name}-tool-wrapper -%attr(0755,root,root) %{_sbindir}/%{name} -%attr(0644,root,root) %{_unitdir}/%{name}.service -%attr(0644,root,root) %{_unitdir}/%{name}@.service -%attr(0755,root,root) %dir %{_libexecdir}/%{name} -%attr(0755,root,root) %dir %{_localstatedir}/lib/tomcats -%attr(0644,root,root) %{_libexecdir}/%{name}/functions -%attr(0755,root,root) %{_libexecdir}/%{name}/preamble -%attr(0755,root,root) %{_libexecdir}/%{name}/server -%attr(0644,root,root) %config(noreplace) %{_sysconfdir}/sysconfig/%{name} -%attr(0644,root,root) %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}.disabled -%attr(0755,root,tomcat) %dir %{basedir} -%attr(0755,root,tomcat) %dir %{confdir} - -%defattr(0664,tomcat,root,0770) -%attr(0770,tomcat,root) %dir %{logdir} - -%defattr(0664,root,tomcat,0770) -%attr(0770,root,tomcat) %dir %{cachedir} -%attr(0770,root,tomcat) %dir %{tempdir} -%attr(0770,root,tomcat) %dir %{workdir} - -%defattr(0644,root,tomcat,0775) -%attr(0775,root,tomcat) %dir %{appdir} -%attr(0775,root,tomcat) %dir %{confdir}/Catalina -%attr(0775,root,tomcat) %dir %{confdir}/Catalina/localhost -%attr(0755,root,tomcat) %dir %{confdir}/conf.d -%{confdir}/conf.d/README -%{confdir}/conf.d/java-9-start-up-parameters.conf -%config(noreplace) %{confdir}/%{name}.conf -%config(noreplace) %{confdir}/*.policy -%config(noreplace) %{confdir}/*.properties -%config(noreplace) %{confdir}/context.xml -%config(noreplace) %{confdir}/server.xml -%attr(0640,root,tomcat) %config(noreplace) %{confdir}/tomcat-users.xml -%attr(0664,root,tomcat) %{confdir}/tomcat-users.xsd -%attr(0664,root,tomcat) %config(noreplace) %{confdir}/jaspic-providers.xml -%attr(0664,root,tomcat) %{confdir}/jaspic-providers.xsd -%config(noreplace) %{confdir}/web.xml -%dir %{homedir} -%{bindir}/bootstrap.jar -%{bindir}/catalina-tasks.xml -%{homedir}/lib -%{homedir}/temp -%{homedir}/webapps -%{homedir}/work -%{homedir}/logs -%{homedir}/conf - -%files admin-webapps -%defattr(0664,root,tomcat,0755) -%{appdir}/host-manager -%{appdir}/manager - -%files docs-webapp -%{appdir}/docs - -%files lib -%dir %{libdir} -%{libdir}/*.jar -%{_javadir}/*.jar -%{bindir}/tomcat-juli.jar -%exclude %{libdir}/%{name}-el-%{elspec}-api.jar -%exclude %{_javadir}/%{name}-servlet-%{servletspec}*.jar -%exclude %{_javadir}/%{name}-el-%{elspec}-api.jar -%exclude %{_javadir}/%{name}-jsp-%{jspspec}*.jar - -%files jsp-%{jspspec}-api -f .mfiles-tomcat-jsp-api -%{_javadir}/%{name}-jsp-%{jspspec}*.jar - -%files servlet-%{servletspec}-api -f .mfiles-tomcat-servlet-api -%doc LICENSE -%{_javadir}/%{name}-servlet-%{servletspec}*.jar - -%files el-%{elspec}-api -f .mfiles-tomcat-el-api -%doc LICENSE -%{_javadir}/%{name}-el-%{elspec}-api.jar -%{libdir}/%{name}-el-%{elspec}-api.jar - -%files webapps -%defattr(0644,tomcat,tomcat,0755) -%{appdir}/ROOT - -%changelog -* Fri Jan 13 2023 Hui Wang - 1:9.0.70-1 -- Update to 9.0.70 - -* Thu Sep 01 2022 Coty Sutherland - 1:9.0.65-2 -- Cleaning up some unused deps and system properties -- Conditionally remove some classes that are not provided by the bnd - version shipped in el8 - -* Thu Jul 21 2022 Hui Wang - 1:9.0.65-1 -- Update to 9.0.65 - -* Fri Jul 08 2022 Jiri Vanek - 1:9.0.64-2 -- Rebuilt for Drop i686 JDKs - -* Tue Jun 21 2022 Hui Wang - 1:9.0.64-1 -- Update to 9.0.64 -- Add osgi-annotations dependency back - -* Thu Mar 10 2022 Coty Sutherland - 1:9.0.59-3 -- Related: rhbz#2061424 Adjust fix so that it uses the proper env var - -* Tue Mar 08 2022 Coty Sutherland - 1:9.0.59-2 -- Resolves: rhbz#2061424 Add Java 9 start-up parameters to allow reflection - -* Wed Mar 02 2022 Sonia Xu - 1:9.0.59-1 -- Update to 9.0.59 -- Resolves: rhbz#2047419 - CVE-2022-23181 tomcat: local privilege escalation vulnerability - -* Sat Feb 05 2022 Jiri Vanek - 1:9.0.56-3 -- Rebuilt for java-17-openjdk as system jdk - -* Sat Jan 22 2022 Fedora Release Engineering - 1:9.0.56-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Thu Dec 09 2021 Hui Wang - 1:9.0.56-1 -- Update to 9.0.56 - -* Tue Oct 12 2021 Hui Wang - 1:9.0.55-1 -- Update to 9.0.55 - -* Tue Oct 12 2021 Hui Wang - 1:9.0.54-1 -- Update to 9.0.54 - -* Thu Sep 16 2021 Hui Wang - 1:9.0.53-1 -- Update to 9.0.53 - -* Wed Aug 18 2021 Hui Wang - 1:9.0.52-1 -- Update to 9.0.52 - -* Fri Jul 23 2021 Fedora Release Engineering - 1:9.0.50-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Tue Jul 06 2021 Hui Wang - 1:9.0.50-1 -- Update to 9.0.50 - -* Sat Jun 05 2021 Coty Sutherland - 1:9.0.45-4 -- Add back logrotate config file per devel list request -- Add mvn virtual provides back for the servlet, el, and jsp spec impls - -* Fri Jun 04 2021 Coty Sutherland - 1:9.0.45-3 -- Drop geronimo-jaxrpc, which provided the webservices naming factory resources that are generally unused - -* Thu Jun 03 2021 Coty Sutherland - 1:9.0.45-2 -- Remove examples webapps from subpackage -- Updates to javapackages-local removed %%add_maven_depmap which broke the build, - so I removed the maven artifacts as they aren't very useful anyway -- Drop JSVC support as it's not very useful these days -- Drop geronimo-saaj as it's no longer required - -* Thu Apr 22 2021 Hui Wang - 1:9.0.45-1 -- Update to 9.0.45 - -* Thu Mar 18 2021 Hui Wang - 1:9.0.44-1 -- Update to 9.0.44 - -* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 1:9.0.43-2 -- Rebuilt for updated systemd-rpm-macros - See https://pagure.io/fesco/issue/2583. - -* Wed Feb 03 2021 Hui Wang - 1:9.0.43-1 -- Update to 9.0.43 - -* Wed Jan 27 2021 Fedora Release Engineering - 1:9.0.41-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Wed Dec 09 2020 Hui Wang - 1:9.0.41-1 -- Update to 9.0.41 - -* Wed Nov 18 2020 Hui Wang - 1:9.0.40-1 -- Update to 9.0.40 - -* Mon Oct 12 2020 Hui Wang - 1:9.0.39-1 -- Update to 9.0.39 - -* Wed Sep 16 2020 Hui Wang - 1:9.0.38-1 -- Update to 9.0.38 - -* Wed Jul 29 2020 Fedora Release Engineering - 1:9.0.37-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Fri Jul 24 2020 Coty Sutherland - 1:9.0.37-3 -- Related: rhbz#1857043 Temporarily remove OSGi metadata from tomcat jars - -* Mon Jul 20 2020 Coty Sutherland - 1:9.0.37-2 -- Resolves: rhbz#1857043 Add patch to reinclude o.a.t.util.net.jsse and o.a.t.util.moduler.modules in tomcat-coyote.jar - -* Mon Jul 13 2020 Coty Sutherland - 1:9.0.37-1 -- Update to 9.0.37 - -* Sat Jul 11 2020 Jiri Vanek - 1:9.0.36-2 -- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 - -* Wed Jun 10 2020 Hui Wang - 1:9.0.36-1 -- Upgrade to 9.0.36 - -* Sun May 31 2020 Hui Wang - 1:9.0.35-2 -- Upgrade to 9.0.35 - -* Wed Apr 22 2020 Coty Sutherland - 1:9.0.34-2 -- Add updated catalina.policy patch to allow ECJ usage under the Security Manager - -* Tue Apr 21 2020 Coty Sutherland - 1:9.0.34-1 -- Update to 9.0.34 - -* Thu Mar 05 2020 Coty Sutherland - 1:9.0.31-1 -- Update to 9.0.31 -- Resolves: rhbz#1806398 - CVE-2020-1938 tomcat: Apache Tomcat AJP File Read/Inclusion Vulnerability - -* Fri Jan 31 2020 Fedora Release Engineering - 1:9.0.30-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Fri Dec 20 2019 Coty Sutherland - 1:9.0.30-1 -- Update to 9.0.30 - -* Thu Sep 26 2019 Coty Sutherland - 1:9.0.26-2 -- Resolves: rhbz#1510522 man page uid and gid mismatch for service accounts - -* Thu Sep 26 2019 Coty Sutherland - 1:9.0.26-1 -- Update to 9.0.26 -- Resolves: rhbz#1523112 tomcat systemd does not cope with - in service names -- Resolves: rhbz#1510896 Problem to start tomcat with a user whose group has a name different to the user - -* Sat Jul 27 2019 Fedora Release Engineering - 1:9.0.21-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Wed Jul 17 2019 Coty Sutherland - 1:9.0.21-2 -- Update build-classpath calls to ECJ to specify the JAR we want to use - -* Tue Jun 18 2019 Coty Sutherland - 1:9.0.21-1 -- Update to 9.0.21 - -* Tue Apr 02 2019 Coty Sutherland - 1:9.0.13-4 -- Remove javadoc subpackage to drop the jpackage-utils dependency - -* Wed Feb 20 2019 Coty Sutherland - 1:9.0.13-3 -- Remove OSGi MANIFEST files, these are now included in the upstream Tomcat distribution (as of 9.0.10) -- Remove unused dependencies, apache-commons-collections, apache-commons-daemon, apache-commons-pool, junit - -* Sun Feb 03 2019 Fedora Release Engineering - 1:9.0.13-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Thu Dec 13 2018 Coty Sutherland - 1:9.0.13-1 -- Update to 9.0.13 -- Resolves: rhbz#1636513 - CVE-2018-11784 tomcat: Open redirect in default servlet - -* Sun Oct 14 2018 Peter Robinson 1:9.0.10-2 -- Drop legcy sys-v bits - -* Tue Jul 31 2018 Coty Sutherland - 1:9.0.10-1 -- Update to 9.0.10 -- Resolves: rhbz#1624929 - CVE-2018-1336 tomcat: A bug in the UTF-8 decoder can lead to DoS -- Resolves: rhbz#1579612 - CVE-2018-8014 tomcat: Insecure defaults in CORS filter enable 'supportsCredentials' for all origins -- Resolves: rhbz#1607586 - CVE-2018-8034 tomcat: host name verification missing in WebSocket client -- Resolves: rhbz#1607584 - CVE-2018-8037 tomcat: Due to a mishandling of close in NIO/NIO2 connectors user sessions can get mixed up - -* Sat Jul 14 2018 Fedora Release Engineering - 1:9.0.7-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Tue May 01 2018 Coty Sutherland - 1:9.0.7-1 -- Update to 9.0.7 - -* Thu Mar 15 2018 Coty Sutherland - 1:8.5.29-1 -- Update to 8.5.29 -- Resolves: rhbz#1548290 CVE-2018-1304 tomcat: Incorrect handling of empty string URL in security constraints can lead to unitended exposure of resources -- Resolves: rhbz#1548284 CVE-2018-1305 tomcat: Late application of security constraints can lead to resource exposure for unauthorised users - -* Fri Feb 09 2018 Igor Gnatenko - 1:8.0.49-2 -- Escape macros in %%changelog - -* Thu Feb 01 2018 Coty Sutherland - 1:8.0.49-1 -- Update to 8.0.49 - -* Tue Dec 12 2017 Merlin Mathesius - 1:8.0.47-3 -- Cleanup spec file conditionals - -* Tue Oct 24 2017 Troy Dawson - 1:8.0.47-2 -- Change "zip -u" to "zip" -- Resolves: rhbz#1495241 [tomcat] zip -u in spec file causes race condition - -* Wed Oct 04 2017 Coty Sutherland - 1:8.0.47-1 -- Update to 8.0.47 -- Resolves: rhbz#1497682 CVE-2017-12617 tomcat: Remote Code Execution bypass for CVE-2017-12615 - -* Mon Aug 21 2017 Coty Sutherland - 1:8.0.46-1 -- Update to 8.0.46 -- Resolves: rhbz#1480620 CVE-2017-7674 tomcat: Cache Poisoning - -* Thu Jul 27 2017 Fedora Release Engineering - 1:8.0.44-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Fri Jun 09 2017 Coty Sutherland - 1:8.0.44-1 -- Resolves: rhbz#1459160 CVE-2017-5664 tomcat: Security constrained bypass in error page mechanism - -* Tue Apr 11 2017 Coty Sutherland - 1:8.0.43-1 -- Update to 8.0.43 - -* Fri Mar 31 2017 Coty Sutherland - 1:8.0.42-1 -- Update to 8.0.42 - -* Thu Feb 16 2017 Coty Sutherland - 1:8.0.41-1 -- Update to 8.0.41 -- Resolves: rhbz#1403825 CVE-2016-8745 tomcat: information disclosure due to incorrect Processor sharing - -* Sat Feb 11 2017 Fedora Release Engineering - 1:8.0.39-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Tue Nov 29 2016 Coty Sutherland - 1:8.0.39-1 -- Update to 8.0.39 -- Resolves: rhbz#1397493 CVE-2016-6816 CVE-2016-6817 CVE-2016-8735 tomcat: various flaws - -* Tue Oct 25 2016 Coty Sutherland - 1:8.0.38-1 -- Update to 8.0.38 - -* Sun Oct 23 2016 Coty Sutherland - 1:8.0.37-3 -- Resolves: rhbz#1383216 CVE-2016-6325 tomcat: tomcat writable config files allow privilege escalation -- Resolves: rhbz#1382310 CVE-2016-5425 tomcat: Local privilege escalation via systemd-tmpfiles service - -* Tue Sep 13 2016 Coty Sutherland - 1:8.0.37-1 -- Rebase to 8.0.37 -- Resolves: rhbz#1375581 CVE-2016-5388 CGI sets environmental variable based on user supplied Proxy request header -- Resolves: rhbz#1370262 catalina.out is no longer in use in the main package, but still gets rotated - -* Thu Aug 11 2016 Coty Sutherland - 1:8.0.36-2 -- Related: rhbz#1349469 Correct typo in changelog entry - -* Mon Aug 08 2016 Coty Sutherland - 1:8.0.36-1 -- Resolves: rhbz#1349469 CVE-2016-3092 tomcat: Usage of vulnerable FileUpload package can result in denial of service (updates to 8.0.36) -- Resolves: rhbz#1364056 The command tomcat-digest doesn't work -- Resolves: rhbz#1363884 The tomcat-tool-wrapper script is broken -- Resolves: rhbz#1347864 The systemd service unit does not allow tomcat to shut down gracefully -- Resolves: rhbz#1347835 The security manager doesn't work correctly (JSPs cannot be compiled) -- Resolves: rhbz#1341853 rpm -V tomcat fails on /var/log/tomcat/catalina.out -- Resolves: rhbz#1341850 tomcat-jsvc.service has TOMCAT_USER value hard-coded -- Resolves: rhbz#1359737 Missing maven depmap for the following artifacts: org.apache.tomcat:tomcat-websocket, org.apache.tomcat:tomcat-websocket-api -- Resolves: asfbz#59960 Building javadocs with java8 fails - -* Wed Mar 2 2016 Ivan Afonichev - 1:8.0.32-4 -- Revert sysconfig migration changes, resolves: rhbz#1311771, rhbz#1311905 -- Add /etc/tomcat/conf.d/ with shell expansion support, resolves rhbz#1293636 - -* Sat Feb 27 2016 Ivan Afonichev - 1:8.0.32-3 -- Load sysconfig from tomcat.conf, resolves: rhbz#1311771, rhbz#1311905 -- Set default javax.sql.DataSource factory to apache commons one, resolves rhbz#1214381 - -* Sun Feb 21 2016 Ivan Afonichev - 1:8.0.32-2 -- Fix symlinks from $CATALINA_HOME/lib perspective, resolves: rhbz#1308685 - -* Thu Feb 11 2016 Ivan Afonichev - 1:8.0.32-1 -- Updated to 8.0.32 -- Remove log4j support. It has never been working actually. See rhbz#1236297 -- Move shipped config to /etc/sysconfig/tomcat. /etc/tomcat/tomcat.conf can now be used to override it with shell expansion, resolves rhbz#1293636 -- Recommend tomcat-native, resolves: rhbz#1243132 - -* Wed Feb 10 2016 Coty Sutherland 1:8.0.26-4 -- Resolves: rhbz#1286800 Failed to start component due to wrong allowLinking="true" in context.xml -- Program /bin/nologin does not exist (#1302718) - -* Fri Feb 05 2016 Fedora Release Engineering - 1:8.0.26-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Wed Nov 11 2015 Robert Scheck 1:8.0.26-2 -- CATALINA_OPTS are only read when SECURITY_MANAGER is true (#1147105) - -* Thu Aug 27 2015 Alexander Kurtakov 1:8.0.26-1 -- Update to 8.0.26. - -* Fri Jul 10 2015 Alexander Kurtakov 1:8.0.24-2 -- Update to 8.0.24. - -* Fri Jun 19 2015 Alexander Kurtakov 1:8.0.23-2 -- Drop javax.el:el-api alias. - -* Thu Jun 18 2015 Alexander Kurtakov 1:8.0.23-1 -- Update to 8.0.23. - -* Thu Jun 18 2015 Alexander Kurtakov 1:8.0.20-3 -- Drop jetty alias for servlet. - -* Tue Jun 09 2015 Michal Srb - 1:8.0.20-2 -- Fix metadata for org.apache.tomcat:{tomcat-jni,tomcat-util-scan} - -* Thu Mar 5 2015 Alexander Kurtakov 1:8.0.18-5 -- Rebuild against tomcat-taglibs-standard. - -* Wed Mar 4 2015 Alexander Kurtakov 1:8.0.18-4 -- Fix epoch bumped el_1_0_api that would override all other glassfish/jboss/etc. due to wrong epoch. -- Drop old provides. - -* Tue Mar 03 2015 Stephen Gallagher 1:8.0.18-3 -- Bump epoch to maintain upgrade path from Fedora 22 - -* Mon Feb 16 2015 Michal Srb - 0:8.0.18-2 -- Install POM files for org.apache.tomcat:{tomcat-jni,tomcat-util-scan} - -* Sun Feb 15 2015 Ivan Afonichev 0:8.0.18-1 -- Updated to 8.0.18 - -* Sat Sep 20 2014 Ivan Afonichev 0:8.0.12-1 -- Updated to 8.0.12 -- Substitute libnames in catalina-tasks.xml, resolves: rhbz#1126439 -- Use CATALINA_OPTS only on start, resolves: rhbz#1051194 - -* Mon Jun 16 2014 Michal Srb - 0:7.0.54-3 -- jsp-api requires el-api - -* Sun Jun 08 2014 Fedora Release Engineering - 0:7.0.54-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Thu Jun 5 2014 Alexander Kurtakov 0:7.0.54-1 -- Update to upstream 7.0.54 - fixes compile with Java 8. - -* Wed May 21 2014 Alexander Kurtakov 0:7.0.52-3 -- Drop servlet/el api provides to reduce user machines ending with both. - -* Sun Mar 30 2014 Ivan Afonichev 0:7.0.52-2 -- Don't provide maven javax.jsp:jsp-api and javax.servlet.jsp:javax.servlet.jsp-api resolves: rhbz#1076949 -- Move log4j support into subpackage, resolves: rhbz#1027716 - -* Wed Mar 26 2014 Ivan Afonichev 0:7.0.52-1 -- Updated to 7.0.52 -- Rewrite jsvc implementation, resolves: rhbz#1051743 -- Switch to java-headless R, resolves: rhbz#1068566 -- Create and own %%{_localstatedir}/lib/tomcats, resolves: rhbz#1026741 -- Add pom for tomcat-jdbc, resolves: rhbz#1011003 - -* Tue Jan 21 2014 Mikolaj Izdebski - 0:7.0.47-3 -- Fix installation of Maven metadata for tomcat-juli.jar -- Resolves: rhbz#1033664 - -* Wed Jan 15 2014 Stanislav Ochotnicky - 0:7.0.47-2 -- Rebuild for bug #1033664 - -* Sun Nov 03 2013 Ivan Afonichev 0:7.0.47-1 -- Updated to 7.0.47 -- Fix java.security.policy - -* Sun Aug 04 2013 Fedora Release Engineering - 0:7.0.42-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Fri Jul 12 2013 Ivan Afonichev 0:7.0.42-2 -- Remove jpackage-utils R - -* Thu Jul 11 2013 Dmitry Tikhonov 0:7.0.42-1 -- Updated to 7.0.42 - -* Tue Jun 11 2013 Paul Komkoff 0:7.0.40-3 -- Dropped systemv inits. Bye-bye. -- Updated the systemd wrappers to allow running multiple instances. - Added wrapper scripts to do that, ported the original non-named - service file to work with the same wrappers, updated - /usr/sbin/tomcat to call systemctl. - -* Sat May 11 2013 Ivan Afonichev 0:7.0.40-1 -- Updated to 7.0.40 -- Resolves: rhbz 956569 added missing commons-pool link -- Remove ant-nodeps BR - -* Mon Mar 4 2013 Mikolaj Izdebski - 0:7.0.37-2 -- Add depmaps for org.eclipse.jetty.orbit -- Resolves: rhbz#917626 - -* Wed Feb 20 2013 Ivan Afonichev 0:7.0.39-1 -- Updated to 7.0.39 - -* Wed Feb 20 2013 Ivan Afonichev 0:7.0.37-1 -- Updated to 7.0.37 - -* Mon Feb 4 2013 Ivan Afonichev 0:7.0.35-1 -- Updated to 7.0.35 -- systemd SuccessExitStatus=143 for proper stop exit code processing - -* Mon Dec 24 2012 Ivan Afonichev 0:7.0.34-1 -- Updated to 7.0.34 -- ecj >= 4.2.1 now required -- Resolves: rhbz 889395 concat classpath correctly; chdir to $CATALINA_HOME - -* Fri Dec 7 2012 Ivan Afonichev 0:7.0.33-2 -- Resolves: rhbz 883806 refix logdir ownership - -* Sun Dec 2 2012 Ivan Afonichev 0:7.0.33-1 -- Updated to 7.0.33 -- Resolves: rhbz 873620 need chkconfig for update-alternatives - -* Wed Oct 17 2012 Ivan Afonichev 0:7.0.32-1 -- Updated to 7.0.32 -- Resolves: rhbz 842620 symlinks to taglibs - -* Fri Aug 24 2012 Ivan Afonichev 0:7.0.29-1 -- Updated to 7.0.29 -- Add pidfile as tmpfile -- Use systemd for running as unprivileged user -- Resolves: rhbz 847751 upgrade path was broken -- Resolves: rhbz 850343 use new systemd-rpm macros - -* Sat Jul 21 2012 Fedora Release Engineering - 0:7.0.28-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Mon Jul 2 2012 Ivan Afonichev 0:7.0.28-1 -- Updated to 7.0.28 -- Resolves: rhbz 820119 Remove bundled apache-commons-dbcp -- Resolves: rhbz 814900 Added tomcat-coyote POM -- Resolves: rhbz 810775 Remove systemv stuff from %%post scriptlet -- Remove redhat-lsb R - -* Mon Apr 9 2012 Ivan Afonichev 0:7.0.27-2 -- Fixed native download hack - -* Sat Apr 7 2012 Ivan Afonichev 0:7.0.27-1 -- Updated to 7.0.27 -- Fixed jakarta-taglibs-standard BR and R - -* Wed Mar 21 2012 Stanislav Ochotnicky - 0:7.0.26-2 -- Add more depmaps to J2EE apis to help jetty/glassfish updates - -* Wed Mar 14 2012 Juan Hernandez 0:7.0.26-2 -- Added the POM files for tomcat-api and tomcat-util (#803495) - -* Wed Feb 22 2012 Ivan Afonichev 0:7.0.26-1 -- Updated to 7.0.26 -- Bug 790334: Change ownership of logdir for logrotate - -* Thu Feb 16 2012 Krzysztof Daniel 0:7.0.25-4 -- Bug 790694: Priorities of jsp, servlet and el packages updated. - -* Wed Feb 8 2012 Krzysztof Daniel 0:7.0.25-3 -- Dropped indirect dependecy to tomcat 5 - -* Sun Jan 22 2012 Ivan Afonichev 0:7.0.25-2 -- Added hack for maven depmap of tomcat-juli absolute link [ -f ] pass correctly - -* Sat Jan 21 2012 Ivan Afonichev 0:7.0.25-1 -- Updated to 7.0.25 -- Removed EntityResolver patch (changes already in upstream sources) -- Place poms and depmaps in the same package as jars -- Added javax.servlet.descriptor to export-package of servlet-api -- Move several chkconfig actions and reqs to systemv subpackage -- New maven depmaps generation method -- Add patch to support java7. (patch sent upstream). -- Require java >= 1:1.6.0 - -* Fri Jan 13 2012 Krzysztof Daniel 0:7.0.23-5 -- Exported javax.servlet.* packages in version 3.0 as 2.6 to make - servlet-api compatible with Eclipse. - -* Thu Jan 12 2012 Ivan Afonichev 0:7.0.23-4 -- Move jsvc support to subpackage - -* Wed Jan 11 2012 Alexander Kurtakov 0:7.0.23-2 -- Add EntityResolver setter patch to jasper for jetty's need. (patch sent upstream). - -* Mon Dec 12 2011 Joseph D. Wagner 0:7.0.23-3 -- Added support to /usr/sbin/tomcat-sysd and /usr/sbin/tomcat for - starting tomcat with jsvc, which allows tomcat to perform some - privileged operations (e.g. bind to a port < 1024) and then switch - identity to a non-privileged user. Must add USE_JSVC="true" to - /etc/tomcat/tomcat.conf or /etc/sysconfig/tomcat. - -* Mon Nov 28 2011 Ivan Afonichev 0:7.0.23-1 -- Updated to 7.0.23 - -* Fri Nov 11 2011 Ivan Afonichev 0:7.0.22-2 -- Move tomcat-juli.jar to lib package -- Drop %%update_maven_depmap as in tomcat6 -- Provide native systemd unit file ported from tomcat6 - -* Thu Oct 6 2011 Ivan Afonichev 0:7.0.22-1 -- Updated to 7.0.22 - -* Mon Oct 03 2011 Rex Dieter - 0:7.0.21-3.1 -- rebuild (java), rel-eng#4932 - -* Mon Sep 26 2011 Ivan Afonichev 0:7.0.21-3 -- Fix basedir mode - -* Tue Sep 20 2011 Roland Grunberg 0:7.0.21-2 -- Add manifests for el-api, jasper-el, jasper, tomcat, and tomcat-juli. - -* Thu Sep 8 2011 Ivan Afonichev 0:7.0.21-1 -- Updated to 7.0.21 - -* Mon Aug 15 2011 Ivan Afonichev 0:7.0.20-3 -- Require java = 1:1.6.0 - -* Mon Aug 15 2011 Ivan Afonichev 0:7.0.20-2 -- Require java < 1.7.0 - -* Mon Aug 15 2011 Ivan Afonichev 0:7.0.20-1 -- Updated to 7.0.20 - -* Tue Jul 26 2011 Ivan Afonichev 0:7.0.19-1 -- Updated to 7.0.19 - -* Tue Jun 21 2011 Ivan Afonichev 0:7.0.16-1 -- Updated to 7.0.16 - -* Mon Jun 6 2011 Ivan Afonichev 0:7.0.14-3 -- Added initial systemd service -- Fix some paths - -* Sat May 21 2011 Ivan Afonichev 0:7.0.14-2 -- Fixed http source link -- Securify some permissions -- Added licenses for el-api and servlet-api -- Added dependency on jpackage-utils for the javadoc subpackage - -* Sat May 14 2011 Ivan Afonichev 0:7.0.14-1 -- Updated to 7.0.14 - -* Thu May 5 2011 Ivan Afonichev 0:7.0.12-4 -- Provided local paths for libs -- Fixed dependencies -- Fixed update temp/work cleanup - -* Mon May 2 2011 Ivan Afonichev 0:7.0.12-3 -- Fixed package groups -- Fixed some permissions -- Fixed some links -- Removed old tomcat6 crap - -* Thu Apr 28 2011 Ivan Afonichev 0:7.0.12-2 -- Package now named just tomcat instead of tomcat7 -- Removed Provides: %%{name}-log4j -- Switched to apache-commons-* names instead of jakarta-commons-* . -- Remove the old changelog -- BR/R java >= 1:1.6.0 , same for java-devel -- Removed old tomcat6 crap - -* Wed Apr 27 2011 Ivan Afonichev 0:7.0.12-1 -- Tomcat7 From f590c47ebf36dd7913b2862374284604d4380d1c Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Fri, 9 Jun 2023 14:50:31 +0800 Subject: [PATCH 019/124] Update to 9.0.75 --- sources | 2 +- tomcat.spec | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/sources b/sources index 261d4f4..27278f4 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.73-src.tar.gz) = 1691a0087ceaf2100ce17fe9b9a973d079c39b20effbe0c0d68f92d2684a681e001b0c2b8bde40c289754ac02ba02f9eb4dfac617fccb8f451c96dfdd4741237 +SHA512 (apache-tomcat-9.0.75-src.tar.gz) = 19f78fbe3391bbad65494e0071a6df9a26ceb1a4bd387b3425c5f34a02391fcaaae40442cdca3a98c4b7b45963d3a9e51dd6a1b72f11c29904c755cff03def64 diff --git a/tomcat.spec b/tomcat.spec index f89963e..f457721 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 73 +%global micro_version 75 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -496,6 +496,9 @@ fi %{appdir}/ROOT %changelog +* Thu Jun 08 2023 Hui Wang - 1:9.0.75-1 +- Updated to 9.0.75 + * Fri Mar 17 2023 Hui Wang - 1:9.0.73-1 - Update to 9.0.73 From 92faf5efdbf5b83cf1eb350acce9c86c791e319b Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Wed, 14 Jun 2023 09:46:01 +0800 Subject: [PATCH 020/124] Update to 9.0.76 --- sources | 2 +- tomcat.spec | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/sources b/sources index 27278f4..2bc150a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.75-src.tar.gz) = 19f78fbe3391bbad65494e0071a6df9a26ceb1a4bd387b3425c5f34a02391fcaaae40442cdca3a98c4b7b45963d3a9e51dd6a1b72f11c29904c755cff03def64 +SHA512 (apache-tomcat-9.0.76-src.tar.gz) = 64de4778a4e142baa6e49d5b2d2ca30aaf0133fa1cb450ceb528d6da0440933d01dc9571b6f7b35162de41bf740b71487948ba179ea3d2c75a842848e1bae7bf diff --git a/tomcat.spec b/tomcat.spec index f457721..8211813 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 75 +%global micro_version 76 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -328,6 +328,8 @@ pushd ${RPM_BUILD_ROOT}%{libdir} %{__ln_s} ../../java/%{name}-servlet-%{servletspec}-api.jar . %{__ln_s} ../../java/%{name}-el-%{elspec}-api.jar . %{__ln_s} $(build-classpath ecj/ecj) jasper-jdt.jar + + %{__ln_s} ${RPM_BUILD_ROOT}%{bindir}/tomcat-juli.jar ./ popd # symlink to the FHS locations where we've installed things @@ -496,8 +498,12 @@ fi %{appdir}/ROOT %changelog +* Wed Jun 14 2023 Hui Wang - 1:9.0.76-1 +- Update to 9.0.76 +- Resolves: rhbz#2188218 Link bin/tomcat-juli.jar to /usr/share/java + * Thu Jun 08 2023 Hui Wang - 1:9.0.75-1 -- Updated to 9.0.75 +- Update to 9.0.75 * Fri Mar 17 2023 Hui Wang - 1:9.0.73-1 - Update to 9.0.73 From 33141d8c71b2eba2c6be8a32a70a50fc504ff435 Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Wed, 14 Jun 2023 12:34:57 +0800 Subject: [PATCH 021/124] Update to 9.0.76 Update patch command because %patchN is deprecated Resolves: rhbz#2188218 Link bin/tomcat-juli.jar to /usr/share/java Move tomcat-jsp-2.3-api.jar,tomcat-servlet-4.0-api.jar and tomcat-el-api.jar to the subpackages --- tomcat.spec | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 8211813..10f0b72 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -185,13 +185,13 @@ The ROOT web application for Apache Tomcat. find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name "*.gz" -o \ -name "*.jar" -o -name "*.war" -o -name "*.zip" \) -delete -%patch0 -p0 -%patch1 -p0 -%patch2 -p0 -%patch3 -p0 -%patch4 -p0 -%patch5 -p0 -%patch6 -p0 +%patch 0 -p0 +%patch 1 -p0 +%patch 2 -p0 +%patch 3 -p0 +%patch 4 -p0 +%patch 5 -p0 +%patch 6 -p0 # Remove webservices naming resources as it's generally unused %{__rm} -rf java/org/apache/naming/factory/webservices @@ -329,7 +329,7 @@ pushd ${RPM_BUILD_ROOT}%{libdir} %{__ln_s} ../../java/%{name}-el-%{elspec}-api.jar . %{__ln_s} $(build-classpath ecj/ecj) jasper-jdt.jar - %{__ln_s} ${RPM_BUILD_ROOT}%{bindir}/tomcat-juli.jar ./ + %{__cp} -a ../../%{name}/bin/tomcat-juli.jar . popd # symlink to the FHS locations where we've installed things @@ -477,21 +477,31 @@ fi %{_javadir}/*.jar %{bindir}/tomcat-juli.jar %exclude %{libdir}/%{name}-el-%{elspec}-api.jar +%exclude %{libdir}/%{name}-servlet-%{servletspec}*.jar +%exclude %{libdir}/%{name}-jsp-%{jspspec}*.jar %exclude %{_javadir}/%{name}-servlet-%{servletspec}*.jar %exclude %{_javadir}/%{name}-el-%{elspec}-api.jar %exclude %{_javadir}/%{name}-jsp-%{jspspec}*.jar +%exclude %{_javadir}/%{name}-servlet-api.jar +%exclude %{_javadir}/%{name}-el-api.jar +%exclude %{_javadir}/%{name}-jsp-api.jar %files jsp-%{jspspec}-api -f .mfiles-tomcat-jsp-api %{_javadir}/%{name}-jsp-%{jspspec}*.jar +%{libdir}/%{name}-jsp-%{jspspec}*.jar +%{_javadir}/%{name}-jsp-api.jar %files servlet-%{servletspec}-api -f .mfiles-tomcat-servlet-api %doc LICENSE %{_javadir}/%{name}-servlet-%{servletspec}*.jar +%{libdir}/%{name}-servlet-%{servletspec}*.jar +%{_javadir}/%{name}-servlet-api.jar %files el-%{elspec}-api -f .mfiles-tomcat-el-api %doc LICENSE %{_javadir}/%{name}-el-%{elspec}-api.jar %{libdir}/%{name}-el-%{elspec}-api.jar +%{_javadir}/%{name}-el-api.jar %files webapps %defattr(0644,tomcat,tomcat,0755) @@ -501,6 +511,7 @@ fi * Wed Jun 14 2023 Hui Wang - 1:9.0.76-1 - Update to 9.0.76 - Resolves: rhbz#2188218 Link bin/tomcat-juli.jar to /usr/share/java +- Move tomcat-jsp-2.3-api.jar,tomcat-servlet-4.0-api.jar and tomcat-el-api.jar to the subpackages * Thu Jun 08 2023 Hui Wang - 1:9.0.75-1 - Update to 9.0.75 From e6859de378cb6ccaf7039209cbdc9eef810bf1f9 Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Tue, 20 Jun 2023 15:02:14 +0800 Subject: [PATCH 022/124] Resolves: rhbz#2189672 Missing Tomcat POM files in Fedora Rawhide --- tomcat.spec | 43 +++++++++++++++++++++++++++++++++++++------ 1 file changed, 37 insertions(+), 6 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 10f0b72..ebfe52b 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -80,7 +80,6 @@ Patch1: %{name}-%{major_version}.%{minor_version}-tomcat-users-webapp.pat Patch2: %{name}-build.patch Patch3: %{name}-%{major_version}.%{minor_version}-catalina-policy.patch Patch4: rhbz-1857043.patch -Patch5: %{name}-%{major_version}.%{minor_version}-JDTCompiler.patch Patch6: %{name}-%{major_version}.%{minor_version}-bnd-annotation.patch BuildArch: noarch @@ -190,7 +189,6 @@ find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name " %patch 2 -p0 %patch 3 -p0 %patch 4 -p0 -%patch 5 -p0 %patch 6 -p0 # Remove webservices naming resources as it's generally unused @@ -345,7 +343,7 @@ popd # Install the maven metadata for the spec impl artifacts as other projects use them #%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_mavenpomdir} pushd res/maven - for pom in tomcat-el-api.pom tomcat-jsp-api.pom tomcat-servlet-api.pom; do + for pom in *.pom; do # fix-up version in all pom files sed -i 's/@MAVEN.DEPLOY.VERSION@/%{version}/g' $pom done @@ -355,6 +353,37 @@ popd %mvn_artifact res/maven/tomcat-el-api.pom output/build/lib/el-api.jar %mvn_artifact res/maven/tomcat-jsp-api.pom output/build/lib/jsp-api.jar %mvn_artifact res/maven/tomcat-servlet-api.pom output/build/lib/servlet-api.jar +%mvn_artifact res/maven/tomcat-annotations-api.pom ${RPM_BUILD_ROOT}%{libdir}/annotations-api.jar +%mvn_artifact res/maven/tomcat-api.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-api.jar +%mvn_artifact res/maven/tomcat-catalina-ant.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-ant.jar +%mvn_artifact res/maven/tomcat-catalina-ha.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-ha.jar +%mvn_artifact res/maven/tomcat-ssi.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-ssi.jar +%mvn_artifact res/maven/tomcat-storeconfig.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-storeconfig.jar +%mvn_artifact res/maven/tomcat-tribes.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-tribes.jar +%mvn_artifact res/maven/tomcat-catalina.pom ${RPM_BUILD_ROOT}%{libdir}/catalina.jar +%mvn_artifact res/maven/tomcat-jasper-el.pom ${RPM_BUILD_ROOT}%{libdir}/jasper-el.jar +%mvn_artifact res/maven/tomcat-jasper.pom ${RPM_BUILD_ROOT}%{libdir}/jasper.jar +%mvn_artifact res/maven/tomcat-jaspic-api.pom ${RPM_BUILD_ROOT}%{libdir}/jaspic-api.jar +%mvn_artifact res/maven/tomcat-coyote.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-coyote.jar +%mvn_artifact res/maven/tomcat-dbcp.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-dbcp.jar +%mvn_artifact res/maven/tomcat-i18n-cs.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-cs.jar +%mvn_artifact res/maven/tomcat-i18n-de.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-de.jar +%mvn_artifact res/maven/tomcat-i18n-es.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-es.jar +%mvn_artifact res/maven/tomcat-i18n-fr.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-fr.jar +%mvn_artifact res/maven/tomcat-i18n-ja.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-ja.jar +%mvn_artifact res/maven/tomcat-i18n-ko.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-ko.jar +%mvn_artifact res/maven/tomcat-i18n-pt-BR.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-pt-BR.jar +%mvn_artifact res/maven/tomcat-i18n-ru.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-ru.jar +%mvn_artifact res/maven/tomcat-i18n-zh-CN.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-zh-CN.jar +%mvn_artifact res/maven/tomcat-jdbc.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-jdbc.jar +%mvn_artifact res/maven/tomcat-jni.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-jni.jar +%mvn_artifact res/maven/tomcat-juli.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-juli.jar +%mvn_artifact res/maven/tomcat-util-scan.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-util-scan.jar +%mvn_artifact res/maven/tomcat-util.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-util.jar +%mvn_artifact res/maven/tomcat-websocket-api.pom ${RPM_BUILD_ROOT}%{libdir}/websocket-api.jar +%mvn_artifact res/maven/tomcat-websocket.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-websocket.jar +%mvn_artifact res/maven/tomcat.pom + %mvn_install %pre @@ -471,7 +500,7 @@ fi %files docs-webapp %{appdir}/docs -%files lib +%files lib -f .mfiles %dir %{libdir} %{libdir}/*.jar %{_javadir}/*.jar @@ -508,7 +537,9 @@ fi %{appdir}/ROOT %changelog -* Wed Jun 14 2023 Hui Wang - 1:9.0.76-1 +* Tue Jun 20 2023 Hui Wang - 1:9.0.76-2 +- Resolves: rhbz#2189672 Missing Tomcat POM files in Fedora Rawhide +- Remove JDTCompiler patch because ecj has been update - Update to 9.0.76 - Resolves: rhbz#2188218 Link bin/tomcat-juli.jar to /usr/share/java - Move tomcat-jsp-2.3-api.jar,tomcat-servlet-4.0-api.jar and tomcat-el-api.jar to the subpackages From 3321e54ad4fb13646c4c961ac1580bb97dffaed7 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 22 Jul 2023 16:33:06 +0000 Subject: [PATCH 023/124] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- tomcat.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tomcat.spec b/tomcat.spec index ebfe52b..4888982 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 2%{?dist} +Release: 3%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -537,6 +537,9 @@ fi %{appdir}/ROOT %changelog +* Sat Jul 22 2023 Fedora Release Engineering - 1:9.0.76-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Tue Jun 20 2023 Hui Wang - 1:9.0.76-2 - Resolves: rhbz#2189672 Missing Tomcat POM files in Fedora Rawhide - Remove JDTCompiler patch because ecj has been update From 629d280689cc736385b042a9d39de1d41db2e387 Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Tue, 25 Jul 2023 18:33:59 +0800 Subject: [PATCH 024/124] Resolves: rhbz#2224318 There are duplicated jars in the tomcat lib-subpackage Update to 9.0.78 --- sources | 2 +- tomcat.spec | 34 +++++++++++++++++++++++++--------- 2 files changed, 26 insertions(+), 10 deletions(-) diff --git a/sources b/sources index 2bc150a..fcff246 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.76-src.tar.gz) = 64de4778a4e142baa6e49d5b2d2ca30aaf0133fa1cb450ceb528d6da0440933d01dc9571b6f7b35162de41bf740b71487948ba179ea3d2c75a842848e1bae7bf +SHA512 (apache-tomcat-9.0.78-src.tar.gz) = 220bf46004c4cbad536a7040c979651ee49a13994cf83045369c1bfdc0a96c0172ddc8fd24ab76c9526591c50033d915dbd258939b24d22d660050dcb5abcad4 diff --git a/tomcat.spec b/tomcat.spec index 4888982..2185fb7 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 76 +%global micro_version 78 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 3%{?dist} +Release: 1%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -327,7 +327,7 @@ pushd ${RPM_BUILD_ROOT}%{libdir} %{__ln_s} ../../java/%{name}-el-%{elspec}-api.jar . %{__ln_s} $(build-classpath ecj/ecj) jasper-jdt.jar - %{__cp} -a ../../%{name}/bin/tomcat-juli.jar . + %{__ln_s} ../../%{name}/bin/tomcat-juli.jar . popd # symlink to the FHS locations where we've installed things @@ -353,17 +353,16 @@ popd %mvn_artifact res/maven/tomcat-el-api.pom output/build/lib/el-api.jar %mvn_artifact res/maven/tomcat-jsp-api.pom output/build/lib/jsp-api.jar %mvn_artifact res/maven/tomcat-servlet-api.pom output/build/lib/servlet-api.jar + +%mvn_file org.apache.tomcat:tomcat-annotations-api annotations-api.jar %mvn_artifact res/maven/tomcat-annotations-api.pom ${RPM_BUILD_ROOT}%{libdir}/annotations-api.jar %mvn_artifact res/maven/tomcat-api.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-api.jar +%mvn_file org.apache.tomcat:tomcat-catalina-ant catalina-ant.jar %mvn_artifact res/maven/tomcat-catalina-ant.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-ant.jar +%mvn_file org.apache.tomcat:tomcat-catalina-ha catalina-ha.jar %mvn_artifact res/maven/tomcat-catalina-ha.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-ha.jar -%mvn_artifact res/maven/tomcat-ssi.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-ssi.jar -%mvn_artifact res/maven/tomcat-storeconfig.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-storeconfig.jar -%mvn_artifact res/maven/tomcat-tribes.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-tribes.jar +%mvn_file org.apache.tomcat:tomcat-catalina catalina.jar %mvn_artifact res/maven/tomcat-catalina.pom ${RPM_BUILD_ROOT}%{libdir}/catalina.jar -%mvn_artifact res/maven/tomcat-jasper-el.pom ${RPM_BUILD_ROOT}%{libdir}/jasper-el.jar -%mvn_artifact res/maven/tomcat-jasper.pom ${RPM_BUILD_ROOT}%{libdir}/jasper.jar -%mvn_artifact res/maven/tomcat-jaspic-api.pom ${RPM_BUILD_ROOT}%{libdir}/jaspic-api.jar %mvn_artifact res/maven/tomcat-coyote.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-coyote.jar %mvn_artifact res/maven/tomcat-dbcp.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-dbcp.jar %mvn_artifact res/maven/tomcat-i18n-cs.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-cs.jar @@ -375,11 +374,24 @@ popd %mvn_artifact res/maven/tomcat-i18n-pt-BR.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-pt-BR.jar %mvn_artifact res/maven/tomcat-i18n-ru.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-ru.jar %mvn_artifact res/maven/tomcat-i18n-zh-CN.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-zh-CN.jar +%mvn_file org.apache.tomcat:tomcat-jasper-el jasper-el.jar +%mvn_artifact res/maven/tomcat-jasper-el.pom ${RPM_BUILD_ROOT}%{libdir}/jasper-el.jar +%mvn_file org.apache.tomcat:tomcat-jasper jasper.jar +%mvn_artifact res/maven/tomcat-jasper.pom ${RPM_BUILD_ROOT}%{libdir}/jasper.jar +%mvn_file org.apache.tomcat:tomcat-jaspic-api jaspic-api.jar +%mvn_artifact res/maven/tomcat-jaspic-api.pom ${RPM_BUILD_ROOT}%{libdir}/jaspic-api.jar %mvn_artifact res/maven/tomcat-jdbc.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-jdbc.jar %mvn_artifact res/maven/tomcat-jni.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-jni.jar %mvn_artifact res/maven/tomcat-juli.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-juli.jar +%mvn_file org.apache.tomcat:tomcat-ssi catalina-ssi.jar +%mvn_artifact res/maven/tomcat-ssi.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-ssi.jar +%mvn_file org.apache.tomcat:tomcat-storeconfig catalina-storeconfig.jar +%mvn_artifact res/maven/tomcat-storeconfig.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-storeconfig.jar +%mvn_file org.apache.tomcat:tomcat-tribes catalina-tribes.jar +%mvn_artifact res/maven/tomcat-tribes.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-tribes.jar %mvn_artifact res/maven/tomcat-util-scan.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-util-scan.jar %mvn_artifact res/maven/tomcat-util.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-util.jar +%mvn_file org.apache.tomcat:tomcat-websocket-api websocket-api.jar %mvn_artifact res/maven/tomcat-websocket-api.pom ${RPM_BUILD_ROOT}%{libdir}/websocket-api.jar %mvn_artifact res/maven/tomcat-websocket.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-websocket.jar %mvn_artifact res/maven/tomcat.pom @@ -537,6 +549,10 @@ fi %{appdir}/ROOT %changelog +* Tue Jul 25 2023 Hui Wang - 1:9.0.78-1 +- Resolves: rhbz#2224318 There are duplicated jars in the tomcat lib-subpackage +- Update to 9.0.78 + * Sat Jul 22 2023 Fedora Release Engineering - 1:9.0.76-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From 6a5576eae4a7cb6888d5ae514fbaacd4fa76e71d Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Tue, 25 Jul 2023 18:45:35 +0800 Subject: [PATCH 025/124] copy tomcat-juli.jar into the lib subpackage Resolves: rhbz#2224318 There are duplicated jars in the tomcat lib-subpackage --- tomcat.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tomcat.spec b/tomcat.spec index 2185fb7..c1244ae 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -327,7 +327,7 @@ pushd ${RPM_BUILD_ROOT}%{libdir} %{__ln_s} ../../java/%{name}-el-%{elspec}-api.jar . %{__ln_s} $(build-classpath ecj/ecj) jasper-jdt.jar - %{__ln_s} ../../%{name}/bin/tomcat-juli.jar . + cp ../../%{name}/bin/tomcat-juli.jar . popd # symlink to the FHS locations where we've installed things From 8b4c6be1c692dfba42febdca263feb0fc26ba4d5 Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Tue, 25 Jul 2023 19:53:55 +0800 Subject: [PATCH 026/124] Related: rhbz#2224318 There are duplicated jars in the tomcat lib-subpackage --- tomcat.spec | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index c1244ae..63070c6 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -354,14 +354,14 @@ popd %mvn_artifact res/maven/tomcat-jsp-api.pom output/build/lib/jsp-api.jar %mvn_artifact res/maven/tomcat-servlet-api.pom output/build/lib/servlet-api.jar -%mvn_file org.apache.tomcat:tomcat-annotations-api annotations-api.jar +%mvn_file org.apache.tomcat:tomcat-annotations-api tomcat/annotations-api %mvn_artifact res/maven/tomcat-annotations-api.pom ${RPM_BUILD_ROOT}%{libdir}/annotations-api.jar %mvn_artifact res/maven/tomcat-api.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-api.jar -%mvn_file org.apache.tomcat:tomcat-catalina-ant catalina-ant.jar +%mvn_file org.apache.tomcat:tomcat-catalina-ant tomcat/catalina-ant %mvn_artifact res/maven/tomcat-catalina-ant.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-ant.jar -%mvn_file org.apache.tomcat:tomcat-catalina-ha catalina-ha.jar +%mvn_file org.apache.tomcat:tomcat-catalina-ha tomcat/catalina-ha %mvn_artifact res/maven/tomcat-catalina-ha.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-ha.jar -%mvn_file org.apache.tomcat:tomcat-catalina catalina.jar +%mvn_file org.apache.tomcat:tomcat-catalina tomcat/catalina %mvn_artifact res/maven/tomcat-catalina.pom ${RPM_BUILD_ROOT}%{libdir}/catalina.jar %mvn_artifact res/maven/tomcat-coyote.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-coyote.jar %mvn_artifact res/maven/tomcat-dbcp.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-dbcp.jar @@ -374,29 +374,31 @@ popd %mvn_artifact res/maven/tomcat-i18n-pt-BR.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-pt-BR.jar %mvn_artifact res/maven/tomcat-i18n-ru.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-ru.jar %mvn_artifact res/maven/tomcat-i18n-zh-CN.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-zh-CN.jar -%mvn_file org.apache.tomcat:tomcat-jasper-el jasper-el.jar +%mvn_file org.apache.tomcat:tomcat-jasper-el tomcat/jasper-el %mvn_artifact res/maven/tomcat-jasper-el.pom ${RPM_BUILD_ROOT}%{libdir}/jasper-el.jar -%mvn_file org.apache.tomcat:tomcat-jasper jasper.jar +%mvn_file org.apache.tomcat:tomcat-jasper tomcat/jasper %mvn_artifact res/maven/tomcat-jasper.pom ${RPM_BUILD_ROOT}%{libdir}/jasper.jar -%mvn_file org.apache.tomcat:tomcat-jaspic-api jaspic-api.jar +%mvn_file org.apache.tomcat:tomcat-jaspic-api tomcat/jaspic-api %mvn_artifact res/maven/tomcat-jaspic-api.pom ${RPM_BUILD_ROOT}%{libdir}/jaspic-api.jar %mvn_artifact res/maven/tomcat-jdbc.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-jdbc.jar %mvn_artifact res/maven/tomcat-jni.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-jni.jar %mvn_artifact res/maven/tomcat-juli.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-juli.jar -%mvn_file org.apache.tomcat:tomcat-ssi catalina-ssi.jar +%mvn_file org.apache.tomcat:tomcat-ssi tomcat/catalina-ssi %mvn_artifact res/maven/tomcat-ssi.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-ssi.jar -%mvn_file org.apache.tomcat:tomcat-storeconfig catalina-storeconfig.jar +%mvn_file org.apache.tomcat:tomcat-storeconfig tomcat/catalina-storeconfig %mvn_artifact res/maven/tomcat-storeconfig.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-storeconfig.jar -%mvn_file org.apache.tomcat:tomcat-tribes catalina-tribes.jar +%mvn_file org.apache.tomcat:tomcat-tribes tomcat/catalina-tribes %mvn_artifact res/maven/tomcat-tribes.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-tribes.jar %mvn_artifact res/maven/tomcat-util-scan.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-util-scan.jar %mvn_artifact res/maven/tomcat-util.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-util.jar -%mvn_file org.apache.tomcat:tomcat-websocket-api websocket-api.jar +%mvn_file org.apache.tomcat:tomcat-websocket-api tomcat/websocket-api %mvn_artifact res/maven/tomcat-websocket-api.pom ${RPM_BUILD_ROOT}%{libdir}/websocket-api.jar %mvn_artifact res/maven/tomcat-websocket.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-websocket.jar %mvn_artifact res/maven/tomcat.pom %mvn_install +#remove the jars which %mvn_file installs jars in the %{_javadir} +%{__rm} ${RPM_BUILD_ROOT}%{_javadir}/*.jar %pre # add the tomcat user and group @@ -549,6 +551,9 @@ fi %{appdir}/ROOT %changelog +* Tue Jul 25 2023 Hui Wang - 1:9.0.78-2 +- Resolves: rhbz#2224318 There are duplicated jars in the tomcat lib-subpackage + * Tue Jul 25 2023 Hui Wang - 1:9.0.78-1 - Resolves: rhbz#2224318 There are duplicated jars in the tomcat lib-subpackage - Update to 9.0.78 From e5a0772f993b5fb85f42741e017eada92d40cf61 Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Tue, 25 Jul 2023 20:04:31 +0800 Subject: [PATCH 027/124] Related: rhbz#2224318 There are duplicated jars in the tomcat lib-subpackage --- tomcat.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 63070c6..fb404e0 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -397,8 +397,6 @@ popd %mvn_artifact res/maven/tomcat.pom %mvn_install -#remove the jars which %mvn_file installs jars in the %{_javadir} -%{__rm} ${RPM_BUILD_ROOT}%{_javadir}/*.jar %pre # add the tomcat user and group From 335305ef4fababd76569811ca18ebc065c4426bb Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Wed, 26 Jul 2023 18:04:07 +0800 Subject: [PATCH 028/124] Exclude jnidir in the lib subpackage --- tomcat.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index fb404e0..2becd14 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 2%{?dist} +Release: 3%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -526,6 +526,7 @@ fi %exclude %{_javadir}/%{name}-servlet-api.jar %exclude %{_javadir}/%{name}-el-api.jar %exclude %{_javadir}/%{name}-jsp-api.jar +%exclude %{_jnidir}/* %files jsp-%{jspspec}-api -f .mfiles-tomcat-jsp-api %{_javadir}/%{name}-jsp-%{jspspec}*.jar @@ -549,8 +550,11 @@ fi %{appdir}/ROOT %changelog +* Wed Jul 26 2023 Hui Wang - 1:9.0.78-3 +- Exclude jnidir in the lib subpackage + * Tue Jul 25 2023 Hui Wang - 1:9.0.78-2 -- Resolves: rhbz#2224318 There are duplicated jars in the tomcat lib-subpackage +- Resolves: rhbz#2224318 There are duplicated jars in the tomcat lib subpackage * Tue Jul 25 2023 Hui Wang - 1:9.0.78-1 - Resolves: rhbz#2224318 There are duplicated jars in the tomcat lib-subpackage From d26c29c4e836e1083303a2dfe4858e7b1e9be824 Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Fri, 4 Aug 2023 21:55:14 +0800 Subject: [PATCH 029/124] Fix files permission --- tomcat.spec | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/tomcat.spec b/tomcat.spec index 2becd14..fe229b4 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 3%{?dist} +Release: 4%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -510,9 +510,11 @@ fi %{appdir}/manager %files docs-webapp +%defattr(-,root,root,-) %{appdir}/docs %files lib -f .mfiles +%defattr(-,root,root,-) %dir %{libdir} %{libdir}/*.jar %{_javadir}/*.jar @@ -529,17 +531,20 @@ fi %exclude %{_jnidir}/* %files jsp-%{jspspec}-api -f .mfiles-tomcat-jsp-api +%defattr(-,root,root,-) %{_javadir}/%{name}-jsp-%{jspspec}*.jar %{libdir}/%{name}-jsp-%{jspspec}*.jar %{_javadir}/%{name}-jsp-api.jar %files servlet-%{servletspec}-api -f .mfiles-tomcat-servlet-api +%defattr(-,root,root,-) %doc LICENSE %{_javadir}/%{name}-servlet-%{servletspec}*.jar %{libdir}/%{name}-servlet-%{servletspec}*.jar %{_javadir}/%{name}-servlet-api.jar %files el-%{elspec}-api -f .mfiles-tomcat-el-api +%defattr(-,root,root,-) %doc LICENSE %{_javadir}/%{name}-el-%{elspec}-api.jar %{libdir}/%{name}-el-%{elspec}-api.jar @@ -550,6 +555,9 @@ fi %{appdir}/ROOT %changelog +* Fri Aug 04 2023 Hui Wang - 1:9.0.78-4 +- Fix files permission + * Wed Jul 26 2023 Hui Wang - 1:9.0.78-3 - Exclude jnidir in the lib subpackage From 95b25c29b3b64ad79f0949ff09093d2c03034341 Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Tue, 8 Aug 2023 15:35:30 +0800 Subject: [PATCH 030/124] Revert the fix files permission --- tomcat.spec | 5 ----- 1 file changed, 5 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index fe229b4..101c183 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -510,11 +510,9 @@ fi %{appdir}/manager %files docs-webapp -%defattr(-,root,root,-) %{appdir}/docs %files lib -f .mfiles -%defattr(-,root,root,-) %dir %{libdir} %{libdir}/*.jar %{_javadir}/*.jar @@ -531,20 +529,17 @@ fi %exclude %{_jnidir}/* %files jsp-%{jspspec}-api -f .mfiles-tomcat-jsp-api -%defattr(-,root,root,-) %{_javadir}/%{name}-jsp-%{jspspec}*.jar %{libdir}/%{name}-jsp-%{jspspec}*.jar %{_javadir}/%{name}-jsp-api.jar %files servlet-%{servletspec}-api -f .mfiles-tomcat-servlet-api -%defattr(-,root,root,-) %doc LICENSE %{_javadir}/%{name}-servlet-%{servletspec}*.jar %{libdir}/%{name}-servlet-%{servletspec}*.jar %{_javadir}/%{name}-servlet-api.jar %files el-%{elspec}-api -f .mfiles-tomcat-el-api -%defattr(-,root,root,-) %doc LICENSE %{_javadir}/%{name}-el-%{elspec}-api.jar %{libdir}/%{name}-el-%{elspec}-api.jar From f1ec641a7b07729b29bf8babcd2deea15ad8a720 Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Wed, 13 Sep 2023 15:32:34 +0800 Subject: [PATCH 031/124] Update to 9.0.80 --- sources | 2 +- tomcat.spec | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/sources b/sources index fcff246..2068d0a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.78-src.tar.gz) = 220bf46004c4cbad536a7040c979651ee49a13994cf83045369c1bfdc0a96c0172ddc8fd24ab76c9526591c50033d915dbd258939b24d22d660050dcb5abcad4 +SHA512 (apache-tomcat-9.0.80-src.tar.gz) = a2fb298c1fd2615e1a69371b5f84eb569e897faad3cbe17e3626460f5ce311085c120dd3f62c255fde87e6517915365ab52ada613776d45185b8e53624935114 diff --git a/tomcat.spec b/tomcat.spec index 101c183..c33f106 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 78 +%global micro_version 80 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 4%{?dist} +Release: 1%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -94,7 +94,7 @@ BuildRequires: aqute-bnd BuildRequires: aqute-bndlib BuildRequires: systemd -Requires: java-headless >= 1:1.8.0 +Requires: (java-headless >= 1:1.8 or java-1.8.0-headless or java-11-headless or java-17-headless or java >= 1:1.8) Requires: javapackages-tools Requires: %{name}-lib = %{epoch}:%{version}-%{release} %if 0%{?fedora} || 0%{?rhel} > 7 @@ -550,6 +550,10 @@ fi %{appdir}/ROOT %changelog +* Wed Sep 13 2023 Hui Wang - 1:9.0.80-1 +- Update to 9.0.80 +- Fix java version + * Fri Aug 04 2023 Hui Wang - 1:9.0.78-4 - Fix files permission From 703557e0a6e86d22c00a160620749e61af18f818 Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Mon, 16 Oct 2023 11:06:28 +0800 Subject: [PATCH 032/124] Update to 9.0.82 Resolves: rhbz#2244333 Wrong dbcp class in tomcat 9 --- sources | 2 +- tomcat-9.0.conf | 2 +- tomcat.spec | 6 +++++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/sources b/sources index 2068d0a..05325b8 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.80-src.tar.gz) = a2fb298c1fd2615e1a69371b5f84eb569e897faad3cbe17e3626460f5ce311085c120dd3f62c255fde87e6517915365ab52ada613776d45185b8e53624935114 +SHA512 (apache-tomcat-9.0.82-src.tar.gz) = 0291196832150147230a263bcfd64f7ac9ce9f6c26924f72b831d28479e7886f00b9ab3adff175785e8c5b47d8b16f7a7897acafa3474428f48cec02fd852b3e diff --git a/tomcat-9.0.conf b/tomcat-9.0.conf index e5fa60a..6e9eed1 100644 --- a/tomcat-9.0.conf +++ b/tomcat-9.0.conf @@ -35,7 +35,7 @@ CATALINA_TMPDIR="/var/cache/tomcat/temp" #JAVA_OPTS="-Djava.library.path=/usr/lib" # Set default javax.sql.DataSource factory to apache commons one. See rhbz#1214381 -JAVA_OPTS="-Djavax.sql.DataSource.Factory=org.apache.commons.dbcp.BasicDataSourceFactory" +JAVA_OPTS="-Djavax.sql.DataSource.Factory=org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory" # You can change your tomcat locale here #LANG="en_US" diff --git a/tomcat.spec b/tomcat.spec index c33f106..8c97935 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 80 +%global micro_version 82 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -550,6 +550,10 @@ fi %{appdir}/ROOT %changelog +* Mon Oct 16 2023 Hui Wang - 1:9.0.82-1 +- Update to 9.0.82 +- Resolves: rhbz#2244333 Wrong dbcp class in tomcat 9 + * Wed Sep 13 2023 Hui Wang - 1:9.0.80-1 - Update to 9.0.80 - Fix java version From 939897238cdd90835ccc354c775b4c86463c98f2 Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Mon, 16 Oct 2023 11:36:25 +0800 Subject: [PATCH 033/124] Update tomcat-build.patch --- tomcat-build.patch | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/tomcat-build.patch b/tomcat-build.patch index 49c63ff..cdf73ef 100644 --- a/tomcat-build.patch +++ b/tomcat-build.patch @@ -1,12 +1,19 @@ diff -up ./res/bnd/build-defaults.bnd.orig ./res/bnd/build-defaults.bnd ---- ./res/bnd/build-defaults.bnd.orig 2020-07-13 13:47:01.229077747 -0400 -+++ ./res/bnd/build-defaults.bnd 2020-07-13 13:47:12.923095618 -0400 +--- res/bnd/build-defaults.bnd.orig 2023-10-16 11:23:04.752754202 +0800 ++++ res/bnd/build-defaults.bnd 2023-10-16 11:23:29.931876910 +0800 @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -Bundle-Version: ${version_cleanup;${version}} +Bundle-Version: ${version} + Bundle-License: https://www.apache.org/licenses/LICENSE-2.0.txt Specification-Title: Apache Tomcat - Specification-Version: ${version.major.minor} +@@ -36,4 +36,4 @@ X-Compile-Target-JDK: ${compile.release} + + -removeheaders: DSTAMP,TODAY,TSTAMP + +-module.name: org.apache.${replace;${Bundle-Name};-;.} +\ No newline at end of file ++module.name: org.apache.${replace;${Bundle-Name};-;.} From a1fd99bcdea731d166b0e6b587c503b6119a3b70 Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Fri, 1 Dec 2023 17:41:19 +0800 Subject: [PATCH 034/124] Update to 9.0.83 --- sources | 2 +- tomcat.spec | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/sources b/sources index 05325b8..4196751 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.82-src.tar.gz) = 0291196832150147230a263bcfd64f7ac9ce9f6c26924f72b831d28479e7886f00b9ab3adff175785e8c5b47d8b16f7a7897acafa3474428f48cec02fd852b3e +SHA512 (apache-tomcat-9.0.83-src.tar.gz) = 28e112a9d01918434ad03c414058275bbc4e34be408c2cfe2d819c3a08cadc3c31920e279c5312529aa2f5abf1e002537012c5f06d43ba8894448afd5585c231 diff --git a/tomcat.spec b/tomcat.spec index 8c97935..4d2cae1 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 82 +%global micro_version 83 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -550,6 +550,9 @@ fi %{appdir}/ROOT %changelog +* Fri Dec 01 2023 Hui Wang - 1:9.0.83-1 +- Update to 9.0.83 + * Mon Oct 16 2023 Hui Wang - 1:9.0.82-1 - Update to 9.0.82 - Resolves: rhbz#2244333 Wrong dbcp class in tomcat 9 From a50fce8a6a5dff61c9bff89e785859f33d9ee893 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 27 Jan 2024 06:30:56 +0000 Subject: [PATCH 035/124] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- tomcat.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tomcat.spec b/tomcat.spec index 4d2cae1..74eb1ea 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -550,6 +550,9 @@ fi %{appdir}/ROOT %changelog +* Sat Jan 27 2024 Fedora Release Engineering - 1:9.0.83-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Fri Dec 01 2023 Hui Wang - 1:9.0.83-1 - Update to 9.0.83 From 1c0506a38e7f9988511a996d4923e7053cb21ee7 Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Tue, 27 Feb 2024 18:20:42 +0100 Subject: [PATCH 036/124] Rebuilt for java-21-openjdk as system jdk https://fedoraproject.org/wiki/Changes/Java21 --- tomcat.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tomcat.spec b/tomcat.spec index 74eb1ea..cbed8f5 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 2%{?dist} +Release: 3%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -550,6 +550,9 @@ fi %{appdir}/ROOT %changelog +* Tue Feb 27 2024 Jiri Vanek - 1:9.0.83-3 +- Rebuilt for java-21-openjdk as system jdk + * Sat Jan 27 2024 Fedora Release Engineering - 1:9.0.83-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 1ee70ac927e6926b3afdd3164175319e5b78a5c1 Mon Sep 17 00:00:00 2001 From: Adam Williamson Date: Thu, 29 Feb 2024 15:45:57 -0800 Subject: [PATCH 037/124] Accept java-21-headless as one of the alternatives for java --- tomcat.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index cbed8f5..3e2e6e6 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 3%{?dist} +Release: 4%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -94,7 +94,7 @@ BuildRequires: aqute-bnd BuildRequires: aqute-bndlib BuildRequires: systemd -Requires: (java-headless >= 1:1.8 or java-1.8.0-headless or java-11-headless or java-17-headless or java >= 1:1.8) +Requires: (java-headless >= 1:1.8 or java-1.8.0-headless or java-11-headless or java-17-headless or java-21-headless or java >= 1:1.8) Requires: javapackages-tools Requires: %{name}-lib = %{epoch}:%{version}-%{release} %if 0%{?fedora} || 0%{?rhel} > 7 @@ -550,6 +550,9 @@ fi %{appdir}/ROOT %changelog +* Thu Feb 29 2024 Adam Williamson - 1:9.0.83-4 +- Accept java-21-headless as one of the alternatives for java + * Tue Feb 27 2024 Jiri Vanek - 1:9.0.83-3 - Rebuilt for java-21-openjdk as system jdk From 9f4d5c76f549c6a11c349097c60bc44662663248 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Fri, 24 May 2024 14:10:14 +0300 Subject: [PATCH 038/124] Update to 10.1.24 --- java-9-start-up-parameters.conf | 7 - module-start-up-parameters.conf | 7 + rhbz-1857043.patch | 29 ++-- sources | 2 +- tomcat-10.1-JDTCompiler.patch | 46 ++++++ ....patch => tomcat-10.1-bnd-annotation.patch | 0 ...=> tomcat-10.1-bootstrap-MANIFEST.MF.patch | 0 tomcat-10.1-catalina-policy.patch | 17 +++ ...digest.script => tomcat-10.1-digest.script | 0 ...h => tomcat-10.1-tomcat-users-webapp.patch | 0 ....script => tomcat-10.1-tool-wrapper.script | 0 tomcat-9.0.conf => tomcat-10.1.conf | 15 +- tomcat-9.0.logrotate => tomcat-10.1.logrotate | 0 tomcat-9.0.service => tomcat-10.1.service | 0 tomcat-9.0.sysconfig => tomcat-10.1.sysconfig | 0 tomcat-9.0.wrapper => tomcat-10.1.wrapper | 0 tomcat-9.0-JDTCompiler.patch | 24 --- tomcat-9.0-catalina-policy.patch | 25 ---- tomcat-9.0-log4j.properties | 11 -- tomcat.spec | 139 ++++++++---------- 20 files changed, 150 insertions(+), 172 deletions(-) delete mode 100644 java-9-start-up-parameters.conf create mode 100644 module-start-up-parameters.conf create mode 100644 tomcat-10.1-JDTCompiler.patch rename tomcat-9.0-bnd-annotation.patch => tomcat-10.1-bnd-annotation.patch (100%) rename tomcat-9.0-bootstrap-MANIFEST.MF.patch => tomcat-10.1-bootstrap-MANIFEST.MF.patch (100%) create mode 100644 tomcat-10.1-catalina-policy.patch rename tomcat-9.0-digest.script => tomcat-10.1-digest.script (100%) rename tomcat-9.0-tomcat-users-webapp.patch => tomcat-10.1-tomcat-users-webapp.patch (100%) rename tomcat-9.0-tool-wrapper.script => tomcat-10.1-tool-wrapper.script (100%) rename tomcat-9.0.conf => tomcat-10.1.conf (73%) rename tomcat-9.0.logrotate => tomcat-10.1.logrotate (100%) rename tomcat-9.0.service => tomcat-10.1.service (100%) rename tomcat-9.0.sysconfig => tomcat-10.1.sysconfig (100%) rename tomcat-9.0.wrapper => tomcat-10.1.wrapper (100%) delete mode 100644 tomcat-9.0-JDTCompiler.patch delete mode 100644 tomcat-9.0-catalina-policy.patch delete mode 100644 tomcat-9.0-log4j.properties diff --git a/java-9-start-up-parameters.conf b/java-9-start-up-parameters.conf deleted file mode 100644 index 341e077..0000000 --- a/java-9-start-up-parameters.conf +++ /dev/null @@ -1,7 +0,0 @@ -# Add the JAVA 9 specific start-up parameters required by Tomcat -JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.base/java.lang=ALL-UNNAMED" -JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.base/java.io=ALL-UNNAMED" -JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.base/java.util=ALL-UNNAMED" -JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.base/java.util.concurrent=ALL-UNNAMED" -JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED" -export JDK_JAVA_OPTIONS diff --git a/module-start-up-parameters.conf b/module-start-up-parameters.conf new file mode 100644 index 0000000..ba35e23 --- /dev/null +++ b/module-start-up-parameters.conf @@ -0,0 +1,7 @@ +# Add the module start-up parameters required by Tomcat +JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.lang=ALL-UNNAMED" +JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.io=ALL-UNNAMED" +JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.util=ALL-UNNAMED" +JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.util.concurrent=ALL-UNNAMED" +JAVA_OPTS="$JAVA_OPTS --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED" +export JAVA_OPTS diff --git a/rhbz-1857043.patch b/rhbz-1857043.patch index dd74c3b..dd2a38c 100644 --- a/rhbz-1857043.patch +++ b/rhbz-1857043.patch @@ -1,7 +1,6 @@ -diff -up ./build.xml.orig ./build.xml ---- build.xml.orig 2021-07-07 10:53:55.493742841 +0800 -+++ build.xml 2021-07-07 11:09:43.107968515 +0800 -@@ -1020,7 +1020,7 @@ +--- build.xml.orig 2024-05-09 20:41:23.000000000 +0300 ++++ build.xml 2024-05-22 17:26:11.558331902 +0300 +@@ -1111,7 +1111,7 @@ filesDir="${tomcat.classes}" filesId="files.annotations-api" manifest="${tomcat.manifests}/annotations-api.jar.manifest" @@ -10,7 +9,7 @@ diff -up ./build.xml.orig ./build.xml ++ addOSGi="false" /> + + + + addOSGi="false" /> @@ -58,7 +65,7 @@ diff -up ./build.xml.orig ./build.xml = 1:4.10 +BuildRequires: ant >= 1.10.2 +BuildRequires: ecj >= 4.20 BuildRequires: findutils -BuildRequires: java-devel >= 1:1.8.0 +BuildRequires: java-devel >= 17 BuildRequires: javapackages-local BuildRequires: aqute-bnd BuildRequires: aqute-bndlib BuildRequires: systemd +BuildRequires: tomcat-jakartaee-migration -Requires: (java-headless >= 1:1.8 or java-1.8.0-headless or java-11-headless or java-17-headless or java-21-headless or java >= 1:1.8) +Requires: (java-headless >= 11 or java >= 11) Requires: javapackages-tools Requires: %{name}-lib = %{epoch}:%{version}-%{release} %if 0%{?fedora} || 0%{?rhel} > 7 @@ -135,7 +137,7 @@ The docs web application for Apache Tomcat. %package jsp-%{jspspec}-api Summary: Apache Tomcat JavaServer Pages v%{jspspec} API Implementation Classes Provides: jsp = %{jspspec} -Obsoletes: %{name}-jsp-2.2-api +Obsoletes: %{name}-jsp-2.3-api Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} @@ -147,7 +149,8 @@ Summary: Libraries needed to run the Tomcat Web container Requires: %{name}-jsp-%{jspspec}-api = %{epoch}:%{version}-%{release} Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} -Requires: ecj >= 1:4.10 +Requires: ecj >= 4.20 +Requires: tomcat-jakartaee-migration Requires(preun): coreutils %description lib @@ -156,9 +159,7 @@ Libraries needed to run the Tomcat Web container. %package servlet-%{servletspec}-api Summary: Apache Tomcat Java Servlet v%{servletspec} API Implementation Classes Provides: servlet = %{servletspec} -Provides: servlet6 -Provides: servlet3 -Obsoletes: %{name}-servlet-3.1-api +Obsoletes: %{name}-servlet-4.0-api %description servlet-%{servletspec}-api Apache Tomcat Servlet API Implementation Classes. @@ -166,7 +167,7 @@ Apache Tomcat Servlet API Implementation Classes. %package el-%{elspec}-api Summary: Apache Tomcat Expression Language v%{elspec} API Implementation Classes Provides: el_api = %{elspec} -Obsoletes: %{name}-el-2.2-api +Obsoletes: %{name}-el-3.0-api %description el-%{elspec}-api Apache Tomcat EL API Implementation Classes. @@ -189,6 +190,7 @@ find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name " %patch 2 -p0 %patch 3 -p0 %patch 4 -p0 +%patch 5 -p0 %patch 6 -p0 # Remove webservices naming resources as it's generally unused @@ -196,14 +198,13 @@ find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name " # Configure maven files %mvn_package ":tomcat-el-api" tomcat-el-api -%mvn_alias "org.apache.tomcat:tomcat-el-api" "org.eclipse.jetty.orbit:javax.el" +%mvn_alias "org.apache.tomcat:tomcat-el-api" "jakarta.servlet:jakarta.servlet-api" %mvn_package ":tomcat-jsp-api" tomcat-jsp-api -%mvn_alias "org.apache.tomcat:tomcat-jsp-api" "org.eclipse.jetty.orbit:javax.servlet.jsp" +%mvn_alias "org.apache.tomcat:tomcat-jsp-api" "jakarta.servlet:jakarta.servlet.jsp" %mvn_package ":tomcat-servlet-api" tomcat-servlet-api - %build -export OPT_JAR_LIST="xalan-j2-serializer" +#export OPT_JAR_LIST="xalan-j2-serializer" # we don't care about the tarballs and we're going to replace # tomcat-dbcp.jar with apache-commons-{collections,dbcp,pool}-tomcat5.jar # so just create a dummy file for later removal @@ -225,12 +226,13 @@ touch HACK -Dbnd-annotation.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ -Dversion="%{version}" \ -Dversion.build="%{micro_version}" \ + -Dmigration-lib.jar="$(build-classpath tomcat-jakartaee-migration/jakartaee-migration.jar)" \ deploy # remove some jars that we'll replace with symlinks later -%{__rm} output/build/bin/commons-daemon.jar output/build/lib/ecj.jar +%{__rm} output/build/bin/commons-daemon.jar output/build/lib/ecj.jar output/build/lib/jakartaee-migration.jar # Remove the example webapps per Apache Tomcat Security Considerations -# see https://tomcat.apache.org/tomcat-9.0-doc/security-howto.html +# see https://tomcat.apache.org/tomcat-10.1-doc/security-howto.html %{__rm} -rf output/build/webapps/examples @@ -238,7 +240,6 @@ touch HACK # build initial path structure %{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_bindir} %{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_sbindir} -%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_systemddir} %{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d %{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig %{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{appdir} @@ -271,33 +272,33 @@ popd > ${RPM_BUILD_ROOT}%{confdir}/%{name}.conf %{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE3} \ + -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE2} \ > ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/%{name} -%{__install} -m 0644 %{SOURCE4} \ +%{__install} -m 0755 %{SOURCE3} \ ${RPM_BUILD_ROOT}%{_sbindir}/%{name} -%{__install} -m 0644 %{SOURCE11} \ +%{__install} -m 0644 %{SOURCE7} \ ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service -%{__sed} -e "s|\@\@\@TCLOG\@\@\@|%{logdir}|g" %{SOURCE5} \ +%{__sed} -e "s|\@\@\@TCLOG\@\@\@|%{logdir}|g" %{SOURCE4} \ > ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{name}.disabled %{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE6} \ + -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE5} \ > ${RPM_BUILD_ROOT}%{_bindir}/%{name}-digest %{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE7} \ + -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE6} \ > ${RPM_BUILD_ROOT}%{_bindir}/%{name}-tool-wrapper -%{__install} -m 0644 %{SOURCE21} \ +%{__install} -m 0644 %{SOURCE8} \ ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/functions -%{__install} -m 0755 %{SOURCE30} \ +%{__install} -m 0755 %{SOURCE9} \ ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/preamble -%{__install} -m 0755 %{SOURCE31} \ +%{__install} -m 0755 %{SOURCE10} \ ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/server -%{__install} -m 0644 %{SOURCE32} \ +%{__install} -m 0644 %{SOURCE11} \ ${RPM_BUILD_ROOT}%{_unitdir}/%{name}@.service -%{__install} -m 0644 %{SOURCE33} ${RPM_BUILD_ROOT}%{confdir}/conf.d/ +%{__install} -m 0644 %{SOURCE12} ${RPM_BUILD_ROOT}%{confdir}/conf.d/ # Substitute libnames in catalina-tasks.xml sed -i \ @@ -318,6 +319,7 @@ popd pushd output/build %{_bindir}/build-jar-repository lib ecj 2>&1 + %{_bindir}/build-jar-repository lib tomcat-jakartaee-migration 2>&1 popd pushd ${RPM_BUILD_ROOT}%{libdir} @@ -326,6 +328,7 @@ pushd ${RPM_BUILD_ROOT}%{libdir} %{__ln_s} ../../java/%{name}-servlet-%{servletspec}-api.jar . %{__ln_s} ../../java/%{name}-el-%{elspec}-api.jar . %{__ln_s} $(build-classpath ecj/ecj) jasper-jdt.jar + %{__ln_s} $(build-classpath tomcat-jakartaee-migration/jakartaee-migration) jakartaee-migration.jar cp ../../%{name}/bin/tomcat-juli.jar . popd @@ -394,6 +397,7 @@ popd %mvn_file org.apache.tomcat:tomcat-websocket-api tomcat/websocket-api %mvn_artifact res/maven/tomcat-websocket-api.pom ${RPM_BUILD_ROOT}%{libdir}/websocket-api.jar %mvn_artifact res/maven/tomcat-websocket.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-websocket.jar +%mvn_artifact res/maven/tomcat-websocket-client-api.pom ${RPM_BUILD_ROOT}%{libdir}/websocket-client-api.jar %mvn_artifact res/maven/tomcat.pom %mvn_install @@ -413,18 +417,6 @@ exit 0 # install but don't activate %systemd_post %{name}.service -%post jsp-%{jspspec}-api -%{_sbindir}/update-alternatives --install %{_javadir}/jsp.jar jsp \ - %{_javadir}/%{name}-jsp-%{jspspec}-api.jar 20200 - -%post servlet-%{servletspec}-api -%{_sbindir}/update-alternatives --install %{_javadir}/servlet.jar servlet \ - %{_javadir}/%{name}-servlet-%{servletspec}-api.jar 30000 - -%post el-%{elspec}-api -%{_sbindir}/update-alternatives --install %{_javadir}/elspec.jar elspec \ - %{_javadir}/%{name}-el-%{elspec}-api.jar 20300 - %preun # clean tempdir and workdir on removal or upgrade %{__rm} -rf %{workdir}/* %{tempdir}/* @@ -433,24 +425,6 @@ exit 0 %postun %systemd_postun_with_restart %{name}.service -%postun jsp-%{jspspec}-api -if [ "$1" = "0" ]; then - %{_sbindir}/update-alternatives --remove jsp \ - %{_javadir}/%{name}-jsp-%{jspspec}-api.jar -fi - -%postun servlet-%{servletspec}-api -if [ "$1" = "0" ]; then - %{_sbindir}/update-alternatives --remove servlet \ - %{_javadir}/%{name}-servlet-%{servletspec}-api.jar -fi - -%postun el-%{elspec}-api -if [ "$1" = "0" ]; then - %{_sbindir}/update-alternatives --remove elspec \ - %{_javadir}/%{name}-el-%{elspec}-api.jar -fi - %files %defattr(0664,root,tomcat,0755) %doc {LICENSE,NOTICE,RELEASE*} @@ -483,7 +457,7 @@ fi %attr(0775,root,tomcat) %dir %{confdir}/Catalina/localhost %attr(0755,root,tomcat) %dir %{confdir}/conf.d %{confdir}/conf.d/README -%{confdir}/conf.d/java-9-start-up-parameters.conf +%{confdir}/conf.d/module-start-up-parameters.conf %config(noreplace) %{confdir}/%{name}.conf %config(noreplace) %{confdir}/*.policy %config(noreplace) %{confdir}/*.properties @@ -550,6 +524,9 @@ fi %{appdir}/ROOT %changelog +* Fri May 31 2024 Dimitris Soumis - 1:10.1.24-1 +- Update to 10.1.24 + * Thu Feb 29 2024 Adam Williamson - 1:9.0.83-4 - Accept java-21-headless as one of the alternatives for java From e151cd9da8aeccd9bf6c13296d2ea78a6cf8c8ab Mon Sep 17 00:00:00 2001 From: dsoumis Date: Fri, 7 Jun 2024 19:04:58 +0300 Subject: [PATCH 039/124] Revert "Update to 10.1.24" This reverts commit 9f4d5c76f549c6a11c349097c60bc44662663248. --- java-9-start-up-parameters.conf | 7 + module-start-up-parameters.conf | 7 - rhbz-1857043.patch | 29 ++-- sources | 2 +- tomcat-10.1-JDTCompiler.patch | 46 ------ tomcat-10.1-catalina-policy.patch | 17 --- tomcat-9.0-JDTCompiler.patch | 24 +++ ...n.patch => tomcat-9.0-bnd-annotation.patch | 0 ... => tomcat-9.0-bootstrap-MANIFEST.MF.patch | 0 tomcat-9.0-catalina-policy.patch | 25 ++++ ...-digest.script => tomcat-9.0-digest.script | 0 tomcat-9.0-log4j.properties | 11 ++ ...ch => tomcat-9.0-tomcat-users-webapp.patch | 0 ...r.script => tomcat-9.0-tool-wrapper.script | 0 tomcat-10.1.conf => tomcat-9.0.conf | 15 +- tomcat-10.1.logrotate => tomcat-9.0.logrotate | 0 tomcat-10.1.service => tomcat-9.0.service | 0 tomcat-10.1.sysconfig => tomcat-9.0.sysconfig | 0 tomcat-10.1.wrapper => tomcat-9.0.wrapper | 0 tomcat.spec | 139 ++++++++++-------- 20 files changed, 172 insertions(+), 150 deletions(-) create mode 100644 java-9-start-up-parameters.conf delete mode 100644 module-start-up-parameters.conf delete mode 100644 tomcat-10.1-JDTCompiler.patch delete mode 100644 tomcat-10.1-catalina-policy.patch create mode 100644 tomcat-9.0-JDTCompiler.patch rename tomcat-10.1-bnd-annotation.patch => tomcat-9.0-bnd-annotation.patch (100%) rename tomcat-10.1-bootstrap-MANIFEST.MF.patch => tomcat-9.0-bootstrap-MANIFEST.MF.patch (100%) create mode 100644 tomcat-9.0-catalina-policy.patch rename tomcat-10.1-digest.script => tomcat-9.0-digest.script (100%) create mode 100644 tomcat-9.0-log4j.properties rename tomcat-10.1-tomcat-users-webapp.patch => tomcat-9.0-tomcat-users-webapp.patch (100%) rename tomcat-10.1-tool-wrapper.script => tomcat-9.0-tool-wrapper.script (100%) rename tomcat-10.1.conf => tomcat-9.0.conf (73%) rename tomcat-10.1.logrotate => tomcat-9.0.logrotate (100%) rename tomcat-10.1.service => tomcat-9.0.service (100%) rename tomcat-10.1.sysconfig => tomcat-9.0.sysconfig (100%) rename tomcat-10.1.wrapper => tomcat-9.0.wrapper (100%) diff --git a/java-9-start-up-parameters.conf b/java-9-start-up-parameters.conf new file mode 100644 index 0000000..341e077 --- /dev/null +++ b/java-9-start-up-parameters.conf @@ -0,0 +1,7 @@ +# Add the JAVA 9 specific start-up parameters required by Tomcat +JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.base/java.lang=ALL-UNNAMED" +JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.base/java.io=ALL-UNNAMED" +JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.base/java.util=ALL-UNNAMED" +JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.base/java.util.concurrent=ALL-UNNAMED" +JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED" +export JDK_JAVA_OPTIONS diff --git a/module-start-up-parameters.conf b/module-start-up-parameters.conf deleted file mode 100644 index ba35e23..0000000 --- a/module-start-up-parameters.conf +++ /dev/null @@ -1,7 +0,0 @@ -# Add the module start-up parameters required by Tomcat -JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.lang=ALL-UNNAMED" -JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.io=ALL-UNNAMED" -JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.util=ALL-UNNAMED" -JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.util.concurrent=ALL-UNNAMED" -JAVA_OPTS="$JAVA_OPTS --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED" -export JAVA_OPTS diff --git a/rhbz-1857043.patch b/rhbz-1857043.patch index dd2a38c..dd74c3b 100644 --- a/rhbz-1857043.patch +++ b/rhbz-1857043.patch @@ -1,6 +1,7 @@ ---- build.xml.orig 2024-05-09 20:41:23.000000000 +0300 -+++ build.xml 2024-05-22 17:26:11.558331902 +0300 -@@ -1111,7 +1111,7 @@ +diff -up ./build.xml.orig ./build.xml +--- build.xml.orig 2021-07-07 10:53:55.493742841 +0800 ++++ build.xml 2021-07-07 11:09:43.107968515 +0800 +@@ -1020,7 +1020,7 @@ filesDir="${tomcat.classes}" filesId="files.annotations-api" manifest="${tomcat.manifests}/annotations-api.jar.manifest" @@ -9,7 +10,7 @@ -+ addOSGi="false" /> - - - + addOSGi="false" /> @@ -65,7 +58,7 @@ = 1.10.2 -BuildRequires: ecj >= 4.20 +BuildRequires: ant +BuildRequires: ecj >= 1:4.10 BuildRequires: findutils -BuildRequires: java-devel >= 17 +BuildRequires: java-devel >= 1:1.8.0 BuildRequires: javapackages-local BuildRequires: aqute-bnd BuildRequires: aqute-bndlib BuildRequires: systemd -BuildRequires: tomcat-jakartaee-migration -Requires: (java-headless >= 11 or java >= 11) +Requires: (java-headless >= 1:1.8 or java-1.8.0-headless or java-11-headless or java-17-headless or java-21-headless or java >= 1:1.8) Requires: javapackages-tools Requires: %{name}-lib = %{epoch}:%{version}-%{release} %if 0%{?fedora} || 0%{?rhel} > 7 @@ -137,7 +135,7 @@ The docs web application for Apache Tomcat. %package jsp-%{jspspec}-api Summary: Apache Tomcat JavaServer Pages v%{jspspec} API Implementation Classes Provides: jsp = %{jspspec} -Obsoletes: %{name}-jsp-2.3-api +Obsoletes: %{name}-jsp-2.2-api Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} @@ -149,8 +147,7 @@ Summary: Libraries needed to run the Tomcat Web container Requires: %{name}-jsp-%{jspspec}-api = %{epoch}:%{version}-%{release} Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} -Requires: ecj >= 4.20 -Requires: tomcat-jakartaee-migration +Requires: ecj >= 1:4.10 Requires(preun): coreutils %description lib @@ -159,7 +156,9 @@ Libraries needed to run the Tomcat Web container. %package servlet-%{servletspec}-api Summary: Apache Tomcat Java Servlet v%{servletspec} API Implementation Classes Provides: servlet = %{servletspec} -Obsoletes: %{name}-servlet-4.0-api +Provides: servlet6 +Provides: servlet3 +Obsoletes: %{name}-servlet-3.1-api %description servlet-%{servletspec}-api Apache Tomcat Servlet API Implementation Classes. @@ -167,7 +166,7 @@ Apache Tomcat Servlet API Implementation Classes. %package el-%{elspec}-api Summary: Apache Tomcat Expression Language v%{elspec} API Implementation Classes Provides: el_api = %{elspec} -Obsoletes: %{name}-el-3.0-api +Obsoletes: %{name}-el-2.2-api %description el-%{elspec}-api Apache Tomcat EL API Implementation Classes. @@ -190,7 +189,6 @@ find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name " %patch 2 -p0 %patch 3 -p0 %patch 4 -p0 -%patch 5 -p0 %patch 6 -p0 # Remove webservices naming resources as it's generally unused @@ -198,13 +196,14 @@ find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name " # Configure maven files %mvn_package ":tomcat-el-api" tomcat-el-api -%mvn_alias "org.apache.tomcat:tomcat-el-api" "jakarta.servlet:jakarta.servlet-api" +%mvn_alias "org.apache.tomcat:tomcat-el-api" "org.eclipse.jetty.orbit:javax.el" %mvn_package ":tomcat-jsp-api" tomcat-jsp-api -%mvn_alias "org.apache.tomcat:tomcat-jsp-api" "jakarta.servlet:jakarta.servlet.jsp" +%mvn_alias "org.apache.tomcat:tomcat-jsp-api" "org.eclipse.jetty.orbit:javax.servlet.jsp" %mvn_package ":tomcat-servlet-api" tomcat-servlet-api + %build -#export OPT_JAR_LIST="xalan-j2-serializer" +export OPT_JAR_LIST="xalan-j2-serializer" # we don't care about the tarballs and we're going to replace # tomcat-dbcp.jar with apache-commons-{collections,dbcp,pool}-tomcat5.jar # so just create a dummy file for later removal @@ -226,13 +225,12 @@ touch HACK -Dbnd-annotation.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ -Dversion="%{version}" \ -Dversion.build="%{micro_version}" \ - -Dmigration-lib.jar="$(build-classpath tomcat-jakartaee-migration/jakartaee-migration.jar)" \ deploy # remove some jars that we'll replace with symlinks later -%{__rm} output/build/bin/commons-daemon.jar output/build/lib/ecj.jar output/build/lib/jakartaee-migration.jar +%{__rm} output/build/bin/commons-daemon.jar output/build/lib/ecj.jar # Remove the example webapps per Apache Tomcat Security Considerations -# see https://tomcat.apache.org/tomcat-10.1-doc/security-howto.html +# see https://tomcat.apache.org/tomcat-9.0-doc/security-howto.html %{__rm} -rf output/build/webapps/examples @@ -240,6 +238,7 @@ touch HACK # build initial path structure %{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_bindir} %{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_sbindir} +%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_systemddir} %{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d %{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig %{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{appdir} @@ -272,33 +271,33 @@ popd > ${RPM_BUILD_ROOT}%{confdir}/%{name}.conf %{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE2} \ + -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE3} \ > ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/%{name} -%{__install} -m 0755 %{SOURCE3} \ +%{__install} -m 0644 %{SOURCE4} \ ${RPM_BUILD_ROOT}%{_sbindir}/%{name} -%{__install} -m 0644 %{SOURCE7} \ +%{__install} -m 0644 %{SOURCE11} \ ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service -%{__sed} -e "s|\@\@\@TCLOG\@\@\@|%{logdir}|g" %{SOURCE4} \ +%{__sed} -e "s|\@\@\@TCLOG\@\@\@|%{logdir}|g" %{SOURCE5} \ > ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{name}.disabled %{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE5} \ + -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE6} \ > ${RPM_BUILD_ROOT}%{_bindir}/%{name}-digest %{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE6} \ + -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE7} \ > ${RPM_BUILD_ROOT}%{_bindir}/%{name}-tool-wrapper -%{__install} -m 0644 %{SOURCE8} \ +%{__install} -m 0644 %{SOURCE21} \ ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/functions -%{__install} -m 0755 %{SOURCE9} \ +%{__install} -m 0755 %{SOURCE30} \ ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/preamble -%{__install} -m 0755 %{SOURCE10} \ +%{__install} -m 0755 %{SOURCE31} \ ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/server -%{__install} -m 0644 %{SOURCE11} \ +%{__install} -m 0644 %{SOURCE32} \ ${RPM_BUILD_ROOT}%{_unitdir}/%{name}@.service -%{__install} -m 0644 %{SOURCE12} ${RPM_BUILD_ROOT}%{confdir}/conf.d/ +%{__install} -m 0644 %{SOURCE33} ${RPM_BUILD_ROOT}%{confdir}/conf.d/ # Substitute libnames in catalina-tasks.xml sed -i \ @@ -319,7 +318,6 @@ popd pushd output/build %{_bindir}/build-jar-repository lib ecj 2>&1 - %{_bindir}/build-jar-repository lib tomcat-jakartaee-migration 2>&1 popd pushd ${RPM_BUILD_ROOT}%{libdir} @@ -328,7 +326,6 @@ pushd ${RPM_BUILD_ROOT}%{libdir} %{__ln_s} ../../java/%{name}-servlet-%{servletspec}-api.jar . %{__ln_s} ../../java/%{name}-el-%{elspec}-api.jar . %{__ln_s} $(build-classpath ecj/ecj) jasper-jdt.jar - %{__ln_s} $(build-classpath tomcat-jakartaee-migration/jakartaee-migration) jakartaee-migration.jar cp ../../%{name}/bin/tomcat-juli.jar . popd @@ -397,7 +394,6 @@ popd %mvn_file org.apache.tomcat:tomcat-websocket-api tomcat/websocket-api %mvn_artifact res/maven/tomcat-websocket-api.pom ${RPM_BUILD_ROOT}%{libdir}/websocket-api.jar %mvn_artifact res/maven/tomcat-websocket.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-websocket.jar -%mvn_artifact res/maven/tomcat-websocket-client-api.pom ${RPM_BUILD_ROOT}%{libdir}/websocket-client-api.jar %mvn_artifact res/maven/tomcat.pom %mvn_install @@ -417,6 +413,18 @@ exit 0 # install but don't activate %systemd_post %{name}.service +%post jsp-%{jspspec}-api +%{_sbindir}/update-alternatives --install %{_javadir}/jsp.jar jsp \ + %{_javadir}/%{name}-jsp-%{jspspec}-api.jar 20200 + +%post servlet-%{servletspec}-api +%{_sbindir}/update-alternatives --install %{_javadir}/servlet.jar servlet \ + %{_javadir}/%{name}-servlet-%{servletspec}-api.jar 30000 + +%post el-%{elspec}-api +%{_sbindir}/update-alternatives --install %{_javadir}/elspec.jar elspec \ + %{_javadir}/%{name}-el-%{elspec}-api.jar 20300 + %preun # clean tempdir and workdir on removal or upgrade %{__rm} -rf %{workdir}/* %{tempdir}/* @@ -425,6 +433,24 @@ exit 0 %postun %systemd_postun_with_restart %{name}.service +%postun jsp-%{jspspec}-api +if [ "$1" = "0" ]; then + %{_sbindir}/update-alternatives --remove jsp \ + %{_javadir}/%{name}-jsp-%{jspspec}-api.jar +fi + +%postun servlet-%{servletspec}-api +if [ "$1" = "0" ]; then + %{_sbindir}/update-alternatives --remove servlet \ + %{_javadir}/%{name}-servlet-%{servletspec}-api.jar +fi + +%postun el-%{elspec}-api +if [ "$1" = "0" ]; then + %{_sbindir}/update-alternatives --remove elspec \ + %{_javadir}/%{name}-el-%{elspec}-api.jar +fi + %files %defattr(0664,root,tomcat,0755) %doc {LICENSE,NOTICE,RELEASE*} @@ -457,7 +483,7 @@ exit 0 %attr(0775,root,tomcat) %dir %{confdir}/Catalina/localhost %attr(0755,root,tomcat) %dir %{confdir}/conf.d %{confdir}/conf.d/README -%{confdir}/conf.d/module-start-up-parameters.conf +%{confdir}/conf.d/java-9-start-up-parameters.conf %config(noreplace) %{confdir}/%{name}.conf %config(noreplace) %{confdir}/*.policy %config(noreplace) %{confdir}/*.properties @@ -524,9 +550,6 @@ exit 0 %{appdir}/ROOT %changelog -* Fri May 31 2024 Dimitris Soumis - 1:10.1.24-1 -- Update to 10.1.24 - * Thu Feb 29 2024 Adam Williamson - 1:9.0.83-4 - Accept java-21-headless as one of the alternatives for java From 6222b99f521358c465446c3c9957d82c05eb1c47 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Fri, 7 Jun 2024 19:07:06 +0300 Subject: [PATCH 040/124] Revert 10.1.24 update, rebase to 9.0.89 --- sources | 2 +- tomcat.spec | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/sources b/sources index 4196751..a23d2c8 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.83-src.tar.gz) = 28e112a9d01918434ad03c414058275bbc4e34be408c2cfe2d819c3a08cadc3c31920e279c5312529aa2f5abf1e002537012c5f06d43ba8894448afd5585c231 +SHA512 (apache-tomcat-9.0.89-src.tar.gz) = c2e8e45a98cd30764b507bb997c7cf1b8e337be9c6d1833bb5f916a5d86d96cb095f430884d0a248cdc3b510beb11e227cc160f8402ba5b2e3952399a44461d1 diff --git a/tomcat.spec b/tomcat.spec index 3e2e6e6..cb29eb8 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 83 +%global micro_version 89 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 4%{?dist} +Release: 1%{?dist} Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -550,6 +550,9 @@ fi %{appdir}/ROOT %changelog +* Fri Jun 7 2024 Dimitris Soumis - 1:9.0.89-1 +- Update to 9.0.89 + * Thu Feb 29 2024 Adam Williamson - 1:9.0.83-4 - Accept java-21-headless as one of the alternatives for java From b34c55f50e11a51a2aeb457295318240b94b3a57 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Thu, 20 Jun 2024 13:29:56 +0300 Subject: [PATCH 041/124] Update to 9.0.90 --- sources | 2 +- tomcat.spec | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/sources b/sources index a23d2c8..6bccc7c 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.89-src.tar.gz) = c2e8e45a98cd30764b507bb997c7cf1b8e337be9c6d1833bb5f916a5d86d96cb095f430884d0a248cdc3b510beb11e227cc160f8402ba5b2e3952399a44461d1 +SHA512 (apache-tomcat-9.0.90-src.tar.gz) = ade9eda20fe137080eb4fb43a36e510025822acabaf5564a950d24eded491e3f8846dff6ab6382716cd2f3aa676e4f134d28d7c1fa5f9d89230aa600d18071cb diff --git a/tomcat.spec b/tomcat.spec index cb29eb8..e8a8ee9 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 89 +%global micro_version 90 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -550,6 +550,9 @@ fi %{appdir}/ROOT %changelog +* Thu Jun 20 2024 Dimitris Soumis - 1:9.0.90-1 +- Update to 9.0.90 + * Fri Jun 7 2024 Dimitris Soumis - 1:9.0.89-1 - Update to 9.0.89 From 8ad9415f16a133ccf1342ee8479b286ec09fd58e Mon Sep 17 00:00:00 2001 From: dsoumis Date: Tue, 9 Jul 2024 15:58:14 +0300 Subject: [PATCH 042/124] Add packit integration --- .packit.yaml | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 .packit.yaml diff --git a/.packit.yaml b/.packit.yaml new file mode 100644 index 0000000..f335425 --- /dev/null +++ b/.packit.yaml @@ -0,0 +1,38 @@ +# See the documentation for more information: +# https://packit.dev/docs/configuration/ + +create_sync_note: false + +upstream_project_url: https://github.com/apache/tomcat.git + +issue_repository: https://github.com/dsoumis/fedora-tomcat-packit-notifications + +jobs: +# https://packit.dev/docs/configuration/downstream/pull_from_upstream +# Make sure there is Fedora mapping for the 'tomcat' project in https://release-monitoring.org/projects/search/?pattern=tomcat +# Make sure Monitoring status on the left side at https://src.fedoraproject.org/rpms/tomcat is set to Monitoring +- job: pull_from_upstream + trigger: release + dist_git_branches: + - fedora-all + +# https://packit.dev/docs/configuration/downstream/koji_build +- job: koji_build + trigger: commit + dist_git_branches: + - fedora-all + +- job: koji_build + trigger: commit + scratch: true + allowed_pr_authors: ['all_admins', 'all_committers'] + allowed_committers: ['all_admins', 'all_committers'] + dist_git_branches: + - fedora-all + +# https://packit.dev/docs/configuration/downstream/bodhi_update +- job: bodhi_update + trigger: commit + allowed_builders: ['packit', 'all_admins'] + dist_git_branches: + - fedora-branched # rawhide updates are created automatically From 18974097f961245f2af3dff4ff795d93df103d05 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Tue, 9 Jul 2024 18:25:39 +0300 Subject: [PATCH 043/124] Replace issue repository with project's repo --- .packit.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.packit.yaml b/.packit.yaml index f335425..0bb10aa 100644 --- a/.packit.yaml +++ b/.packit.yaml @@ -5,7 +5,7 @@ create_sync_note: false upstream_project_url: https://github.com/apache/tomcat.git -issue_repository: https://github.com/dsoumis/fedora-tomcat-packit-notifications +issue_repository: https://src.fedoraproject.org/rpms/tomcat jobs: # https://packit.dev/docs/configuration/downstream/pull_from_upstream From 91e20eb8e1acea0dd3c242f7641deaec671841ab Mon Sep 17 00:00:00 2001 From: dsoumis Date: Thu, 11 Jul 2024 12:55:24 +0300 Subject: [PATCH 044/124] Update to 9.0.91 --- sources | 2 +- tomcat.spec | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/sources b/sources index 6bccc7c..02d68a0 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.90-src.tar.gz) = ade9eda20fe137080eb4fb43a36e510025822acabaf5564a950d24eded491e3f8846dff6ab6382716cd2f3aa676e4f134d28d7c1fa5f9d89230aa600d18071cb +SHA512 (apache-tomcat-9.0.91-src.tar.gz) = 43e09871b76f63416d8ac9d4594752dba5f8335e34bceb0ef0b210f47314e922e95e0e6a2939ac4807d60d2fb5b81f03079590644fc2a9fa5d51cccfd3813ab4 diff --git a/tomcat.spec b/tomcat.spec index e8a8ee9..75e8ab3 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 90 +%global micro_version 91 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -56,7 +56,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} -Release: 1%{?dist} +Release: %autorelease Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API License: ASL 2.0 @@ -550,6 +550,9 @@ fi %{appdir}/ROOT %changelog +* Thu Jul 11 2024 Dimitris Soumis - 1:9.0.91-1 +- Update to 9.0.91 + * Thu Jun 20 2024 Dimitris Soumis - 1:9.0.90-1 - Update to 9.0.90 From 673c7dd900dc140aa8a61266a594bf0f749d8827 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 20 Jul 2024 07:40:00 +0000 Subject: [PATCH 045/124] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From ebf0621e4119d4be82cd752215cbe65bd5fb3690 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20Such=C3=BD?= Date: Wed, 24 Jul 2024 18:07:27 +0200 Subject: [PATCH 046/124] convert ASL 2.0 license to SPDX This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4 --- tomcat.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tomcat.spec b/tomcat.spec index 75e8ab3..41380fc 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -59,7 +59,8 @@ Version: %{major_version}.%{minor_version}.%{micro_version} Release: %autorelease Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API -License: ASL 2.0 +# Automatically converted from old format: ASL 2.0 - review is highly recommended. +License: Apache-2.0 URL: http://tomcat.apache.org/ Source0: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz Source1: %{name}-%{major_version}.%{minor_version}.conf @@ -550,6 +551,9 @@ fi %{appdir}/ROOT %changelog +* Wed Jul 24 2024 Miroslav Suchý - 1:9.0.91-1 +- convert license to SPDX + * Thu Jul 11 2024 Dimitris Soumis - 1:9.0.91-1 - Update to 9.0.91 From 7ace2fa74f3668dcc77c2f1581458b21abb184b0 Mon Sep 17 00:00:00 2001 From: Packit Date: Tue, 6 Aug 2024 03:32:00 +0000 Subject: [PATCH 047/124] Update to 9.0.93 upstream release - Resolves: rhbz#2303026 Upstream tag: 9.0.93 Upstream commit: a33d708d Commit authored by Packit automation (https://packit.dev/) --- sources | 2 +- tomcat.spec | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/sources b/sources index 02d68a0..087b80d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.91-src.tar.gz) = 43e09871b76f63416d8ac9d4594752dba5f8335e34bceb0ef0b210f47314e922e95e0e6a2939ac4807d60d2fb5b81f03079590644fc2a9fa5d51cccfd3813ab4 +SHA512 (apache-tomcat-9.0.93-src.tar.gz) = 015be491867f05ab39d1d39899fc5434516bd613b0a45e87a066fb4a6a1b5d9e2973ed370bfca86acacd55a45d6acd6354523a199a422bf506d864d43f6ddeac diff --git a/tomcat.spec b/tomcat.spec index 41380fc..3665b9f 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 91 +%global micro_version 93 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -551,6 +551,10 @@ fi %{appdir}/ROOT %changelog +* Tue Aug 06 2024 Packit - 1:9.0.93-1 +- Update to version 9.0.93 +- Resolves: rhbz#2303026 + * Wed Jul 24 2024 Miroslav Suchý - 1:9.0.91-1 - convert license to SPDX From ad550ee3ce6030b8cbed9eeaec6c15b7fbb8da03 Mon Sep 17 00:00:00 2001 From: Dimitris Soumis Date: Tue, 6 Aug 2024 13:45:18 +0300 Subject: [PATCH 048/124] Fix rhbz-1857043.patch --- rhbz-1857043.patch | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/rhbz-1857043.patch b/rhbz-1857043.patch index dd74c3b..d6185aa 100644 --- a/rhbz-1857043.patch +++ b/rhbz-1857043.patch @@ -1,7 +1,6 @@ -diff -up ./build.xml.orig ./build.xml ---- build.xml.orig 2021-07-07 10:53:55.493742841 +0800 -+++ build.xml 2021-07-07 11:09:43.107968515 +0800 -@@ -1020,7 +1020,7 @@ +--- build.xml.orig 2024-08-03 00:24:59.000000000 +0300 ++++ build.xml 2024-08-06 13:42:04.710875124 +0300 +@@ -1110,7 +1110,7 @@ filesDir="${tomcat.classes}" filesId="files.annotations-api" manifest="${tomcat.manifests}/annotations-api.jar.manifest" @@ -10,7 +9,7 @@ diff -up ./build.xml.orig ./build.xml ++ addOSGi="false" /> + + + + addOSGi="false" /> @@ -130,7 +137,7 @@ diff -up ./build.xml.orig ./build.xml Date: Tue, 10 Sep 2024 21:14:04 +0000 Subject: [PATCH 049/124] Update to 9.0.94 upstream release - Resolves: rhbz#2311320 Upstream tag: 9.0.94 Upstream commit: ce248107 Commit authored by Packit automation (https://packit.dev/) --- sources | 2 +- tomcat.spec | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/sources b/sources index 087b80d..9db4cad 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.93-src.tar.gz) = 015be491867f05ab39d1d39899fc5434516bd613b0a45e87a066fb4a6a1b5d9e2973ed370bfca86acacd55a45d6acd6354523a199a422bf506d864d43f6ddeac +SHA512 (apache-tomcat-9.0.94-src.tar.gz) = d731f4e8693326d5d9641a06ae77de9ef94088ffa0ddfdf52bcec3f5bc22c3139008750cefb156a078de0bb60d84131c3953305499a3bd912763b9a1c49504f6 diff --git a/tomcat.spec b/tomcat.spec index 3665b9f..fdf851b 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 93 +%global micro_version 94 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -551,6 +551,10 @@ fi %{appdir}/ROOT %changelog +* Tue Sep 10 2024 Packit - 1:9.0.94-1 +- Update to version 9.0.94 +- Resolves: rhbz#2311320 + * Tue Aug 06 2024 Packit - 1:9.0.93-1 - Update to version 9.0.93 - Resolves: rhbz#2303026 From b5aebabac2ee0fd17388af278bbea88d663cbb74 Mon Sep 17 00:00:00 2001 From: Packit Date: Tue, 17 Sep 2024 14:36:08 +0000 Subject: [PATCH 050/124] Update to 9.0.95 upstream release - Resolves: rhbz#2312858 Upstream tag: 9.0.95 Upstream commit: 9f8c522e Commit authored by Packit automation (https://packit.dev/) --- sources | 2 +- tomcat.spec | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/sources b/sources index 9db4cad..2347049 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.94-src.tar.gz) = d731f4e8693326d5d9641a06ae77de9ef94088ffa0ddfdf52bcec3f5bc22c3139008750cefb156a078de0bb60d84131c3953305499a3bd912763b9a1c49504f6 +SHA512 (apache-tomcat-9.0.95-src.tar.gz) = 8ab69edd3761f2be112dbef9047cf331ad4d5ff8feb83dc35bebcdc1384853ed33313cc152f38f0604629d94e32a5eaf242a1dda8e7b04b9442dc03eb6b3b7db diff --git a/tomcat.spec b/tomcat.spec index fdf851b..6309c24 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 94 +%global micro_version 95 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -551,6 +551,10 @@ fi %{appdir}/ROOT %changelog +* Tue Sep 17 2024 Packit - 1:9.0.95-1 +- Update to version 9.0.95 +- Resolves: rhbz#2312858 + * Tue Sep 10 2024 Packit - 1:9.0.94-1 - Update to version 9.0.94 - Resolves: rhbz#2311320 From f262deda85fa0b1e377b26f3b9ca5ceaf55347a8 Mon Sep 17 00:00:00 2001 From: Packit Date: Tue, 8 Oct 2024 15:01:50 +0000 Subject: [PATCH 051/124] Update to 9.0.96 upstream release - Resolves: rhbz#2317237 Upstream tag: 9.0.96 Upstream commit: 7ecea316 Commit authored by Packit automation (https://packit.dev/) --- sources | 2 +- tomcat.spec | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/sources b/sources index 2347049..3fe0723 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.95-src.tar.gz) = 8ab69edd3761f2be112dbef9047cf331ad4d5ff8feb83dc35bebcdc1384853ed33313cc152f38f0604629d94e32a5eaf242a1dda8e7b04b9442dc03eb6b3b7db +SHA512 (apache-tomcat-9.0.96-src.tar.gz) = cd6d0730b2aa34520249f8285b0663f88b601ca508f8534fa948ad0a9502dd760f446b6adc930b947c310d05e33025186b88ecab71a0ea16618ae24edb0c4884 diff --git a/tomcat.spec b/tomcat.spec index 6309c24..33de45a 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 95 +%global micro_version 96 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -551,6 +551,10 @@ fi %{appdir}/ROOT %changelog +* Tue Oct 08 2024 Packit - 1:9.0.96-1 +- Update to version 9.0.96 +- Resolves: rhbz#2317237 + * Tue Sep 17 2024 Packit - 1:9.0.95-1 - Update to version 9.0.95 - Resolves: rhbz#2312858 From 0c53740592737bfa78309b576305003bcccde4de Mon Sep 17 00:00:00 2001 From: Dimitris Soumis Date: Mon, 2 Dec 2024 16:08:53 +0200 Subject: [PATCH 052/124] Update to 9.0.97 upstream release --- sources | 2 +- tomcat.spec | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/sources b/sources index 3fe0723..5b5a264 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.96-src.tar.gz) = cd6d0730b2aa34520249f8285b0663f88b601ca508f8534fa948ad0a9502dd760f446b6adc930b947c310d05e33025186b88ecab71a0ea16618ae24edb0c4884 +SHA512 (apache-tomcat-9.0.97-src.tar.gz) = e0500e0c7e4af40f0a6db845b73f41423a7b7746e110053c36744fc376a0db96d141069035171f5b6efdf6011c155cbc29815cd286a0508cefaddb776909a00a diff --git a/tomcat.spec b/tomcat.spec index 33de45a..fa53e89 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 96 +%global micro_version 97 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -551,6 +551,10 @@ fi %{appdir}/ROOT %changelog +* Mon Dec 02 2024 Dimitris Soumis - 1:9.0.97-1 +- Update to version 9.0.97 +- Resolves: rhbz#2327090 + * Tue Oct 08 2024 Packit - 1:9.0.96-1 - Update to version 9.0.96 - Resolves: rhbz#2317237 From 3cf9b421bd0aa8259beac70efa47a8b651d70e9d Mon Sep 17 00:00:00 2001 From: Packit Date: Mon, 9 Dec 2024 15:24:06 +0000 Subject: [PATCH 053/124] Update to 9.0.98 upstream release - Resolves: rhbz#2331168 Upstream tag: 9.0.98 Upstream commit: 727a8467 Commit authored by Packit automation (https://packit.dev/) --- sources | 2 +- tomcat.spec | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/sources b/sources index 5b5a264..18f1e2f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-9.0.97-src.tar.gz) = e0500e0c7e4af40f0a6db845b73f41423a7b7746e110053c36744fc376a0db96d141069035171f5b6efdf6011c155cbc29815cd286a0508cefaddb776909a00a +SHA512 (apache-tomcat-9.0.98-src.tar.gz) = eb380dae515a259d23d5311d0b96b8ef5068c0d8d72da215410e5475582d2ff82182b7331e0d197eb993d8014a99ea40290154a343e961a07ed02be6894759cc diff --git a/tomcat.spec b/tomcat.spec index fa53e89..0ae6d33 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 2.3 %global major_version 9 %global minor_version 0 -%global micro_version 97 +%global micro_version 98 %global packdname apache-tomcat-%{version}-src %global servletspec 4.0 %global elspec 3.0 @@ -551,6 +551,10 @@ fi %{appdir}/ROOT %changelog +* Mon Dec 09 2024 Packit - 1:9.0.98-1 +- Update to version 9.0.98 +- Resolves: rhbz#2331168 + * Mon Dec 02 2024 Dimitris Soumis - 1:9.0.97-1 - Update to version 9.0.97 - Resolves: rhbz#2327090 From 0611308b2d4dfbc123d76668610f5994796bd804 Mon Sep 17 00:00:00 2001 From: Dimitris Soumis Date: Thu, 5 Dec 2024 16:18:03 +0200 Subject: [PATCH 054/124] This pull request enables tests in the Fedora CI using `tmt` which also allows to easily execute and debug tests from your laptop: Run tests directly on your localhost: sudo dnf install -y tmt tmt run --all provision --how local Run tests in a virtual machine: sudo dnf install -y tmt+provision-virtual tmt run Check the documentation to learn more about the tool: https://docs.fedoraproject.org/en-US/ci/tmt/ --- .fmf/version | 1 + ci.fmf | 1 + gating.yaml | 13 +++++++++++++ plans/javapackages.fmf | 7 +++++++ plans/smoke.fmf | 5 +++++ 5 files changed, 27 insertions(+) create mode 100644 .fmf/version create mode 100644 ci.fmf create mode 100644 gating.yaml create mode 100644 plans/javapackages.fmf create mode 100644 plans/smoke.fmf diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/ci.fmf b/ci.fmf new file mode 100644 index 0000000..c5aa0e0 --- /dev/null +++ b/ci.fmf @@ -0,0 +1 @@ +resultsdb-testcase: separate diff --git a/gating.yaml b/gating.yaml new file mode 100644 index 0000000..b81b8c4 --- /dev/null +++ b/gating.yaml @@ -0,0 +1,13 @@ +--- !Policy +product_versions: + - fedora-* +decision_contexts: + - bodhi_update_push_testing + - bodhi_update_push_stable +subject_type: koji_build +rules: + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/javapackages.functional} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/smoke.functional} diff --git a/plans/javapackages.fmf b/plans/javapackages.fmf new file mode 100644 index 0000000..86bfcea --- /dev/null +++ b/plans/javapackages.fmf @@ -0,0 +1,7 @@ +summary: Run javapackages-specific tests +discover: + how: fmf + url: https://src.fedoraproject.org/tests/javapackages + ref: f42 +execute: + how: tmt diff --git a/plans/smoke.fmf b/plans/smoke.fmf new file mode 100644 index 0000000..039f41a --- /dev/null +++ b/plans/smoke.fmf @@ -0,0 +1,5 @@ +discover: + how: fmf + url: https://src.fedoraproject.org/tests/tomcat +execute: + how: tmt From 723739222226745128b36c0b6c6b58c2db97839d Mon Sep 17 00:00:00 2001 From: dsoumis Date: Tue, 7 Jan 2025 15:47:48 +0200 Subject: [PATCH 055/124] Update to 10.1.34 --- .packit.yaml | 2 +- java-9-start-up-parameters.conf | 7 - module-start-up-parameters.conf | 8 + rhbz-1857043.patch | 28 ++-- sources | 2 +- tomcat-10.1-JDTCompiler.patch | 30 ++++ ....patch => tomcat-10.1-bnd-annotation.patch | 0 ...=> tomcat-10.1-bootstrap-MANIFEST.MF.patch | 0 tomcat-10.1-catalina-policy.patch | 16 ++ ...digest.script => tomcat-10.1-digest.script | 0 ...h => tomcat-10.1-tomcat-users-webapp.patch | 0 ....script => tomcat-10.1-tool-wrapper.script | 0 tomcat-9.0.conf => tomcat-10.1.conf | 15 +- tomcat-9.0.logrotate => tomcat-10.1.logrotate | 0 tomcat-9.0.service => tomcat-10.1.service | 0 tomcat-9.0.sysconfig => tomcat-10.1.sysconfig | 0 tomcat-9.0.wrapper => tomcat-10.1.wrapper | 0 tomcat-9.0-JDTCompiler.patch | 24 --- tomcat-9.0-catalina-policy.patch | 25 --- tomcat-9.0-log4j.properties | 11 -- tomcat-functions | 21 --- tomcat.spec | 143 ++++++++---------- 22 files changed, 136 insertions(+), 196 deletions(-) delete mode 100644 java-9-start-up-parameters.conf create mode 100644 module-start-up-parameters.conf create mode 100644 tomcat-10.1-JDTCompiler.patch rename tomcat-9.0-bnd-annotation.patch => tomcat-10.1-bnd-annotation.patch (100%) rename tomcat-9.0-bootstrap-MANIFEST.MF.patch => tomcat-10.1-bootstrap-MANIFEST.MF.patch (100%) create mode 100644 tomcat-10.1-catalina-policy.patch rename tomcat-9.0-digest.script => tomcat-10.1-digest.script (100%) rename tomcat-9.0-tomcat-users-webapp.patch => tomcat-10.1-tomcat-users-webapp.patch (100%) rename tomcat-9.0-tool-wrapper.script => tomcat-10.1-tool-wrapper.script (100%) rename tomcat-9.0.conf => tomcat-10.1.conf (73%) rename tomcat-9.0.logrotate => tomcat-10.1.logrotate (100%) rename tomcat-9.0.service => tomcat-10.1.service (100%) rename tomcat-9.0.sysconfig => tomcat-10.1.sysconfig (100%) rename tomcat-9.0.wrapper => tomcat-10.1.wrapper (100%) delete mode 100644 tomcat-9.0-JDTCompiler.patch delete mode 100644 tomcat-9.0-catalina-policy.patch delete mode 100644 tomcat-9.0-log4j.properties diff --git a/.packit.yaml b/.packit.yaml index 0bb10aa..2986867 100644 --- a/.packit.yaml +++ b/.packit.yaml @@ -14,7 +14,7 @@ jobs: - job: pull_from_upstream trigger: release dist_git_branches: - - fedora-all + - fedora-branched # https://packit.dev/docs/configuration/downstream/koji_build - job: koji_build diff --git a/java-9-start-up-parameters.conf b/java-9-start-up-parameters.conf deleted file mode 100644 index 341e077..0000000 --- a/java-9-start-up-parameters.conf +++ /dev/null @@ -1,7 +0,0 @@ -# Add the JAVA 9 specific start-up parameters required by Tomcat -JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.base/java.lang=ALL-UNNAMED" -JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.base/java.io=ALL-UNNAMED" -JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.base/java.util=ALL-UNNAMED" -JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.base/java.util.concurrent=ALL-UNNAMED" -JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED" -export JDK_JAVA_OPTIONS diff --git a/module-start-up-parameters.conf b/module-start-up-parameters.conf new file mode 100644 index 0000000..7f8652a --- /dev/null +++ b/module-start-up-parameters.conf @@ -0,0 +1,8 @@ +# Add the module start-up parameters required by Tomcat +JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.lang=ALL-UNNAMED" +JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.io=ALL-UNNAMED" +JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.util=ALL-UNNAMED" +JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.util.concurrent=ALL-UNNAMED" +JAVA_OPTS="$JAVA_OPTS --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED" +export JAVA_OPTS + diff --git a/rhbz-1857043.patch b/rhbz-1857043.patch index d6185aa..4028ee1 100644 --- a/rhbz-1857043.patch +++ b/rhbz-1857043.patch @@ -1,6 +1,6 @@ ---- build.xml.orig 2024-08-03 00:24:59.000000000 +0300 -+++ build.xml 2024-08-06 13:42:04.710875124 +0300 -@@ -1110,7 +1110,7 @@ +--- build.xml.orig 2024-08-02 18:14:43.000000000 +0300 ++++ build.xml 2024-08-19 13:56:38.991730088 +0300 +@@ -1121,7 +1121,7 @@ filesDir="${tomcat.classes}" filesId="files.annotations-api" manifest="${tomcat.manifests}/annotations-api.jar.manifest" @@ -9,7 +9,7 @@ ++ addOSGi="false" /> + + + + addOSGi="false" /> @@ -57,7 +65,7 @@ = 1:4.10 +BuildRequires: ant >= 1.10.2 +BuildRequires: ecj >= 4.20 BuildRequires: findutils -BuildRequires: java-devel >= 1:1.8.0 +BuildRequires: java-devel >= 17 BuildRequires: javapackages-local BuildRequires: aqute-bnd BuildRequires: aqute-bndlib BuildRequires: systemd +BuildRequires: tomcat-jakartaee-migration -Requires: (java-headless >= 1:1.8 or java-1.8.0-headless or java-11-headless or java-17-headless or java-21-headless or java >= 1:1.8) +Requires: (java-headless >= 11 or java >= 11) Requires: javapackages-tools Requires: %{name}-lib = %{epoch}:%{version}-%{release} %if 0%{?fedora} || 0%{?rhel} > 7 @@ -136,7 +137,7 @@ The docs web application for Apache Tomcat. %package jsp-%{jspspec}-api Summary: Apache Tomcat JavaServer Pages v%{jspspec} API Implementation Classes Provides: jsp = %{jspspec} -Obsoletes: %{name}-jsp-2.2-api +Obsoletes: %{name}-jsp-api < %{jspspec} Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} @@ -148,7 +149,8 @@ Summary: Libraries needed to run the Tomcat Web container Requires: %{name}-jsp-%{jspspec}-api = %{epoch}:%{version}-%{release} Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} -Requires: ecj >= 1:4.10 +Requires: ecj >= 4.20 +Recommends: tomcat-jakartaee-migration Requires(preun): coreutils %description lib @@ -157,9 +159,7 @@ Libraries needed to run the Tomcat Web container. %package servlet-%{servletspec}-api Summary: Apache Tomcat Java Servlet v%{servletspec} API Implementation Classes Provides: servlet = %{servletspec} -Provides: servlet6 -Provides: servlet3 -Obsoletes: %{name}-servlet-3.1-api +Obsoletes: %{name}-servlet-api < %{servletspec} %description servlet-%{servletspec}-api Apache Tomcat Servlet API Implementation Classes. @@ -167,7 +167,7 @@ Apache Tomcat Servlet API Implementation Classes. %package el-%{elspec}-api Summary: Apache Tomcat Expression Language v%{elspec} API Implementation Classes Provides: el_api = %{elspec} -Obsoletes: %{name}-el-2.2-api +Obsoletes: %{name}-el-api < %{elspec} %description el-%{elspec}-api Apache Tomcat EL API Implementation Classes. @@ -190,6 +190,7 @@ find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name " %patch 2 -p0 %patch 3 -p0 %patch 4 -p0 +%patch 5 -p0 %patch 6 -p0 # Remove webservices naming resources as it's generally unused @@ -197,16 +198,14 @@ find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name " # Configure maven files %mvn_package ":tomcat-el-api" tomcat-el-api -%mvn_alias "org.apache.tomcat:tomcat-el-api" "org.eclipse.jetty.orbit:javax.el" +%mvn_alias "org.apache.tomcat:tomcat-el-api" "jakarta.servlet:jakarta.servlet-api" %mvn_package ":tomcat-jsp-api" tomcat-jsp-api -%mvn_alias "org.apache.tomcat:tomcat-jsp-api" "org.eclipse.jetty.orbit:javax.servlet.jsp" +%mvn_alias "org.apache.tomcat:tomcat-jsp-api" "jakarta.servlet:jakarta.servlet.jsp" %mvn_package ":tomcat-servlet-api" tomcat-servlet-api %build -export OPT_JAR_LIST="xalan-j2-serializer" -# we don't care about the tarballs and we're going to replace -# tomcat-dbcp.jar with apache-commons-{collections,dbcp,pool}-tomcat5.jar +# we don't care about the tarballs and we're going to replace jars # so just create a dummy file for later removal touch HACK @@ -226,12 +225,13 @@ touch HACK -Dbnd-annotation.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ -Dversion="%{version}" \ -Dversion.build="%{micro_version}" \ + -Dmigration-lib.jar="$(build-classpath tomcat-jakartaee-migration/jakartaee-migration.jar)" \ deploy # remove some jars that we'll replace with symlinks later -%{__rm} output/build/bin/commons-daemon.jar output/build/lib/ecj.jar +%{__rm} output/build/bin/commons-daemon.jar output/build/lib/ecj.jar output/build/lib/jakartaee-migration.jar # Remove the example webapps per Apache Tomcat Security Considerations -# see https://tomcat.apache.org/tomcat-9.0-doc/security-howto.html +# see https://tomcat.apache.org/tomcat-10.1-doc/security-howto.html %{__rm} -rf output/build/webapps/examples @@ -239,7 +239,6 @@ touch HACK # build initial path structure %{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_bindir} %{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_sbindir} -%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_systemddir} %{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d %{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig %{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{appdir} @@ -272,33 +271,33 @@ popd > ${RPM_BUILD_ROOT}%{confdir}/%{name}.conf %{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE3} \ + -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE2} \ > ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/%{name} -%{__install} -m 0644 %{SOURCE4} \ +%{__install} -m 0755 %{SOURCE3} \ ${RPM_BUILD_ROOT}%{_sbindir}/%{name} -%{__install} -m 0644 %{SOURCE11} \ +%{__install} -m 0644 %{SOURCE7} \ ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service -%{__sed} -e "s|\@\@\@TCLOG\@\@\@|%{logdir}|g" %{SOURCE5} \ +%{__sed} -e "s|\@\@\@TCLOG\@\@\@|%{logdir}|g" %{SOURCE4} \ > ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{name}.disabled %{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE6} \ + -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE5} \ > ${RPM_BUILD_ROOT}%{_bindir}/%{name}-digest %{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE7} \ + -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE6} \ > ${RPM_BUILD_ROOT}%{_bindir}/%{name}-tool-wrapper -%{__install} -m 0644 %{SOURCE21} \ +%{__install} -m 0644 %{SOURCE8} \ ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/functions -%{__install} -m 0755 %{SOURCE30} \ +%{__install} -m 0755 %{SOURCE9} \ ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/preamble -%{__install} -m 0755 %{SOURCE31} \ +%{__install} -m 0755 %{SOURCE10} \ ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/server -%{__install} -m 0644 %{SOURCE32} \ +%{__install} -m 0644 %{SOURCE11} \ ${RPM_BUILD_ROOT}%{_unitdir}/%{name}@.service -%{__install} -m 0644 %{SOURCE33} ${RPM_BUILD_ROOT}%{confdir}/conf.d/ +%{__install} -m 0644 %{SOURCE12} ${RPM_BUILD_ROOT}%{confdir}/conf.d/ # Substitute libnames in catalina-tasks.xml sed -i \ @@ -319,6 +318,7 @@ popd pushd output/build %{_bindir}/build-jar-repository lib ecj 2>&1 + %{_bindir}/build-jar-repository lib tomcat-jakartaee-migration 2>&1 popd pushd ${RPM_BUILD_ROOT}%{libdir} @@ -327,6 +327,7 @@ pushd ${RPM_BUILD_ROOT}%{libdir} %{__ln_s} ../../java/%{name}-servlet-%{servletspec}-api.jar . %{__ln_s} ../../java/%{name}-el-%{elspec}-api.jar . %{__ln_s} $(build-classpath ecj/ecj) jasper-jdt.jar + %{__ln_s} $(build-classpath tomcat-jakartaee-migration/jakartaee-migration) jakartaee-migration.jar cp ../../%{name}/bin/tomcat-juli.jar . popd @@ -395,6 +396,7 @@ popd %mvn_file org.apache.tomcat:tomcat-websocket-api tomcat/websocket-api %mvn_artifact res/maven/tomcat-websocket-api.pom ${RPM_BUILD_ROOT}%{libdir}/websocket-api.jar %mvn_artifact res/maven/tomcat-websocket.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-websocket.jar +%mvn_artifact res/maven/tomcat-websocket-client-api.pom ${RPM_BUILD_ROOT}%{libdir}/websocket-client-api.jar %mvn_artifact res/maven/tomcat.pom %mvn_install @@ -414,43 +416,13 @@ exit 0 # install but don't activate %systemd_post %{name}.service -%post jsp-%{jspspec}-api -%{_sbindir}/update-alternatives --install %{_javadir}/jsp.jar jsp \ - %{_javadir}/%{name}-jsp-%{jspspec}-api.jar 20200 - -%post servlet-%{servletspec}-api -%{_sbindir}/update-alternatives --install %{_javadir}/servlet.jar servlet \ - %{_javadir}/%{name}-servlet-%{servletspec}-api.jar 30000 - -%post el-%{elspec}-api -%{_sbindir}/update-alternatives --install %{_javadir}/elspec.jar elspec \ - %{_javadir}/%{name}-el-%{elspec}-api.jar 20300 - %preun # clean tempdir and workdir on removal or upgrade %{__rm} -rf %{workdir}/* %{tempdir}/* %systemd_preun %{name}.service %postun -%systemd_postun_with_restart %{name}.service - -%postun jsp-%{jspspec}-api -if [ "$1" = "0" ]; then - %{_sbindir}/update-alternatives --remove jsp \ - %{_javadir}/%{name}-jsp-%{jspspec}-api.jar -fi - -%postun servlet-%{servletspec}-api -if [ "$1" = "0" ]; then - %{_sbindir}/update-alternatives --remove servlet \ - %{_javadir}/%{name}-servlet-%{servletspec}-api.jar -fi - -%postun el-%{elspec}-api -if [ "$1" = "0" ]; then - %{_sbindir}/update-alternatives --remove elspec \ - %{_javadir}/%{name}-el-%{elspec}-api.jar -fi +%systemd_postun_with_restart %{name}.service %files %defattr(0664,root,tomcat,0755) @@ -484,7 +456,7 @@ fi %attr(0775,root,tomcat) %dir %{confdir}/Catalina/localhost %attr(0755,root,tomcat) %dir %{confdir}/conf.d %{confdir}/conf.d/README -%{confdir}/conf.d/java-9-start-up-parameters.conf +%{confdir}/conf.d/module-start-up-parameters.conf %config(noreplace) %{confdir}/%{name}.conf %config(noreplace) %{confdir}/*.policy %config(noreplace) %{confdir}/*.properties @@ -551,13 +523,16 @@ fi %{appdir}/ROOT %changelog +* Tue Jan 07 2025 Dimitris Soumis - 1:10.1.28-1 +- Update to version 10.1.28 + * Mon Dec 09 2024 Packit - 1:9.0.98-1 - Update to version 9.0.98 - Resolves: rhbz#2331168 * Mon Dec 02 2024 Dimitris Soumis - 1:9.0.97-1 - Update to version 9.0.97 -- Resolves: rhbz#2327090 +- Resolves: rhbz#2327090 * Tue Oct 08 2024 Packit - 1:9.0.96-1 - Update to version 9.0.96 From 20bfa9f9729de17fd0333c26b8ae7c313a1c8042 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Fri, 10 Jan 2025 23:00:41 +0200 Subject: [PATCH 056/124] Fix changelog version of Tomcat 10 --- tomcat.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 61f2ad7..dcd924e 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -523,8 +523,8 @@ exit 0 %{appdir}/ROOT %changelog -* Tue Jan 07 2025 Dimitris Soumis - 1:10.1.28-1 -- Update to version 10.1.28 +* Tue Jan 10 2025 Dimitris Soumis - 1:10.1.34-1 +- Update to version 10.1.34 * Mon Dec 09 2024 Packit - 1:9.0.98-1 - Update to version 9.0.98 From 351e1a546c21145a3c3ded3f0dddf7b837c2d02a Mon Sep 17 00:00:00 2001 From: dsoumis Date: Fri, 10 Jan 2025 23:05:01 +0200 Subject: [PATCH 057/124] Fix bogus date in changelog --- tomcat.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tomcat.spec b/tomcat.spec index dcd924e..2d36335 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -523,7 +523,7 @@ exit 0 %{appdir}/ROOT %changelog -* Tue Jan 10 2025 Dimitris Soumis - 1:10.1.34-1 +* Fri Jan 10 2025 Dimitris Soumis - 1:10.1.34-1 - Update to version 10.1.34 * Mon Dec 09 2024 Packit - 1:9.0.98-1 From 9da444c4e4892f04916b69b743e724063e28c6d9 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 19 Jan 2025 13:04:22 +0000 Subject: [PATCH 058/124] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From d3fe6302c199d1591a8894e34bfdf181dcb66fcc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Thu, 23 Jan 2025 21:12:17 +0100 Subject: [PATCH 059/124] Add sysusers.d config file to allow rpm to create users/groups automatically --- tomcat.spec | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 2d36335..8689ef0 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -102,7 +102,6 @@ Requires: %{name}-lib = %{epoch}:%{version}-%{release} %if 0%{?fedora} || 0%{?rhel} > 7 Recommends: tomcat-native >= %{native_version} %endif -Requires(pre): shadow-utils Requires(post): systemd Requires(preun): systemd Requires(postun): systemd @@ -203,6 +202,11 @@ find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name " %mvn_alias "org.apache.tomcat:tomcat-jsp-api" "jakarta.servlet:jakarta.servlet.jsp" %mvn_package ":tomcat-servlet-api" tomcat-servlet-api +# Create a sysusers.d config file +cat >tomcat.sysusers.conf </dev/null || %{_sbindir}/groupadd -f -g %{tcuid} -r tomcat -if ! getent passwd tomcat >/dev/null ; then - if ! getent passwd %{tcuid} >/dev/null ; then - %{_sbindir}/useradd -r -u %{tcuid} -g tomcat -d %{homedir} -s /sbin/nologin -c "Apache Tomcat" tomcat - # Tomcat uses a reserved ID, so there should never be an else - fi -fi -exit 0 +install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf %post # install but don't activate @@ -476,6 +471,7 @@ exit 0 %{homedir}/work %{homedir}/logs %{homedir}/conf +%{_sysusersdir}/tomcat.conf %files admin-webapps %defattr(0664,root,tomcat,0755) From a7d2bc1fe90786612fc38330fc1903c42f7e7f8b Mon Sep 17 00:00:00 2001 From: dsoumis Date: Tue, 11 Feb 2025 14:03:35 +0200 Subject: [PATCH 060/124] General tweaks, fixes and enhancements - Refactor maven relevant parts - Fix file permissions - Fix JAR must have Javapackages-GroupId manifest attribute errors --- changelog | 643 +++++++++++++++++++++++++++++++ tomcat.spec | 1052 +++++++-------------------------------------------- 2 files changed, 789 insertions(+), 906 deletions(-) create mode 100644 changelog diff --git a/changelog b/changelog new file mode 100644 index 0000000..7d2f562 --- /dev/null +++ b/changelog @@ -0,0 +1,643 @@ +* Fri Jan 10 2025 Dimitris Soumis - 1:10.1.34-1 +- Update to version 10.1.34 + +* Mon Dec 09 2024 Packit - 1:9.0.98-1 +- Update to version 9.0.98 +- Resolves: rhbz#2331168 + +* Mon Dec 02 2024 Dimitris Soumis - 1:9.0.97-1 +- Update to version 9.0.97 +- Resolves: rhbz#2327090 + +* Tue Oct 08 2024 Packit - 1:9.0.96-1 +- Update to version 9.0.96 +- Resolves: rhbz#2317237 + +* Tue Sep 17 2024 Packit - 1:9.0.95-1 +- Update to version 9.0.95 +- Resolves: rhbz#2312858 + +* Tue Sep 10 2024 Packit - 1:9.0.94-1 +- Update to version 9.0.94 +- Resolves: rhbz#2311320 + +* Tue Aug 06 2024 Packit - 1:9.0.93-1 +- Update to version 9.0.93 +- Resolves: rhbz#2303026 + +* Wed Jul 24 2024 Miroslav Suchý - 1:9.0.91-1 +- convert license to SPDX + +* Thu Jul 11 2024 Dimitris Soumis - 1:9.0.91-1 +- Update to 9.0.91 + +* Thu Jun 20 2024 Dimitris Soumis - 1:9.0.90-1 +- Update to 9.0.90 + +* Fri Jun 7 2024 Dimitris Soumis - 1:9.0.89-1 +- Update to 9.0.89 + +* Thu Feb 29 2024 Adam Williamson - 1:9.0.83-4 +- Accept java-21-headless as one of the alternatives for java + +* Tue Feb 27 2024 Jiri Vanek - 1:9.0.83-3 +- Rebuilt for java-21-openjdk as system jdk + +* Sat Jan 27 2024 Fedora Release Engineering - 1:9.0.83-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Dec 01 2023 Hui Wang - 1:9.0.83-1 +- Update to 9.0.83 + +* Mon Oct 16 2023 Hui Wang - 1:9.0.82-1 +- Update to 9.0.82 +- Resolves: rhbz#2244333 Wrong dbcp class in tomcat 9 + +* Wed Sep 13 2023 Hui Wang - 1:9.0.80-1 +- Update to 9.0.80 +- Fix java version + +* Fri Aug 04 2023 Hui Wang - 1:9.0.78-4 +- Fix files permission + +* Wed Jul 26 2023 Hui Wang - 1:9.0.78-3 +- Exclude jnidir in the lib subpackage + +* Tue Jul 25 2023 Hui Wang - 1:9.0.78-2 +- Resolves: rhbz#2224318 There are duplicated jars in the tomcat lib subpackage + +* Tue Jul 25 2023 Hui Wang - 1:9.0.78-1 +- Resolves: rhbz#2224318 There are duplicated jars in the tomcat lib-subpackage +- Update to 9.0.78 + +* Sat Jul 22 2023 Fedora Release Engineering - 1:9.0.76-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Tue Jun 20 2023 Hui Wang - 1:9.0.76-2 +- Resolves: rhbz#2189672 Missing Tomcat POM files in Fedora Rawhide +- Remove JDTCompiler patch because ecj has been update +- Update to 9.0.76 +- Resolves: rhbz#2188218 Link bin/tomcat-juli.jar to /usr/share/java +- Move tomcat-jsp-2.3-api.jar,tomcat-servlet-4.0-api.jar and tomcat-el-api.jar to the subpackages + +* Thu Jun 08 2023 Hui Wang - 1:9.0.75-1 +- Update to 9.0.75 + +* Fri Mar 17 2023 Hui Wang - 1:9.0.73-1 +- Update to 9.0.73 + +* Sun Jan 29 2023 Hui Wang - 1:9.0.71-1 +- Update to 9.0.71 +- Remove osgi-annotations patch +- Add bnd-annotation dependency which is in bndlib package + +* Sat Jan 21 2023 Fedora Release Engineering - 1:9.0.70-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Fri Jan 13 2023 Hui Wang - 1:9.0.70-1 +- Update to 9.0.70 + +* Thu Nov 03 2022 Hui Wang - 1:9.0.68-1 +- Update to 9.0.68 + +* Thu Jul 21 2022 Hui Wang - 1:9.0.65-1 +- Update to 9.0.65 + +* Fri Jul 08 2022 Jiri Vanek - 1:9.0.64-2 +- Rebuilt for Drop i686 JDKs + +* Tue Jun 21 2022 Hui Wang - 1:9.0.64-1 +- Update to 9.0.64 +- Add osgi-annotations dependency back + +* Thu Mar 10 2022 Coty Sutherland - 1:9.0.59-3 +- Related: rhbz#2061424 Adjust fix so that it uses the proper env var + +* Tue Mar 08 2022 Coty Sutherland - 1:9.0.59-2 +- Resolves: rhbz#2061424 Add Java 9 start-up parameters to allow reflection + +* Wed Mar 02 2022 Sonia Xu - 1:9.0.59-1 +- Update to 9.0.59 +- Resolves: rhbz#2047419 - CVE-2022-23181 tomcat: local privilege escalation vulnerability + +* Sat Feb 05 2022 Jiri Vanek - 1:9.0.56-3 +- Rebuilt for java-17-openjdk as system jdk + +* Sat Jan 22 2022 Fedora Release Engineering - 1:9.0.56-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Thu Dec 09 2021 Hui Wang - 1:9.0.56-1 +- Update to 9.0.56 + +* Tue Oct 12 2021 Hui Wang - 1:9.0.55-1 +- Update to 9.0.55 + +* Tue Oct 12 2021 Hui Wang - 1:9.0.54-1 +- Update to 9.0.54 + +* Thu Sep 16 2021 Hui Wang - 1:9.0.53-1 +- Update to 9.0.53 + +* Wed Aug 18 2021 Hui Wang - 1:9.0.52-1 +- Update to 9.0.52 + +* Fri Jul 23 2021 Fedora Release Engineering - 1:9.0.50-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Tue Jul 06 2021 Hui Wang - 1:9.0.50-1 +- Update to 9.0.50 + +* Sat Jun 05 2021 Coty Sutherland - 1:9.0.45-4 +- Add back logrotate config file per devel list request +- Add mvn virtual provides back for the servlet, el, and jsp spec impls + +* Fri Jun 04 2021 Coty Sutherland - 1:9.0.45-3 +- Drop geronimo-jaxrpc, which provided the webservices naming factory resources that are generally unused + +* Thu Jun 03 2021 Coty Sutherland - 1:9.0.45-2 +- Remove examples webapps from subpackage +- Updates to javapackages-local removed %%add_maven_depmap which broke the build, + so I removed the maven artifacts as they aren't very useful anyway +- Drop JSVC support as it's not very useful these days +- Drop geronimo-saaj as it's no longer required + +* Thu Apr 22 2021 Hui Wang - 1:9.0.45-1 +- Update to 9.0.45 + +* Thu Mar 18 2021 Hui Wang - 1:9.0.44-1 +- Update to 9.0.44 + +* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 1:9.0.43-2 +- Rebuilt for updated systemd-rpm-macros + See https://pagure.io/fesco/issue/2583. + +* Wed Feb 03 2021 Hui Wang - 1:9.0.43-1 +- Update to 9.0.43 + +* Wed Jan 27 2021 Fedora Release Engineering - 1:9.0.41-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Wed Dec 09 2020 Hui Wang - 1:9.0.41-1 +- Update to 9.0.41 + +* Wed Nov 18 2020 Hui Wang - 1:9.0.40-1 +- Update to 9.0.40 + +* Mon Oct 12 2020 Hui Wang - 1:9.0.39-1 +- Update to 9.0.39 + +* Wed Sep 16 2020 Hui Wang - 1:9.0.38-1 +- Update to 9.0.38 + +* Wed Jul 29 2020 Fedora Release Engineering - 1:9.0.37-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Fri Jul 24 2020 Coty Sutherland - 1:9.0.37-3 +- Related: rhbz#1857043 Temporarily remove OSGi metadata from tomcat jars + +* Mon Jul 20 2020 Coty Sutherland - 1:9.0.37-2 +- Resolves: rhbz#1857043 Add patch to reinclude o.a.t.util.net.jsse and o.a.t.util.moduler.modules in tomcat-coyote.jar + +* Mon Jul 13 2020 Coty Sutherland - 1:9.0.37-1 +- Update to 9.0.37 + +* Sat Jul 11 2020 Jiri Vanek - 1:9.0.36-2 +- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 + +* Wed Jun 10 2020 Hui Wang - 1:9.0.36-1 +- Upgrade to 9.0.36 + +* Sun May 31 2020 Hui Wang - 1:9.0.35-2 +- Upgrade to 9.0.35 + +* Wed Apr 22 2020 Coty Sutherland - 1:9.0.34-2 +- Add updated catalina.policy patch to allow ECJ usage under the Security Manager + +* Tue Apr 21 2020 Coty Sutherland - 1:9.0.34-1 +- Update to 9.0.34 + +* Thu Mar 05 2020 Coty Sutherland - 1:9.0.31-1 +- Update to 9.0.31 +- Resolves: rhbz#1806398 - CVE-2020-1938 tomcat: Apache Tomcat AJP File Read/Inclusion Vulnerability + +* Fri Jan 31 2020 Fedora Release Engineering - 1:9.0.30-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Fri Dec 20 2019 Coty Sutherland - 1:9.0.30-1 +- Update to 9.0.30 + +* Thu Sep 26 2019 Coty Sutherland - 1:9.0.26-2 +- Resolves: rhbz#1510522 man page uid and gid mismatch for service accounts + +* Thu Sep 26 2019 Coty Sutherland - 1:9.0.26-1 +- Update to 9.0.26 +- Resolves: rhbz#1523112 tomcat systemd does not cope with - in service names +- Resolves: rhbz#1510896 Problem to start tomcat with a user whose group has a name different to the user + +* Sat Jul 27 2019 Fedora Release Engineering - 1:9.0.21-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Wed Jul 17 2019 Coty Sutherland - 1:9.0.21-2 +- Update build-classpath calls to ECJ to specify the JAR we want to use + +* Tue Jun 18 2019 Coty Sutherland - 1:9.0.21-1 +- Update to 9.0.21 + +* Tue Apr 02 2019 Coty Sutherland - 1:9.0.13-4 +- Remove javadoc subpackage to drop the jpackage-utils dependency + +* Wed Feb 20 2019 Coty Sutherland - 1:9.0.13-3 +- Remove OSGi MANIFEST files, these are now included in the upstream Tomcat distribution (as of 9.0.10) +- Remove unused dependencies, apache-commons-collections, apache-commons-daemon, apache-commons-pool, junit + +* Sun Feb 03 2019 Fedora Release Engineering - 1:9.0.13-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Thu Dec 13 2018 Coty Sutherland - 1:9.0.13-1 +- Update to 9.0.13 +- Resolves: rhbz#1636513 - CVE-2018-11784 tomcat: Open redirect in default servlet + +* Sun Oct 14 2018 Peter Robinson 1:9.0.10-2 +- Drop legcy sys-v bits + +* Tue Jul 31 2018 Coty Sutherland - 1:9.0.10-1 +- Update to 9.0.10 +- Resolves: rhbz#1624929 - CVE-2018-1336 tomcat: A bug in the UTF-8 decoder can lead to DoS +- Resolves: rhbz#1579612 - CVE-2018-8014 tomcat: Insecure defaults in CORS filter enable 'supportsCredentials' for all origins +- Resolves: rhbz#1607586 - CVE-2018-8034 tomcat: host name verification missing in WebSocket client +- Resolves: rhbz#1607584 - CVE-2018-8037 tomcat: Due to a mishandling of close in NIO/NIO2 connectors user sessions can get mixed up + +* Sat Jul 14 2018 Fedora Release Engineering - 1:9.0.7-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Tue May 01 2018 Coty Sutherland - 1:9.0.7-1 +- Update to 9.0.7 + +* Thu Mar 15 2018 Coty Sutherland - 1:8.5.29-1 +- Update to 8.5.29 +- Resolves: rhbz#1548290 CVE-2018-1304 tomcat: Incorrect handling of empty string URL in security constraints can lead to unitended exposure of resources +- Resolves: rhbz#1548284 CVE-2018-1305 tomcat: Late application of security constraints can lead to resource exposure for unauthorised users + +* Fri Feb 09 2018 Igor Gnatenko - 1:8.0.49-2 +- Escape macros in %%changelog + +* Thu Feb 01 2018 Coty Sutherland - 1:8.0.49-1 +- Update to 8.0.49 + +* Tue Dec 12 2017 Merlin Mathesius - 1:8.0.47-3 +- Cleanup spec file conditionals + +* Tue Oct 24 2017 Troy Dawson - 1:8.0.47-2 +- Change "zip -u" to "zip" +- Resolves: rhbz#1495241 [tomcat] zip -u in spec file causes race condition + +* Wed Oct 04 2017 Coty Sutherland - 1:8.0.47-1 +- Update to 8.0.47 +- Resolves: rhbz#1497682 CVE-2017-12617 tomcat: Remote Code Execution bypass for CVE-2017-12615 + +* Mon Aug 21 2017 Coty Sutherland - 1:8.0.46-1 +- Update to 8.0.46 +- Resolves: rhbz#1480620 CVE-2017-7674 tomcat: Cache Poisoning + +* Thu Jul 27 2017 Fedora Release Engineering - 1:8.0.44-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Fri Jun 09 2017 Coty Sutherland - 1:8.0.44-1 +- Resolves: rhbz#1459160 CVE-2017-5664 tomcat: Security constrained bypass in error page mechanism + +* Tue Apr 11 2017 Coty Sutherland - 1:8.0.43-1 +- Update to 8.0.43 + +* Fri Mar 31 2017 Coty Sutherland - 1:8.0.42-1 +- Update to 8.0.42 + +* Thu Feb 16 2017 Coty Sutherland - 1:8.0.41-1 +- Update to 8.0.41 +- Resolves: rhbz#1403825 CVE-2016-8745 tomcat: information disclosure due to incorrect Processor sharing + +* Sat Feb 11 2017 Fedora Release Engineering - 1:8.0.39-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Tue Nov 29 2016 Coty Sutherland - 1:8.0.39-1 +- Update to 8.0.39 +- Resolves: rhbz#1397493 CVE-2016-6816 CVE-2016-6817 CVE-2016-8735 tomcat: various flaws + +* Tue Oct 25 2016 Coty Sutherland - 1:8.0.38-1 +- Update to 8.0.38 + +* Sun Oct 23 2016 Coty Sutherland - 1:8.0.37-3 +- Resolves: rhbz#1383216 CVE-2016-6325 tomcat: tomcat writable config files allow privilege escalation +- Resolves: rhbz#1382310 CVE-2016-5425 tomcat: Local privilege escalation via systemd-tmpfiles service + +* Tue Sep 13 2016 Coty Sutherland - 1:8.0.37-1 +- Rebase to 8.0.37 +- Resolves: rhbz#1375581 CVE-2016-5388 CGI sets environmental variable based on user supplied Proxy request header +- Resolves: rhbz#1370262 catalina.out is no longer in use in the main package, but still gets rotated + +* Thu Aug 11 2016 Coty Sutherland - 1:8.0.36-2 +- Related: rhbz#1349469 Correct typo in changelog entry + +* Mon Aug 08 2016 Coty Sutherland - 1:8.0.36-1 +- Resolves: rhbz#1349469 CVE-2016-3092 tomcat: Usage of vulnerable FileUpload package can result in denial of service (updates to 8.0.36) +- Resolves: rhbz#1364056 The command tomcat-digest doesn't work +- Resolves: rhbz#1363884 The tomcat-tool-wrapper script is broken +- Resolves: rhbz#1347864 The systemd service unit does not allow tomcat to shut down gracefully +- Resolves: rhbz#1347835 The security manager doesn't work correctly (JSPs cannot be compiled) +- Resolves: rhbz#1341853 rpm -V tomcat fails on /var/log/tomcat/catalina.out +- Resolves: rhbz#1341850 tomcat-jsvc.service has TOMCAT_USER value hard-coded +- Resolves: rhbz#1359737 Missing maven depmap for the following artifacts: org.apache.tomcat:tomcat-websocket, org.apache.tomcat:tomcat-websocket-api +- Resolves: asfbz#59960 Building javadocs with java8 fails + +* Wed Mar 2 2016 Ivan Afonichev - 1:8.0.32-4 +- Revert sysconfig migration changes, resolves: rhbz#1311771, rhbz#1311905 +- Add /etc/tomcat/conf.d/ with shell expansion support, resolves rhbz#1293636 + +* Sat Feb 27 2016 Ivan Afonichev - 1:8.0.32-3 +- Load sysconfig from tomcat.conf, resolves: rhbz#1311771, rhbz#1311905 +- Set default javax.sql.DataSource factory to apache commons one, resolves rhbz#1214381 + +* Sun Feb 21 2016 Ivan Afonichev - 1:8.0.32-2 +- Fix symlinks from $CATALINA_HOME/lib perspective, resolves: rhbz#1308685 + +* Thu Feb 11 2016 Ivan Afonichev - 1:8.0.32-1 +- Updated to 8.0.32 +- Remove log4j support. It has never been working actually. See rhbz#1236297 +- Move shipped config to /etc/sysconfig/tomcat. /etc/tomcat/tomcat.conf can now be used to override it with shell expansion, resolves rhbz#1293636 +- Recommend tomcat-native, resolves: rhbz#1243132 + +* Wed Feb 10 2016 Coty Sutherland 1:8.0.26-4 +- Resolves: rhbz#1286800 Failed to start component due to wrong allowLinking="true" in context.xml +- Program /bin/nologin does not exist (#1302718) + +* Fri Feb 05 2016 Fedora Release Engineering - 1:8.0.26-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Nov 11 2015 Robert Scheck 1:8.0.26-2 +- CATALINA_OPTS are only read when SECURITY_MANAGER is true (#1147105) + +* Thu Aug 27 2015 Alexander Kurtakov 1:8.0.26-1 +- Update to 8.0.26. + +* Fri Jul 10 2015 Alexander Kurtakov 1:8.0.24-2 +- Update to 8.0.24. + +* Fri Jun 19 2015 Alexander Kurtakov 1:8.0.23-2 +- Drop javax.el:el-api alias. + +* Thu Jun 18 2015 Alexander Kurtakov 1:8.0.23-1 +- Update to 8.0.23. + +* Thu Jun 18 2015 Alexander Kurtakov 1:8.0.20-3 +- Drop jetty alias for servlet. + +* Tue Jun 09 2015 Michal Srb - 1:8.0.20-2 +- Fix metadata for org.apache.tomcat:{tomcat-jni,tomcat-util-scan} + +* Thu Mar 5 2015 Alexander Kurtakov 1:8.0.18-5 +- Rebuild against tomcat-taglibs-standard. + +* Wed Mar 4 2015 Alexander Kurtakov 1:8.0.18-4 +- Fix epoch bumped el_1_0_api that would override all other glassfish/jboss/etc. due to wrong epoch. +- Drop old provides. + +* Tue Mar 03 2015 Stephen Gallagher 1:8.0.18-3 +- Bump epoch to maintain upgrade path from Fedora 22 + +* Mon Feb 16 2015 Michal Srb - 0:8.0.18-2 +- Install POM files for org.apache.tomcat:{tomcat-jni,tomcat-util-scan} + +* Sun Feb 15 2015 Ivan Afonichev 0:8.0.18-1 +- Updated to 8.0.18 + +* Sat Sep 20 2014 Ivan Afonichev 0:8.0.12-1 +- Updated to 8.0.12 +- Substitute libnames in catalina-tasks.xml, resolves: rhbz#1126439 +- Use CATALINA_OPTS only on start, resolves: rhbz#1051194 + +* Mon Jun 16 2014 Michal Srb - 0:7.0.54-3 +- jsp-api requires el-api + +* Sun Jun 08 2014 Fedora Release Engineering - 0:7.0.54-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Thu Jun 5 2014 Alexander Kurtakov 0:7.0.54-1 +- Update to upstream 7.0.54 - fixes compile with Java 8. + +* Wed May 21 2014 Alexander Kurtakov 0:7.0.52-3 +- Drop servlet/el api provides to reduce user machines ending with both. + +* Sun Mar 30 2014 Ivan Afonichev 0:7.0.52-2 +- Don't provide maven javax.jsp:jsp-api and javax.servlet.jsp:javax.servlet.jsp-api resolves: rhbz#1076949 +- Move log4j support into subpackage, resolves: rhbz#1027716 + +* Wed Mar 26 2014 Ivan Afonichev 0:7.0.52-1 +- Updated to 7.0.52 +- Rewrite jsvc implementation, resolves: rhbz#1051743 +- Switch to java-headless R, resolves: rhbz#1068566 +- Create and own %%{_localstatedir}/lib/tomcats, resolves: rhbz#1026741 +- Add pom for tomcat-jdbc, resolves: rhbz#1011003 + +* Tue Jan 21 2014 Mikolaj Izdebski - 0:7.0.47-3 +- Fix installation of Maven metadata for tomcat-juli.jar +- Resolves: rhbz#1033664 + +* Wed Jan 15 2014 Stanislav Ochotnicky - 0:7.0.47-2 +- Rebuild for bug #1033664 + +* Sun Nov 03 2013 Ivan Afonichev 0:7.0.47-1 +- Updated to 7.0.47 +- Fix java.security.policy + +* Sun Aug 04 2013 Fedora Release Engineering - 0:7.0.42-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Fri Jul 12 2013 Ivan Afonichev 0:7.0.42-2 +- Remove jpackage-utils R + +* Thu Jul 11 2013 Dmitry Tikhonov 0:7.0.42-1 +- Updated to 7.0.42 + +* Tue Jun 11 2013 Paul Komkoff 0:7.0.40-3 +- Dropped systemv inits. Bye-bye. +- Updated the systemd wrappers to allow running multiple instances. + Added wrapper scripts to do that, ported the original non-named + service file to work with the same wrappers, updated + /usr/sbin/tomcat to call systemctl. + +* Sat May 11 2013 Ivan Afonichev 0:7.0.40-1 +- Updated to 7.0.40 +- Resolves: rhbz 956569 added missing commons-pool link +- Remove ant-nodeps BR + +* Mon Mar 4 2013 Mikolaj Izdebski - 0:7.0.37-2 +- Add depmaps for org.eclipse.jetty.orbit +- Resolves: rhbz#917626 + +* Wed Feb 20 2013 Ivan Afonichev 0:7.0.39-1 +- Updated to 7.0.39 + +* Wed Feb 20 2013 Ivan Afonichev 0:7.0.37-1 +- Updated to 7.0.37 + +* Mon Feb 4 2013 Ivan Afonichev 0:7.0.35-1 +- Updated to 7.0.35 +- systemd SuccessExitStatus=143 for proper stop exit code processing + +* Mon Dec 24 2012 Ivan Afonichev 0:7.0.34-1 +- Updated to 7.0.34 +- ecj >= 4.2.1 now required +- Resolves: rhbz 889395 concat classpath correctly; chdir to $CATALINA_HOME + +* Fri Dec 7 2012 Ivan Afonichev 0:7.0.33-2 +- Resolves: rhbz 883806 refix logdir ownership + +* Sun Dec 2 2012 Ivan Afonichev 0:7.0.33-1 +- Updated to 7.0.33 +- Resolves: rhbz 873620 need chkconfig for update-alternatives + +* Wed Oct 17 2012 Ivan Afonichev 0:7.0.32-1 +- Updated to 7.0.32 +- Resolves: rhbz 842620 symlinks to taglibs + +* Fri Aug 24 2012 Ivan Afonichev 0:7.0.29-1 +- Updated to 7.0.29 +- Add pidfile as tmpfile +- Use systemd for running as unprivileged user +- Resolves: rhbz 847751 upgrade path was broken +- Resolves: rhbz 850343 use new systemd-rpm macros + +* Sat Jul 21 2012 Fedora Release Engineering - 0:7.0.28-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Mon Jul 2 2012 Ivan Afonichev 0:7.0.28-1 +- Updated to 7.0.28 +- Resolves: rhbz 820119 Remove bundled apache-commons-dbcp +- Resolves: rhbz 814900 Added tomcat-coyote POM +- Resolves: rhbz 810775 Remove systemv stuff from %%post scriptlet +- Remove redhat-lsb R + +* Mon Apr 9 2012 Ivan Afonichev 0:7.0.27-2 +- Fixed native download hack + +* Sat Apr 7 2012 Ivan Afonichev 0:7.0.27-1 +- Updated to 7.0.27 +- Fixed jakarta-taglibs-standard BR and R + +* Wed Mar 21 2012 Stanislav Ochotnicky - 0:7.0.26-2 +- Add more depmaps to J2EE apis to help jetty/glassfish updates + +* Wed Mar 14 2012 Juan Hernandez 0:7.0.26-2 +- Added the POM files for tomcat-api and tomcat-util (#803495) + +* Wed Feb 22 2012 Ivan Afonichev 0:7.0.26-1 +- Updated to 7.0.26 +- Bug 790334: Change ownership of logdir for logrotate + +* Thu Feb 16 2012 Krzysztof Daniel 0:7.0.25-4 +- Bug 790694: Priorities of jsp, servlet and el packages updated. + +* Wed Feb 8 2012 Krzysztof Daniel 0:7.0.25-3 +- Dropped indirect dependecy to tomcat 5 + +* Sun Jan 22 2012 Ivan Afonichev 0:7.0.25-2 +- Added hack for maven depmap of tomcat-juli absolute link [ -f ] pass correctly + +* Sat Jan 21 2012 Ivan Afonichev 0:7.0.25-1 +- Updated to 7.0.25 +- Removed EntityResolver patch (changes already in upstream sources) +- Place poms and depmaps in the same package as jars +- Added javax.servlet.descriptor to export-package of servlet-api +- Move several chkconfig actions and reqs to systemv subpackage +- New maven depmaps generation method +- Add patch to support java7. (patch sent upstream). +- Require java >= 1:1.6.0 + +* Fri Jan 13 2012 Krzysztof Daniel 0:7.0.23-5 +- Exported javax.servlet.* packages in version 3.0 as 2.6 to make + servlet-api compatible with Eclipse. + +* Thu Jan 12 2012 Ivan Afonichev 0:7.0.23-4 +- Move jsvc support to subpackage + +* Wed Jan 11 2012 Alexander Kurtakov 0:7.0.23-2 +- Add EntityResolver setter patch to jasper for jetty's need. (patch sent upstream). + +* Mon Dec 12 2011 Joseph D. Wagner 0:7.0.23-3 +- Added support to /usr/sbin/tomcat-sysd and /usr/sbin/tomcat for + starting tomcat with jsvc, which allows tomcat to perform some + privileged operations (e.g. bind to a port < 1024) and then switch + identity to a non-privileged user. Must add USE_JSVC="true" to + /etc/tomcat/tomcat.conf or /etc/sysconfig/tomcat. + +* Mon Nov 28 2011 Ivan Afonichev 0:7.0.23-1 +- Updated to 7.0.23 + +* Fri Nov 11 2011 Ivan Afonichev 0:7.0.22-2 +- Move tomcat-juli.jar to lib package +- Drop %%update_maven_depmap as in tomcat6 +- Provide native systemd unit file ported from tomcat6 + +* Thu Oct 6 2011 Ivan Afonichev 0:7.0.22-1 +- Updated to 7.0.22 + +* Mon Oct 03 2011 Rex Dieter - 0:7.0.21-3.1 +- rebuild (java), rel-eng#4932 + +* Mon Sep 26 2011 Ivan Afonichev 0:7.0.21-3 +- Fix basedir mode + +* Tue Sep 20 2011 Roland Grunberg 0:7.0.21-2 +- Add manifests for el-api, jasper-el, jasper, tomcat, and tomcat-juli. + +* Thu Sep 8 2011 Ivan Afonichev 0:7.0.21-1 +- Updated to 7.0.21 + +* Mon Aug 15 2011 Ivan Afonichev 0:7.0.20-3 +- Require java = 1:1.6.0 + +* Mon Aug 15 2011 Ivan Afonichev 0:7.0.20-2 +- Require java < 1.7.0 + +* Mon Aug 15 2011 Ivan Afonichev 0:7.0.20-1 +- Updated to 7.0.20 + +* Tue Jul 26 2011 Ivan Afonichev 0:7.0.19-1 +- Updated to 7.0.19 + +* Tue Jun 21 2011 Ivan Afonichev 0:7.0.16-1 +- Updated to 7.0.16 + +* Mon Jun 6 2011 Ivan Afonichev 0:7.0.14-3 +- Added initial systemd service +- Fix some paths + +* Sat May 21 2011 Ivan Afonichev 0:7.0.14-2 +- Fixed http source link +- Securify some permissions +- Added licenses for el-api and servlet-api +- Added dependency on jpackage-utils for the javadoc subpackage + +* Sat May 14 2011 Ivan Afonichev 0:7.0.14-1 +- Updated to 7.0.14 + +* Thu May 5 2011 Ivan Afonichev 0:7.0.12-4 +- Provided local paths for libs +- Fixed dependencies +- Fixed update temp/work cleanup + +* Mon May 2 2011 Ivan Afonichev 0:7.0.12-3 +- Fixed package groups +- Fixed some permissions +- Fixed some links +- Removed old tomcat6 crap + +* Thu Apr 28 2011 Ivan Afonichev 0:7.0.12-2 +- Package now named just tomcat instead of tomcat7 +- Removed Provides: %%{name}-log4j +- Switched to apache-commons-* names instead of jakarta-commons-* . +- Remove the old changelog +- BR/R java >= 1:1.6.0 , same for java-devel +- Removed old tomcat6 crap + +* Wed Apr 27 2011 Ivan Afonichev 0:7.0.12-1 +- Tomcat7 \ No newline at end of file diff --git a/tomcat.spec b/tomcat.spec index 8689ef0..b25b959 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -1,33 +1,3 @@ -# Copyright (c) 2000-2008, JPackage Project -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the -# distribution. -# 3. Neither the name of the JPackage Project nor the names of its -# contributors may be used to endorse or promote products derived -# from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -# - %global jspspec 3.1 %global major_version 10 %global minor_version 1 @@ -39,9 +9,10 @@ # Recommended version is specified in java/org/apache/catalina/core/AprLifecycleListener.java %global native_version 2.0.8 - # FHS 3.0 compliant tree structure - http://refspecs.linuxfoundation.org/FHS_3.0/fhs/index.html %global basedir %{_var}/lib/%{name} +%global baseconfdir %{basedir}/conf +%global baselogdir %{basedir}/logs %global appdir %{basedir}/webapps %global homedir %{_datadir}/%{name} %global bindir %{homedir}/bin @@ -50,7 +21,7 @@ %global logdir %{_var}/log/%{name} %global cachedir %{_var}/cache/%{name} %global tempdir %{cachedir}/temp -%global workdir %{cachedir}/work +%global workdir %{basedir}/work Name: tomcat Epoch: 1 @@ -75,39 +46,35 @@ Source10: %{name}-server Source11: %{name}-named.service Source12: module-start-up-parameters.conf +# https://bugzilla.redhat.com/show_bug.cgi?id=435829 Patch0: %{name}-%{major_version}.%{minor_version}-bootstrap-MANIFEST.MF.patch Patch1: %{name}-%{major_version}.%{minor_version}-tomcat-users-webapp.patch Patch2: %{name}-build.patch +# catalina.policy patch to allow ECJ usage under the Security Manager Patch3: %{name}-%{major_version}.%{minor_version}-catalina-policy.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=1857043 Patch4: %{name}-%{major_version}.%{minor_version}-bnd-annotation.patch +# Fixes not available constants in ECJ Patch5: %{name}-%{major_version}.%{minor_version}-JDTCompiler.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=1857043 Patch6: rhbz-1857043.patch BuildArch: noarch ExclusiveArch: %{java_arches} noarch -BuildRequires: ant >= 1.10.2 -BuildRequires: ecj >= 4.20 +BuildRequires: ant +BuildRequires: ecj BuildRequires: findutils -BuildRequires: java-devel >= 17 +BuildRequires: java-devel BuildRequires: javapackages-local BuildRequires: aqute-bnd -BuildRequires: aqute-bndlib -BuildRequires: systemd BuildRequires: tomcat-jakartaee-migration -Requires: (java-headless >= 11 or java >= 11) -Requires: javapackages-tools -Requires: %{name}-lib = %{epoch}:%{version}-%{release} -%if 0%{?fedora} || 0%{?rhel} > 7 -Recommends: tomcat-native >= %{native_version} -%endif -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd - -# added after log4j sub-package was removed -Provides: %{name}-log4j = %{epoch}:%{version}-%{release} +Requires: (java-headless >= 11 or java >= 11) +Requires: javapackages-tools +Requires: %{name}-lib = %{epoch}:%{version}-%{release} +Recommends: tomcat-native >= %{native_version} +Requires: systemd %description Tomcat is the servlet container that is used in the official Reference @@ -136,9 +103,10 @@ The docs web application for Apache Tomcat. %package jsp-%{jspspec}-api Summary: Apache Tomcat JavaServer Pages v%{jspspec} API Implementation Classes Provides: jsp = %{jspspec} -Obsoletes: %{name}-jsp-api < %{jspspec} +Obsoletes: jsp < %{jspspec} Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} +Conflicts: tomcat-jsp-2.3-api %description jsp-%{jspspec}-api Apache Tomcat JSP API Implementation Classes. @@ -158,7 +126,8 @@ Libraries needed to run the Tomcat Web container. %package servlet-%{servletspec}-api Summary: Apache Tomcat Java Servlet v%{servletspec} API Implementation Classes Provides: servlet = %{servletspec} -Obsoletes: %{name}-servlet-api < %{servletspec} +Obsoletes: servlet < %{servletspec} +Conflicts: tomcat-servlet-4.0-api %description servlet-%{servletspec}-api Apache Tomcat Servlet API Implementation Classes. @@ -166,7 +135,8 @@ Apache Tomcat Servlet API Implementation Classes. %package el-%{elspec}-api Summary: Apache Tomcat Expression Language v%{elspec} API Implementation Classes Provides: el_api = %{elspec} -Obsoletes: %{name}-el-api < %{elspec} +Obsoletes: el_api < %{elspec} +Conflicts: tomcat-el-3.0-api %description el-%{elspec}-api Apache Tomcat EL API Implementation Classes. @@ -195,19 +165,11 @@ find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name " # Remove webservices naming resources as it's generally unused %{__rm} -rf java/org/apache/naming/factory/webservices -# Configure maven files -%mvn_package ":tomcat-el-api" tomcat-el-api -%mvn_alias "org.apache.tomcat:tomcat-el-api" "jakarta.servlet:jakarta.servlet-api" -%mvn_package ":tomcat-jsp-api" tomcat-jsp-api -%mvn_alias "org.apache.tomcat:tomcat-jsp-api" "jakarta.servlet:jakarta.servlet.jsp" -%mvn_package ":tomcat-servlet-api" tomcat-servlet-api - # Create a sysusers.d config file cat >tomcat.sysusers.conf < ${RPM_BUILD_ROOT}%{confdir}/conf.d/README -%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{libdir} -%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{logdir} -%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{_localstatedir}/lib/tomcats -%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{homedir} -%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{tempdir} -%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{workdir} -%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_unitdir} -%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_libexecdir}/%{name} +%{__install} -d ${RPM_BUILD_ROOT}%{libdir} +%{__install} -d ${RPM_BUILD_ROOT}%{logdir} +%{__install} -d ${RPM_BUILD_ROOT}%{_localstatedir}/lib/tomcats +%{__install} -d ${RPM_BUILD_ROOT}%{homedir} +%{__install} -d ${RPM_BUILD_ROOT}%{tempdir} +%{__install} -d ${RPM_BUILD_ROOT}%{_unitdir} +%{__install} -d ${RPM_BUILD_ROOT}%{_libexecdir}/%{name} + +for jar in output/build/lib/*.jar; do + # Skip Jar if empty, applies to tomcat-coyote-ffm.jar atm + jar tf ${jar} | grep -E -q '.*\.class' || continue + + jarname=$(basename $jar .jar) + + case "${jarname}" in + jasper) pom="res/maven/tomcat-jasper.pom" ;; + catalina-tribes) pom="res/maven/tomcat-tribes.pom" ;; + catalina-ssi) pom="res/maven/tomcat-ssi.pom" ;; + catalina-storeconfig) pom="res/maven/tomcat-storeconfig.pom" ;; + *) pom=$(ls res/maven/*"${jarname}".pom 2>/dev/null) ;; + esac + + sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" ${pom} + + case "${jarname}" in + tomcat-jni) %mvn_file org.apache.tomcat:tomcat-jni tomcat/tomcat-jni ${RPM_BUILD_ROOT}%{libdir}/tomcat-jni ;; + jsp-api) %mvn_file org.apache.tomcat:tomcat-jsp-api tomcat/jsp-api tomcat/%{name}-jsp-%{jspspec}-api %{name}-jsp-%{jspspec}-api %{name}-jsp-api ;; + servlet-api) %mvn_file org.apache.tomcat:tomcat-servlet-api tomcat/servlet-api tomcat/%{name}-servlet-%{servletspec}-api %{name}-servlet-%{servletspec}-api %{name}-servlet-api ;; + el-api) %mvn_file org.apache.tomcat:tomcat-el-api tomcat/el-api tomcat/%{name}-el-%{servletspec}-api %{name}-el-%{servletspec}-api %{name}-el-api ;; + catalina-tribes) %mvn_file org.apache.tomcat:tomcat-tribes tomcat/catalina-tribes ;; + catalina-ssi) %mvn_file org.apache.tomcat:tomcat-ssi tomcat/catalina-ssi ;; + catalina-storeconfig) %mvn_file org.apache.tomcat:tomcat-storeconfig tomcat/catalina-storeconfig ;; + *) %mvn_file org.apache.tomcat:$(sed -n "/.*${jarname}.*<\/artifactId>/ { s/.*\(.*${jarname}.*\)<\/artifactId>.*/\1/; p; q; }" "${pom}" 2>/dev/null) tomcat/${jarname} ;; + esac + + %mvn_artifact ${pom} ${jar} +done + +sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat-juli.pom +%mvn_artifact res/maven/tomcat-juli.pom output/build/bin/tomcat-juli.jar +# bootstrap does not have a pom, generate one +%mvn_artifact 'org.apache.tomcat:tomcat-bootstrap:%{version}' output/build/bin/bootstrap.jar + +#Create symlinks to bindir +%mvn_file :tomcat-bootstrap tomcat/tomcat-bootstrap ${RPM_BUILD_ROOT}%{bindir}/bootstrap.jar +%mvn_file :tomcat-juli tomcat/tomcat-juli ${RPM_BUILD_ROOT}%{bindir}/tomcat-juli.jar + +# tomcat-parent pom +sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat.pom +%mvn_artifact res/maven/tomcat.pom + +%mvn_package ":tomcat-el-api" tomcat-el-api +%mvn_package ":tomcat-jsp-api" tomcat-jsp-api +%mvn_package ":tomcat-servlet-api" tomcat-servlet-api + +%mvn_install + +# Fixes JAR must have Javapackages-GroupId manifest attribute error +jar ufm ${RPM_BUILD_ROOT}%{libdir}/el-api.jar <(echo "JavaPackages-GroupId: org.apache.tomcat") +jar ufm ${RPM_BUILD_ROOT}%{libdir}/jsp-api.jar <(echo "JavaPackages-GroupId: org.apache.tomcat") +jar ufm ${RPM_BUILD_ROOT}%{libdir}/servlet-api.jar <(echo "JavaPackages-GroupId: org.apache.tomcat") # move things into place -# First copy supporting libs to tomcat lib pushd output/build - %{__cp} -a bin/*.{jar,xml} ${RPM_BUILD_ROOT}%{bindir} - %{__cp} -a conf/*.{policy,properties,xml,xsd} ${RPM_BUILD_ROOT}%{confdir} - %{__cp} -a lib/*.jar ${RPM_BUILD_ROOT}%{libdir} + %{__cp} -a bin/*.xml ${RPM_BUILD_ROOT}%{bindir} + %{__cp} -a conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{confdir} %{__cp} -a webapps/* ${RPM_BUILD_ROOT}%{appdir} popd @@ -277,9 +289,9 @@ popd -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE2} \ > ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/%{name} -%{__install} -m 0755 %{SOURCE3} \ +%{__install} %{SOURCE3} \ ${RPM_BUILD_ROOT}%{_sbindir}/%{name} -%{__install} -m 0644 %{SOURCE7} \ +%{__install} %{SOURCE7} \ ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service %{__sed} -e "s|\@\@\@TCLOG\@\@\@|%{logdir}|g" %{SOURCE4} \ > ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{name}.disabled @@ -292,33 +304,11 @@ popd -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE6} \ > ${RPM_BUILD_ROOT}%{_bindir}/%{name}-tool-wrapper -%{__install} -m 0644 %{SOURCE8} \ - ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/functions -%{__install} -m 0755 %{SOURCE9} \ - ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/preamble -%{__install} -m 0755 %{SOURCE10} \ - ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/server -%{__install} -m 0644 %{SOURCE11} \ - ${RPM_BUILD_ROOT}%{_unitdir}/%{name}@.service - -%{__install} -m 0644 %{SOURCE12} ${RPM_BUILD_ROOT}%{confdir}/conf.d/ - -# Substitute libnames in catalina-tasks.xml -sed -i \ - "s,el-api.jar,%{name}-el-%{elspec}-api.jar,; - s,servlet-api.jar,%{name}-servlet-%{servletspec}-api.jar,; - s,jsp-api.jar,%{name}-jsp-%{jspspec}-api.jar,;" \ - ${RPM_BUILD_ROOT}%{bindir}/catalina-tasks.xml - -# create jsp and servlet API symlinks -pushd ${RPM_BUILD_ROOT}%{_javadir} - %{__mv} %{name}/jsp-api.jar %{name}-jsp-%{jspspec}-api.jar - %{__ln_s} %{name}-jsp-%{jspspec}-api.jar %{name}-jsp-api.jar - %{__mv} %{name}/servlet-api.jar %{name}-servlet-%{servletspec}-api.jar - %{__ln_s} %{name}-servlet-%{servletspec}-api.jar %{name}-servlet-api.jar - %{__mv} %{name}/el-api.jar %{name}-el-%{elspec}-api.jar - %{__ln_s} %{name}-el-%{elspec}-api.jar %{name}-el-api.jar -popd +%{__install} %{SOURCE8} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/functions +%{__install} %{SOURCE9} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/preamble +%{__install} %{SOURCE10} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/server +%{__install} %{SOURCE11} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}@.service +%{__install} %{SOURCE12} ${RPM_BUILD_ROOT}%{confdir}/conf.d/ pushd output/build %{_bindir}/build-jar-repository lib ecj 2>&1 @@ -326,84 +316,13 @@ pushd output/build popd pushd ${RPM_BUILD_ROOT}%{libdir} - # symlink JSP and servlet API jars - %{__ln_s} ../../java/%{name}-jsp-%{jspspec}-api.jar . - %{__ln_s} ../../java/%{name}-servlet-%{servletspec}-api.jar . - %{__ln_s} ../../java/%{name}-el-%{elspec}-api.jar . - %{__ln_s} $(build-classpath ecj/ecj) jasper-jdt.jar - %{__ln_s} $(build-classpath tomcat-jakartaee-migration/jakartaee-migration) jakartaee-migration.jar - - cp ../../%{name}/bin/tomcat-juli.jar . + %{__cp} $(build-classpath ecj/ecj) ecj-x.jar + %{__cp} $(build-classpath tomcat-jakartaee-migration/jakartaee-migration) jakartaee-migration-x.jar popd -# symlink to the FHS locations where we've installed things -pushd ${RPM_BUILD_ROOT}%{homedir} - %{__ln_s} %{appdir} webapps - %{__ln_s} %{confdir} conf - %{__ln_s} %{libdir} lib - %{__ln_s} %{logdir} logs - %{__ln_s} %{tempdir} temp - %{__ln_s} %{workdir} work -popd - -# Install the maven metadata for the spec impl artifacts as other projects use them -#%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_mavenpomdir} -pushd res/maven - for pom in *.pom; do - # fix-up version in all pom files - sed -i 's/@MAVEN.DEPLOY.VERSION@/%{version}/g' $pom - done -popd - -# Configure and install maven artifacts -%mvn_artifact res/maven/tomcat-el-api.pom output/build/lib/el-api.jar -%mvn_artifact res/maven/tomcat-jsp-api.pom output/build/lib/jsp-api.jar -%mvn_artifact res/maven/tomcat-servlet-api.pom output/build/lib/servlet-api.jar - -%mvn_file org.apache.tomcat:tomcat-annotations-api tomcat/annotations-api -%mvn_artifact res/maven/tomcat-annotations-api.pom ${RPM_BUILD_ROOT}%{libdir}/annotations-api.jar -%mvn_artifact res/maven/tomcat-api.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-api.jar -%mvn_file org.apache.tomcat:tomcat-catalina-ant tomcat/catalina-ant -%mvn_artifact res/maven/tomcat-catalina-ant.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-ant.jar -%mvn_file org.apache.tomcat:tomcat-catalina-ha tomcat/catalina-ha -%mvn_artifact res/maven/tomcat-catalina-ha.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-ha.jar -%mvn_file org.apache.tomcat:tomcat-catalina tomcat/catalina -%mvn_artifact res/maven/tomcat-catalina.pom ${RPM_BUILD_ROOT}%{libdir}/catalina.jar -%mvn_artifact res/maven/tomcat-coyote.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-coyote.jar -%mvn_artifact res/maven/tomcat-dbcp.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-dbcp.jar -%mvn_artifact res/maven/tomcat-i18n-cs.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-cs.jar -%mvn_artifact res/maven/tomcat-i18n-de.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-de.jar -%mvn_artifact res/maven/tomcat-i18n-es.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-es.jar -%mvn_artifact res/maven/tomcat-i18n-fr.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-fr.jar -%mvn_artifact res/maven/tomcat-i18n-ja.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-ja.jar -%mvn_artifact res/maven/tomcat-i18n-ko.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-ko.jar -%mvn_artifact res/maven/tomcat-i18n-pt-BR.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-pt-BR.jar -%mvn_artifact res/maven/tomcat-i18n-ru.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-ru.jar -%mvn_artifact res/maven/tomcat-i18n-zh-CN.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-zh-CN.jar -%mvn_file org.apache.tomcat:tomcat-jasper-el tomcat/jasper-el -%mvn_artifact res/maven/tomcat-jasper-el.pom ${RPM_BUILD_ROOT}%{libdir}/jasper-el.jar -%mvn_file org.apache.tomcat:tomcat-jasper tomcat/jasper -%mvn_artifact res/maven/tomcat-jasper.pom ${RPM_BUILD_ROOT}%{libdir}/jasper.jar -%mvn_file org.apache.tomcat:tomcat-jaspic-api tomcat/jaspic-api -%mvn_artifact res/maven/tomcat-jaspic-api.pom ${RPM_BUILD_ROOT}%{libdir}/jaspic-api.jar -%mvn_artifact res/maven/tomcat-jdbc.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-jdbc.jar -%mvn_artifact res/maven/tomcat-jni.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-jni.jar -%mvn_artifact res/maven/tomcat-juli.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-juli.jar -%mvn_file org.apache.tomcat:tomcat-ssi tomcat/catalina-ssi -%mvn_artifact res/maven/tomcat-ssi.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-ssi.jar -%mvn_file org.apache.tomcat:tomcat-storeconfig tomcat/catalina-storeconfig -%mvn_artifact res/maven/tomcat-storeconfig.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-storeconfig.jar -%mvn_file org.apache.tomcat:tomcat-tribes tomcat/catalina-tribes -%mvn_artifact res/maven/tomcat-tribes.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-tribes.jar -%mvn_artifact res/maven/tomcat-util-scan.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-util-scan.jar -%mvn_artifact res/maven/tomcat-util.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-util.jar -%mvn_file org.apache.tomcat:tomcat-websocket-api tomcat/websocket-api -%mvn_artifact res/maven/tomcat-websocket-api.pom ${RPM_BUILD_ROOT}%{libdir}/websocket-api.jar -%mvn_artifact res/maven/tomcat-websocket.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-websocket.jar -%mvn_artifact res/maven/tomcat-websocket-client-api.pom ${RPM_BUILD_ROOT}%{libdir}/websocket-client-api.jar -%mvn_artifact res/maven/tomcat.pom - -%mvn_install +ln -sr %{confdir} ${RPM_BUILD_ROOT}%{baseconfdir} +ln -sr %{cachedir} ${RPM_BUILD_ROOT}%{workdir} +ln -sr %{logdir} ${RPM_BUILD_ROOT}%{baselogdir} install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf @@ -419,62 +338,44 @@ install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf %postun %systemd_postun_with_restart %{name}.service -%files -%defattr(0664,root,tomcat,0755) -%doc {LICENSE,NOTICE,RELEASE*} -%attr(0755,root,root) %{_bindir}/%{name}-digest -%attr(0755,root,root) %{_bindir}/%{name}-tool-wrapper -%attr(0755,root,root) %{_sbindir}/%{name} -%attr(0644,root,root) %{_unitdir}/%{name}.service -%attr(0644,root,root) %{_unitdir}/%{name}@.service -%attr(0755,root,root) %dir %{_libexecdir}/%{name} -%attr(0755,root,root) %dir %{_localstatedir}/lib/tomcats -%attr(0644,root,root) %{_libexecdir}/%{name}/functions -%attr(0755,root,root) %{_libexecdir}/%{name}/preamble -%attr(0755,root,root) %{_libexecdir}/%{name}/server -%attr(0644,root,root) %config(noreplace) %{_sysconfdir}/sysconfig/%{name} -%attr(0644,root,root) %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}.disabled -%attr(0755,root,tomcat) %dir %{basedir} -%attr(0755,root,tomcat) %dir %{confdir} - -%defattr(0664,tomcat,root,0770) -%attr(0770,tomcat,root) %dir %{logdir} - -%defattr(0664,root,tomcat,0770) -%attr(0770,root,tomcat) %dir %{cachedir} -%attr(0770,root,tomcat) %dir %{tempdir} -%attr(0770,root,tomcat) %dir %{workdir} - -%defattr(0644,root,tomcat,0775) -%attr(0775,root,tomcat) %dir %{appdir} -%attr(0775,root,tomcat) %dir %{confdir}/Catalina -%attr(0775,root,tomcat) %dir %{confdir}/Catalina/localhost -%attr(0755,root,tomcat) %dir %{confdir}/conf.d -%{confdir}/conf.d/README -%{confdir}/conf.d/module-start-up-parameters.conf -%config(noreplace) %{confdir}/%{name}.conf -%config(noreplace) %{confdir}/*.policy -%config(noreplace) %{confdir}/*.properties -%config(noreplace) %{confdir}/context.xml -%config(noreplace) %{confdir}/server.xml -%attr(0640,root,tomcat) %config(noreplace) %{confdir}/tomcat-users.xml -%attr(0664,root,tomcat) %{confdir}/tomcat-users.xsd -%attr(0664,root,tomcat) %config(noreplace) %{confdir}/jaspic-providers.xml -%attr(0664,root,tomcat) %{confdir}/jaspic-providers.xsd -%config(noreplace) %{confdir}/web.xml -%dir %{homedir} -%{bindir}/bootstrap.jar -%{bindir}/catalina-tasks.xml -%{homedir}/lib -%{homedir}/temp -%{homedir}/webapps -%{homedir}/work -%{homedir}/logs -%{homedir}/conf +%files +%doc {LICENSE,NOTICE,RELEASE-NOTES,RUNNING.txt} +%{_bindir}/%{name}-digest +%{_bindir}/%{name}-tool-wrapper +%{_sbindir}/%{name} +%{_unitdir}/%{name}.service +%{_unitdir}/%{name}@.service +%{_libexecdir}/%{name} +%{_localstatedir}/lib/tomcats +%config(noreplace) %{_sysconfdir}/sysconfig/%{name} +%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}.disabled %{_sysusersdir}/tomcat.conf +%{homedir} +%{baseconfdir} +%{baselogdir} +%{workdir} +%attr(2770,tomcat,adm) %dir %{logdir} +%attr(750,tomcat,tomcat) %dir %{cachedir} +%attr(0770,root,tomcat) %{tempdir} +%attr(2775,tomcat,tomcat) %dir %{appdir} + +%{confdir}/conf.d +%config(noreplace) %{confdir}/%{name}.conf +# Configuration files should not be modifiable by the tomcat user, as this can be +# a security issue (an attacker may insert code in a webapp and rewrite the tomcat +# configuration) but those files should be readable by tomcat, so we set the group to tomcat. +%attr(640,root,tomcat) %config(noreplace) %{confdir}/tomcat-users.xml +%attr(640,root,tomcat) %config(noreplace) %{confdir}/web.xml +%attr(640,root,tomcat) %config(noreplace) %{confdir}/server.xml +%attr(640,root,tomcat) %config(noreplace) %{confdir}/logging.properties +%attr(640,root,tomcat) %config(noreplace) %{confdir}/catalina.properties +%attr(640,root,tomcat) %config(noreplace) %{confdir}/context.xml +%attr(640,root,tomcat) %config(noreplace) %{confdir}/jaspic-providers.xml +%attr(640,root,tomcat) %config(noreplace) %{confdir}/catalina.policy +%attr(2775,root,tomcat) %dir %{confdir}/Catalina +%attr(2775,root,tomcat) %dir %{confdir}/Catalina/localhost %files admin-webapps -%defattr(0664,root,tomcat,0755) %{appdir}/host-manager %{appdir}/manager @@ -482,683 +383,22 @@ install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf %{appdir}/docs %files lib -f .mfiles -%dir %{libdir} -%{libdir}/*.jar -%{_javadir}/*.jar -%{bindir}/tomcat-juli.jar -%exclude %{libdir}/%{name}-el-%{elspec}-api.jar -%exclude %{libdir}/%{name}-servlet-%{servletspec}*.jar -%exclude %{libdir}/%{name}-jsp-%{jspspec}*.jar -%exclude %{_javadir}/%{name}-servlet-%{servletspec}*.jar -%exclude %{_javadir}/%{name}-el-%{elspec}-api.jar -%exclude %{_javadir}/%{name}-jsp-%{jspspec}*.jar -%exclude %{_javadir}/%{name}-servlet-api.jar -%exclude %{_javadir}/%{name}-el-api.jar -%exclude %{_javadir}/%{name}-jsp-api.jar -%exclude %{_jnidir}/* +%defattr(644, root, tomcat, 2775) +%{libdir}/jakartaee-migration-x.jar +%{libdir}/ecj-x.jar %files jsp-%{jspspec}-api -f .mfiles-tomcat-jsp-api -%{_javadir}/%{name}-jsp-%{jspspec}*.jar -%{libdir}/%{name}-jsp-%{jspspec}*.jar -%{_javadir}/%{name}-jsp-api.jar +%doc LICENSE %files servlet-%{servletspec}-api -f .mfiles-tomcat-servlet-api %doc LICENSE -%{_javadir}/%{name}-servlet-%{servletspec}*.jar -%{libdir}/%{name}-servlet-%{servletspec}*.jar -%{_javadir}/%{name}-servlet-api.jar %files el-%{elspec}-api -f .mfiles-tomcat-el-api %doc LICENSE -%{_javadir}/%{name}-el-%{elspec}-api.jar -%{libdir}/%{name}-el-%{elspec}-api.jar -%{_javadir}/%{name}-el-api.jar %files webapps %defattr(0644,tomcat,tomcat,0755) %{appdir}/ROOT %changelog -* Fri Jan 10 2025 Dimitris Soumis - 1:10.1.34-1 -- Update to version 10.1.34 - -* Mon Dec 09 2024 Packit - 1:9.0.98-1 -- Update to version 9.0.98 -- Resolves: rhbz#2331168 - -* Mon Dec 02 2024 Dimitris Soumis - 1:9.0.97-1 -- Update to version 9.0.97 -- Resolves: rhbz#2327090 - -* Tue Oct 08 2024 Packit - 1:9.0.96-1 -- Update to version 9.0.96 -- Resolves: rhbz#2317237 - -* Tue Sep 17 2024 Packit - 1:9.0.95-1 -- Update to version 9.0.95 -- Resolves: rhbz#2312858 - -* Tue Sep 10 2024 Packit - 1:9.0.94-1 -- Update to version 9.0.94 -- Resolves: rhbz#2311320 - -* Tue Aug 06 2024 Packit - 1:9.0.93-1 -- Update to version 9.0.93 -- Resolves: rhbz#2303026 - -* Wed Jul 24 2024 Miroslav Suchý - 1:9.0.91-1 -- convert license to SPDX - -* Thu Jul 11 2024 Dimitris Soumis - 1:9.0.91-1 -- Update to 9.0.91 - -* Thu Jun 20 2024 Dimitris Soumis - 1:9.0.90-1 -- Update to 9.0.90 - -* Fri Jun 7 2024 Dimitris Soumis - 1:9.0.89-1 -- Update to 9.0.89 - -* Thu Feb 29 2024 Adam Williamson - 1:9.0.83-4 -- Accept java-21-headless as one of the alternatives for java - -* Tue Feb 27 2024 Jiri Vanek - 1:9.0.83-3 -- Rebuilt for java-21-openjdk as system jdk - -* Sat Jan 27 2024 Fedora Release Engineering - 1:9.0.83-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Fri Dec 01 2023 Hui Wang - 1:9.0.83-1 -- Update to 9.0.83 - -* Mon Oct 16 2023 Hui Wang - 1:9.0.82-1 -- Update to 9.0.82 -- Resolves: rhbz#2244333 Wrong dbcp class in tomcat 9 - -* Wed Sep 13 2023 Hui Wang - 1:9.0.80-1 -- Update to 9.0.80 -- Fix java version - -* Fri Aug 04 2023 Hui Wang - 1:9.0.78-4 -- Fix files permission - -* Wed Jul 26 2023 Hui Wang - 1:9.0.78-3 -- Exclude jnidir in the lib subpackage - -* Tue Jul 25 2023 Hui Wang - 1:9.0.78-2 -- Resolves: rhbz#2224318 There are duplicated jars in the tomcat lib subpackage - -* Tue Jul 25 2023 Hui Wang - 1:9.0.78-1 -- Resolves: rhbz#2224318 There are duplicated jars in the tomcat lib-subpackage -- Update to 9.0.78 - -* Sat Jul 22 2023 Fedora Release Engineering - 1:9.0.76-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Tue Jun 20 2023 Hui Wang - 1:9.0.76-2 -- Resolves: rhbz#2189672 Missing Tomcat POM files in Fedora Rawhide -- Remove JDTCompiler patch because ecj has been update -- Update to 9.0.76 -- Resolves: rhbz#2188218 Link bin/tomcat-juli.jar to /usr/share/java -- Move tomcat-jsp-2.3-api.jar,tomcat-servlet-4.0-api.jar and tomcat-el-api.jar to the subpackages - -* Thu Jun 08 2023 Hui Wang - 1:9.0.75-1 -- Update to 9.0.75 - -* Fri Mar 17 2023 Hui Wang - 1:9.0.73-1 -- Update to 9.0.73 - -* Sun Jan 29 2023 Hui Wang - 1:9.0.71-1 -- Update to 9.0.71 -- Remove osgi-annotations patch -- Add bnd-annotation dependency which is in bndlib package - -* Sat Jan 21 2023 Fedora Release Engineering - 1:9.0.70-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Fri Jan 13 2023 Hui Wang - 1:9.0.70-1 -- Update to 9.0.70 - -* Thu Nov 03 2022 Hui Wang - 1:9.0.68-1 -- Update to 9.0.68 - -* Thu Jul 21 2022 Hui Wang - 1:9.0.65-1 -- Update to 9.0.65 - -* Fri Jul 08 2022 Jiri Vanek - 1:9.0.64-2 -- Rebuilt for Drop i686 JDKs - -* Tue Jun 21 2022 Hui Wang - 1:9.0.64-1 -- Update to 9.0.64 -- Add osgi-annotations dependency back - -* Thu Mar 10 2022 Coty Sutherland - 1:9.0.59-3 -- Related: rhbz#2061424 Adjust fix so that it uses the proper env var - -* Tue Mar 08 2022 Coty Sutherland - 1:9.0.59-2 -- Resolves: rhbz#2061424 Add Java 9 start-up parameters to allow reflection - -* Wed Mar 02 2022 Sonia Xu - 1:9.0.59-1 -- Update to 9.0.59 -- Resolves: rhbz#2047419 - CVE-2022-23181 tomcat: local privilege escalation vulnerability - -* Sat Feb 05 2022 Jiri Vanek - 1:9.0.56-3 -- Rebuilt for java-17-openjdk as system jdk - -* Sat Jan 22 2022 Fedora Release Engineering - 1:9.0.56-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Thu Dec 09 2021 Hui Wang - 1:9.0.56-1 -- Update to 9.0.56 - -* Tue Oct 12 2021 Hui Wang - 1:9.0.55-1 -- Update to 9.0.55 - -* Tue Oct 12 2021 Hui Wang - 1:9.0.54-1 -- Update to 9.0.54 - -* Thu Sep 16 2021 Hui Wang - 1:9.0.53-1 -- Update to 9.0.53 - -* Wed Aug 18 2021 Hui Wang - 1:9.0.52-1 -- Update to 9.0.52 - -* Fri Jul 23 2021 Fedora Release Engineering - 1:9.0.50-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Tue Jul 06 2021 Hui Wang - 1:9.0.50-1 -- Update to 9.0.50 - -* Sat Jun 05 2021 Coty Sutherland - 1:9.0.45-4 -- Add back logrotate config file per devel list request -- Add mvn virtual provides back for the servlet, el, and jsp spec impls - -* Fri Jun 04 2021 Coty Sutherland - 1:9.0.45-3 -- Drop geronimo-jaxrpc, which provided the webservices naming factory resources that are generally unused - -* Thu Jun 03 2021 Coty Sutherland - 1:9.0.45-2 -- Remove examples webapps from subpackage -- Updates to javapackages-local removed %%add_maven_depmap which broke the build, - so I removed the maven artifacts as they aren't very useful anyway -- Drop JSVC support as it's not very useful these days -- Drop geronimo-saaj as it's no longer required - -* Thu Apr 22 2021 Hui Wang - 1:9.0.45-1 -- Update to 9.0.45 - -* Thu Mar 18 2021 Hui Wang - 1:9.0.44-1 -- Update to 9.0.44 - -* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 1:9.0.43-2 -- Rebuilt for updated systemd-rpm-macros - See https://pagure.io/fesco/issue/2583. - -* Wed Feb 03 2021 Hui Wang - 1:9.0.43-1 -- Update to 9.0.43 - -* Wed Jan 27 2021 Fedora Release Engineering - 1:9.0.41-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Wed Dec 09 2020 Hui Wang - 1:9.0.41-1 -- Update to 9.0.41 - -* Wed Nov 18 2020 Hui Wang - 1:9.0.40-1 -- Update to 9.0.40 - -* Mon Oct 12 2020 Hui Wang - 1:9.0.39-1 -- Update to 9.0.39 - -* Wed Sep 16 2020 Hui Wang - 1:9.0.38-1 -- Update to 9.0.38 - -* Wed Jul 29 2020 Fedora Release Engineering - 1:9.0.37-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Fri Jul 24 2020 Coty Sutherland - 1:9.0.37-3 -- Related: rhbz#1857043 Temporarily remove OSGi metadata from tomcat jars - -* Mon Jul 20 2020 Coty Sutherland - 1:9.0.37-2 -- Resolves: rhbz#1857043 Add patch to reinclude o.a.t.util.net.jsse and o.a.t.util.moduler.modules in tomcat-coyote.jar - -* Mon Jul 13 2020 Coty Sutherland - 1:9.0.37-1 -- Update to 9.0.37 - -* Sat Jul 11 2020 Jiri Vanek - 1:9.0.36-2 -- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 - -* Wed Jun 10 2020 Hui Wang - 1:9.0.36-1 -- Upgrade to 9.0.36 - -* Sun May 31 2020 Hui Wang - 1:9.0.35-2 -- Upgrade to 9.0.35 - -* Wed Apr 22 2020 Coty Sutherland - 1:9.0.34-2 -- Add updated catalina.policy patch to allow ECJ usage under the Security Manager - -* Tue Apr 21 2020 Coty Sutherland - 1:9.0.34-1 -- Update to 9.0.34 - -* Thu Mar 05 2020 Coty Sutherland - 1:9.0.31-1 -- Update to 9.0.31 -- Resolves: rhbz#1806398 - CVE-2020-1938 tomcat: Apache Tomcat AJP File Read/Inclusion Vulnerability - -* Fri Jan 31 2020 Fedora Release Engineering - 1:9.0.30-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Fri Dec 20 2019 Coty Sutherland - 1:9.0.30-1 -- Update to 9.0.30 - -* Thu Sep 26 2019 Coty Sutherland - 1:9.0.26-2 -- Resolves: rhbz#1510522 man page uid and gid mismatch for service accounts - -* Thu Sep 26 2019 Coty Sutherland - 1:9.0.26-1 -- Update to 9.0.26 -- Resolves: rhbz#1523112 tomcat systemd does not cope with - in service names -- Resolves: rhbz#1510896 Problem to start tomcat with a user whose group has a name different to the user - -* Sat Jul 27 2019 Fedora Release Engineering - 1:9.0.21-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Wed Jul 17 2019 Coty Sutherland - 1:9.0.21-2 -- Update build-classpath calls to ECJ to specify the JAR we want to use - -* Tue Jun 18 2019 Coty Sutherland - 1:9.0.21-1 -- Update to 9.0.21 - -* Tue Apr 02 2019 Coty Sutherland - 1:9.0.13-4 -- Remove javadoc subpackage to drop the jpackage-utils dependency - -* Wed Feb 20 2019 Coty Sutherland - 1:9.0.13-3 -- Remove OSGi MANIFEST files, these are now included in the upstream Tomcat distribution (as of 9.0.10) -- Remove unused dependencies, apache-commons-collections, apache-commons-daemon, apache-commons-pool, junit - -* Sun Feb 03 2019 Fedora Release Engineering - 1:9.0.13-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Thu Dec 13 2018 Coty Sutherland - 1:9.0.13-1 -- Update to 9.0.13 -- Resolves: rhbz#1636513 - CVE-2018-11784 tomcat: Open redirect in default servlet - -* Sun Oct 14 2018 Peter Robinson 1:9.0.10-2 -- Drop legcy sys-v bits - -* Tue Jul 31 2018 Coty Sutherland - 1:9.0.10-1 -- Update to 9.0.10 -- Resolves: rhbz#1624929 - CVE-2018-1336 tomcat: A bug in the UTF-8 decoder can lead to DoS -- Resolves: rhbz#1579612 - CVE-2018-8014 tomcat: Insecure defaults in CORS filter enable 'supportsCredentials' for all origins -- Resolves: rhbz#1607586 - CVE-2018-8034 tomcat: host name verification missing in WebSocket client -- Resolves: rhbz#1607584 - CVE-2018-8037 tomcat: Due to a mishandling of close in NIO/NIO2 connectors user sessions can get mixed up - -* Sat Jul 14 2018 Fedora Release Engineering - 1:9.0.7-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Tue May 01 2018 Coty Sutherland - 1:9.0.7-1 -- Update to 9.0.7 - -* Thu Mar 15 2018 Coty Sutherland - 1:8.5.29-1 -- Update to 8.5.29 -- Resolves: rhbz#1548290 CVE-2018-1304 tomcat: Incorrect handling of empty string URL in security constraints can lead to unitended exposure of resources -- Resolves: rhbz#1548284 CVE-2018-1305 tomcat: Late application of security constraints can lead to resource exposure for unauthorised users - -* Fri Feb 09 2018 Igor Gnatenko - 1:8.0.49-2 -- Escape macros in %%changelog - -* Thu Feb 01 2018 Coty Sutherland - 1:8.0.49-1 -- Update to 8.0.49 - -* Tue Dec 12 2017 Merlin Mathesius - 1:8.0.47-3 -- Cleanup spec file conditionals - -* Tue Oct 24 2017 Troy Dawson - 1:8.0.47-2 -- Change "zip -u" to "zip" -- Resolves: rhbz#1495241 [tomcat] zip -u in spec file causes race condition - -* Wed Oct 04 2017 Coty Sutherland - 1:8.0.47-1 -- Update to 8.0.47 -- Resolves: rhbz#1497682 CVE-2017-12617 tomcat: Remote Code Execution bypass for CVE-2017-12615 - -* Mon Aug 21 2017 Coty Sutherland - 1:8.0.46-1 -- Update to 8.0.46 -- Resolves: rhbz#1480620 CVE-2017-7674 tomcat: Cache Poisoning - -* Thu Jul 27 2017 Fedora Release Engineering - 1:8.0.44-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Fri Jun 09 2017 Coty Sutherland - 1:8.0.44-1 -- Resolves: rhbz#1459160 CVE-2017-5664 tomcat: Security constrained bypass in error page mechanism - -* Tue Apr 11 2017 Coty Sutherland - 1:8.0.43-1 -- Update to 8.0.43 - -* Fri Mar 31 2017 Coty Sutherland - 1:8.0.42-1 -- Update to 8.0.42 - -* Thu Feb 16 2017 Coty Sutherland - 1:8.0.41-1 -- Update to 8.0.41 -- Resolves: rhbz#1403825 CVE-2016-8745 tomcat: information disclosure due to incorrect Processor sharing - -* Sat Feb 11 2017 Fedora Release Engineering - 1:8.0.39-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Tue Nov 29 2016 Coty Sutherland - 1:8.0.39-1 -- Update to 8.0.39 -- Resolves: rhbz#1397493 CVE-2016-6816 CVE-2016-6817 CVE-2016-8735 tomcat: various flaws - -* Tue Oct 25 2016 Coty Sutherland - 1:8.0.38-1 -- Update to 8.0.38 - -* Sun Oct 23 2016 Coty Sutherland - 1:8.0.37-3 -- Resolves: rhbz#1383216 CVE-2016-6325 tomcat: tomcat writable config files allow privilege escalation -- Resolves: rhbz#1382310 CVE-2016-5425 tomcat: Local privilege escalation via systemd-tmpfiles service - -* Tue Sep 13 2016 Coty Sutherland - 1:8.0.37-1 -- Rebase to 8.0.37 -- Resolves: rhbz#1375581 CVE-2016-5388 CGI sets environmental variable based on user supplied Proxy request header -- Resolves: rhbz#1370262 catalina.out is no longer in use in the main package, but still gets rotated - -* Thu Aug 11 2016 Coty Sutherland - 1:8.0.36-2 -- Related: rhbz#1349469 Correct typo in changelog entry - -* Mon Aug 08 2016 Coty Sutherland - 1:8.0.36-1 -- Resolves: rhbz#1349469 CVE-2016-3092 tomcat: Usage of vulnerable FileUpload package can result in denial of service (updates to 8.0.36) -- Resolves: rhbz#1364056 The command tomcat-digest doesn't work -- Resolves: rhbz#1363884 The tomcat-tool-wrapper script is broken -- Resolves: rhbz#1347864 The systemd service unit does not allow tomcat to shut down gracefully -- Resolves: rhbz#1347835 The security manager doesn't work correctly (JSPs cannot be compiled) -- Resolves: rhbz#1341853 rpm -V tomcat fails on /var/log/tomcat/catalina.out -- Resolves: rhbz#1341850 tomcat-jsvc.service has TOMCAT_USER value hard-coded -- Resolves: rhbz#1359737 Missing maven depmap for the following artifacts: org.apache.tomcat:tomcat-websocket, org.apache.tomcat:tomcat-websocket-api -- Resolves: asfbz#59960 Building javadocs with java8 fails - -* Wed Mar 2 2016 Ivan Afonichev - 1:8.0.32-4 -- Revert sysconfig migration changes, resolves: rhbz#1311771, rhbz#1311905 -- Add /etc/tomcat/conf.d/ with shell expansion support, resolves rhbz#1293636 - -* Sat Feb 27 2016 Ivan Afonichev - 1:8.0.32-3 -- Load sysconfig from tomcat.conf, resolves: rhbz#1311771, rhbz#1311905 -- Set default javax.sql.DataSource factory to apache commons one, resolves rhbz#1214381 - -* Sun Feb 21 2016 Ivan Afonichev - 1:8.0.32-2 -- Fix symlinks from $CATALINA_HOME/lib perspective, resolves: rhbz#1308685 - -* Thu Feb 11 2016 Ivan Afonichev - 1:8.0.32-1 -- Updated to 8.0.32 -- Remove log4j support. It has never been working actually. See rhbz#1236297 -- Move shipped config to /etc/sysconfig/tomcat. /etc/tomcat/tomcat.conf can now be used to override it with shell expansion, resolves rhbz#1293636 -- Recommend tomcat-native, resolves: rhbz#1243132 - -* Wed Feb 10 2016 Coty Sutherland 1:8.0.26-4 -- Resolves: rhbz#1286800 Failed to start component due to wrong allowLinking="true" in context.xml -- Program /bin/nologin does not exist (#1302718) - -* Fri Feb 05 2016 Fedora Release Engineering - 1:8.0.26-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Wed Nov 11 2015 Robert Scheck 1:8.0.26-2 -- CATALINA_OPTS are only read when SECURITY_MANAGER is true (#1147105) - -* Thu Aug 27 2015 Alexander Kurtakov 1:8.0.26-1 -- Update to 8.0.26. - -* Fri Jul 10 2015 Alexander Kurtakov 1:8.0.24-2 -- Update to 8.0.24. - -* Fri Jun 19 2015 Alexander Kurtakov 1:8.0.23-2 -- Drop javax.el:el-api alias. - -* Thu Jun 18 2015 Alexander Kurtakov 1:8.0.23-1 -- Update to 8.0.23. - -* Thu Jun 18 2015 Alexander Kurtakov 1:8.0.20-3 -- Drop jetty alias for servlet. - -* Tue Jun 09 2015 Michal Srb - 1:8.0.20-2 -- Fix metadata for org.apache.tomcat:{tomcat-jni,tomcat-util-scan} - -* Thu Mar 5 2015 Alexander Kurtakov 1:8.0.18-5 -- Rebuild against tomcat-taglibs-standard. - -* Wed Mar 4 2015 Alexander Kurtakov 1:8.0.18-4 -- Fix epoch bumped el_1_0_api that would override all other glassfish/jboss/etc. due to wrong epoch. -- Drop old provides. - -* Tue Mar 03 2015 Stephen Gallagher 1:8.0.18-3 -- Bump epoch to maintain upgrade path from Fedora 22 - -* Mon Feb 16 2015 Michal Srb - 0:8.0.18-2 -- Install POM files for org.apache.tomcat:{tomcat-jni,tomcat-util-scan} - -* Sun Feb 15 2015 Ivan Afonichev 0:8.0.18-1 -- Updated to 8.0.18 - -* Sat Sep 20 2014 Ivan Afonichev 0:8.0.12-1 -- Updated to 8.0.12 -- Substitute libnames in catalina-tasks.xml, resolves: rhbz#1126439 -- Use CATALINA_OPTS only on start, resolves: rhbz#1051194 - -* Mon Jun 16 2014 Michal Srb - 0:7.0.54-3 -- jsp-api requires el-api - -* Sun Jun 08 2014 Fedora Release Engineering - 0:7.0.54-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Thu Jun 5 2014 Alexander Kurtakov 0:7.0.54-1 -- Update to upstream 7.0.54 - fixes compile with Java 8. - -* Wed May 21 2014 Alexander Kurtakov 0:7.0.52-3 -- Drop servlet/el api provides to reduce user machines ending with both. - -* Sun Mar 30 2014 Ivan Afonichev 0:7.0.52-2 -- Don't provide maven javax.jsp:jsp-api and javax.servlet.jsp:javax.servlet.jsp-api resolves: rhbz#1076949 -- Move log4j support into subpackage, resolves: rhbz#1027716 - -* Wed Mar 26 2014 Ivan Afonichev 0:7.0.52-1 -- Updated to 7.0.52 -- Rewrite jsvc implementation, resolves: rhbz#1051743 -- Switch to java-headless R, resolves: rhbz#1068566 -- Create and own %%{_localstatedir}/lib/tomcats, resolves: rhbz#1026741 -- Add pom for tomcat-jdbc, resolves: rhbz#1011003 - -* Tue Jan 21 2014 Mikolaj Izdebski - 0:7.0.47-3 -- Fix installation of Maven metadata for tomcat-juli.jar -- Resolves: rhbz#1033664 - -* Wed Jan 15 2014 Stanislav Ochotnicky - 0:7.0.47-2 -- Rebuild for bug #1033664 - -* Sun Nov 03 2013 Ivan Afonichev 0:7.0.47-1 -- Updated to 7.0.47 -- Fix java.security.policy - -* Sun Aug 04 2013 Fedora Release Engineering - 0:7.0.42-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Fri Jul 12 2013 Ivan Afonichev 0:7.0.42-2 -- Remove jpackage-utils R - -* Thu Jul 11 2013 Dmitry Tikhonov 0:7.0.42-1 -- Updated to 7.0.42 - -* Tue Jun 11 2013 Paul Komkoff 0:7.0.40-3 -- Dropped systemv inits. Bye-bye. -- Updated the systemd wrappers to allow running multiple instances. - Added wrapper scripts to do that, ported the original non-named - service file to work with the same wrappers, updated - /usr/sbin/tomcat to call systemctl. - -* Sat May 11 2013 Ivan Afonichev 0:7.0.40-1 -- Updated to 7.0.40 -- Resolves: rhbz 956569 added missing commons-pool link -- Remove ant-nodeps BR - -* Mon Mar 4 2013 Mikolaj Izdebski - 0:7.0.37-2 -- Add depmaps for org.eclipse.jetty.orbit -- Resolves: rhbz#917626 - -* Wed Feb 20 2013 Ivan Afonichev 0:7.0.39-1 -- Updated to 7.0.39 - -* Wed Feb 20 2013 Ivan Afonichev 0:7.0.37-1 -- Updated to 7.0.37 - -* Mon Feb 4 2013 Ivan Afonichev 0:7.0.35-1 -- Updated to 7.0.35 -- systemd SuccessExitStatus=143 for proper stop exit code processing - -* Mon Dec 24 2012 Ivan Afonichev 0:7.0.34-1 -- Updated to 7.0.34 -- ecj >= 4.2.1 now required -- Resolves: rhbz 889395 concat classpath correctly; chdir to $CATALINA_HOME - -* Fri Dec 7 2012 Ivan Afonichev 0:7.0.33-2 -- Resolves: rhbz 883806 refix logdir ownership - -* Sun Dec 2 2012 Ivan Afonichev 0:7.0.33-1 -- Updated to 7.0.33 -- Resolves: rhbz 873620 need chkconfig for update-alternatives - -* Wed Oct 17 2012 Ivan Afonichev 0:7.0.32-1 -- Updated to 7.0.32 -- Resolves: rhbz 842620 symlinks to taglibs - -* Fri Aug 24 2012 Ivan Afonichev 0:7.0.29-1 -- Updated to 7.0.29 -- Add pidfile as tmpfile -- Use systemd for running as unprivileged user -- Resolves: rhbz 847751 upgrade path was broken -- Resolves: rhbz 850343 use new systemd-rpm macros - -* Sat Jul 21 2012 Fedora Release Engineering - 0:7.0.28-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Mon Jul 2 2012 Ivan Afonichev 0:7.0.28-1 -- Updated to 7.0.28 -- Resolves: rhbz 820119 Remove bundled apache-commons-dbcp -- Resolves: rhbz 814900 Added tomcat-coyote POM -- Resolves: rhbz 810775 Remove systemv stuff from %%post scriptlet -- Remove redhat-lsb R - -* Mon Apr 9 2012 Ivan Afonichev 0:7.0.27-2 -- Fixed native download hack - -* Sat Apr 7 2012 Ivan Afonichev 0:7.0.27-1 -- Updated to 7.0.27 -- Fixed jakarta-taglibs-standard BR and R - -* Wed Mar 21 2012 Stanislav Ochotnicky - 0:7.0.26-2 -- Add more depmaps to J2EE apis to help jetty/glassfish updates - -* Wed Mar 14 2012 Juan Hernandez 0:7.0.26-2 -- Added the POM files for tomcat-api and tomcat-util (#803495) - -* Wed Feb 22 2012 Ivan Afonichev 0:7.0.26-1 -- Updated to 7.0.26 -- Bug 790334: Change ownership of logdir for logrotate - -* Thu Feb 16 2012 Krzysztof Daniel 0:7.0.25-4 -- Bug 790694: Priorities of jsp, servlet and el packages updated. - -* Wed Feb 8 2012 Krzysztof Daniel 0:7.0.25-3 -- Dropped indirect dependecy to tomcat 5 - -* Sun Jan 22 2012 Ivan Afonichev 0:7.0.25-2 -- Added hack for maven depmap of tomcat-juli absolute link [ -f ] pass correctly - -* Sat Jan 21 2012 Ivan Afonichev 0:7.0.25-1 -- Updated to 7.0.25 -- Removed EntityResolver patch (changes already in upstream sources) -- Place poms and depmaps in the same package as jars -- Added javax.servlet.descriptor to export-package of servlet-api -- Move several chkconfig actions and reqs to systemv subpackage -- New maven depmaps generation method -- Add patch to support java7. (patch sent upstream). -- Require java >= 1:1.6.0 - -* Fri Jan 13 2012 Krzysztof Daniel 0:7.0.23-5 -- Exported javax.servlet.* packages in version 3.0 as 2.6 to make - servlet-api compatible with Eclipse. - -* Thu Jan 12 2012 Ivan Afonichev 0:7.0.23-4 -- Move jsvc support to subpackage - -* Wed Jan 11 2012 Alexander Kurtakov 0:7.0.23-2 -- Add EntityResolver setter patch to jasper for jetty's need. (patch sent upstream). - -* Mon Dec 12 2011 Joseph D. Wagner 0:7.0.23-3 -- Added support to /usr/sbin/tomcat-sysd and /usr/sbin/tomcat for - starting tomcat with jsvc, which allows tomcat to perform some - privileged operations (e.g. bind to a port < 1024) and then switch - identity to a non-privileged user. Must add USE_JSVC="true" to - /etc/tomcat/tomcat.conf or /etc/sysconfig/tomcat. - -* Mon Nov 28 2011 Ivan Afonichev 0:7.0.23-1 -- Updated to 7.0.23 - -* Fri Nov 11 2011 Ivan Afonichev 0:7.0.22-2 -- Move tomcat-juli.jar to lib package -- Drop %%update_maven_depmap as in tomcat6 -- Provide native systemd unit file ported from tomcat6 - -* Thu Oct 6 2011 Ivan Afonichev 0:7.0.22-1 -- Updated to 7.0.22 - -* Mon Oct 03 2011 Rex Dieter - 0:7.0.21-3.1 -- rebuild (java), rel-eng#4932 - -* Mon Sep 26 2011 Ivan Afonichev 0:7.0.21-3 -- Fix basedir mode - -* Tue Sep 20 2011 Roland Grunberg 0:7.0.21-2 -- Add manifests for el-api, jasper-el, jasper, tomcat, and tomcat-juli. - -* Thu Sep 8 2011 Ivan Afonichev 0:7.0.21-1 -- Updated to 7.0.21 - -* Mon Aug 15 2011 Ivan Afonichev 0:7.0.20-3 -- Require java = 1:1.6.0 - -* Mon Aug 15 2011 Ivan Afonichev 0:7.0.20-2 -- Require java < 1.7.0 - -* Mon Aug 15 2011 Ivan Afonichev 0:7.0.20-1 -- Updated to 7.0.20 - -* Tue Jul 26 2011 Ivan Afonichev 0:7.0.19-1 -- Updated to 7.0.19 - -* Tue Jun 21 2011 Ivan Afonichev 0:7.0.16-1 -- Updated to 7.0.16 - -* Mon Jun 6 2011 Ivan Afonichev 0:7.0.14-3 -- Added initial systemd service -- Fix some paths - -* Sat May 21 2011 Ivan Afonichev 0:7.0.14-2 -- Fixed http source link -- Securify some permissions -- Added licenses for el-api and servlet-api -- Added dependency on jpackage-utils for the javadoc subpackage - -* Sat May 14 2011 Ivan Afonichev 0:7.0.14-1 -- Updated to 7.0.14 - -* Thu May 5 2011 Ivan Afonichev 0:7.0.12-4 -- Provided local paths for libs -- Fixed dependencies -- Fixed update temp/work cleanup - -* Mon May 2 2011 Ivan Afonichev 0:7.0.12-3 -- Fixed package groups -- Fixed some permissions -- Fixed some links -- Removed old tomcat6 crap - -* Thu Apr 28 2011 Ivan Afonichev 0:7.0.12-2 -- Package now named just tomcat instead of tomcat7 -- Removed Provides: %%{name}-log4j -- Switched to apache-commons-* names instead of jakarta-commons-* . -- Remove the old changelog -- BR/R java >= 1:1.6.0 , same for java-devel -- Removed old tomcat6 crap - -* Wed Apr 27 2011 Ivan Afonichev 0:7.0.12-1 -- Tomcat7 +%autochangelog From 727c3d6f657ad7d523dbf99c662d7e1bbcacc36f Mon Sep 17 00:00:00 2001 From: dsoumis Date: Wed, 12 Feb 2025 14:08:33 +0200 Subject: [PATCH 061/124] Use ecj and jakartaee-migration jars from the installed system rather than distributing the jars in tomcat-lib package. --- tomcat.spec | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index b25b959..6b5787b 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -191,7 +191,7 @@ touch HACK -Dbnd-annotation.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ -Dversion="%{version}" \ -Dversion.build="%{micro_version}" \ - -Dmigration-lib.jar="$(build-classpath tomcat-jakartaee-migration/jakartaee-migration.jar)" \ + -Dmigration-lib.jar="$(build-classpath tomcat-jakartaee-migration/jakartaee-migration)" \ deploy # remove some jars that we'll replace with symlinks later @@ -310,15 +310,8 @@ popd %{__install} %{SOURCE11} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}@.service %{__install} %{SOURCE12} ${RPM_BUILD_ROOT}%{confdir}/conf.d/ -pushd output/build - %{_bindir}/build-jar-repository lib ecj 2>&1 - %{_bindir}/build-jar-repository lib tomcat-jakartaee-migration 2>&1 -popd - -pushd ${RPM_BUILD_ROOT}%{libdir} - %{__cp} $(build-classpath ecj/ecj) ecj-x.jar - %{__cp} $(build-classpath tomcat-jakartaee-migration/jakartaee-migration) jakartaee-migration-x.jar -popd +ln -sr $(build-classpath ecj/ecj) ${RPM_BUILD_ROOT}%{libdir}/ecj-x.jar +ln -sr $(build-classpath tomcat-jakartaee-migration/jakartaee-migration) ${RPM_BUILD_ROOT}%{libdir}/jakartaee-migration-x.jar ln -sr %{confdir} ${RPM_BUILD_ROOT}%{baseconfdir} ln -sr %{cachedir} ${RPM_BUILD_ROOT}%{workdir} From 2c9c3acaccc5eb73509a13d07e1115c005448592 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Thu, 13 Feb 2025 15:41:04 +0200 Subject: [PATCH 062/124] Remove javapackages test case rule from gating --- gating.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/gating.yaml b/gating.yaml index b81b8c4..e49f5a7 100644 --- a/gating.yaml +++ b/gating.yaml @@ -9,5 +9,4 @@ rules: - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional} - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis} - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional} - - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/javapackages.functional} - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/smoke.functional} From 0ca450977f6e29b85c371b7cc706b3d61decedd5 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 17 Feb 2025 15:28:21 +0200 Subject: [PATCH 063/124] - This commit introduces the major change of dropping the custom scripts and using the upstream scripts for tomcat deployment. - Fix links created by %mvn_file - Remove packaging of tempdir as /tmp is being used currently -Update the service and conf files --- module-start-up-parameters.conf | 8 -- tomcat-build.patch => tomcat-10.1-build.patch | 0 tomcat-10.1-digest.script | 45 --------- tomcat-10.1-locate-java.sh | 21 +++++ tomcat-10.1-start.sh | 18 ++++ tomcat-10.1-tool-wrapper.script | 45 --------- ...pp.patch => tomcat-10.1-users-webapp.patch | 0 tomcat-10.1.conf | 54 ++++------- tomcat-10.1.service | 35 +++++-- tomcat-10.1.sysconfig | 11 --- tomcat-10.1.wrapper | 24 ----- tomcat-functions | 21 ----- tomcat-named.service | 24 ----- tomcat-preamble | 52 ---------- tomcat-server | 25 ----- tomcat.spec | 94 +++++-------------- 16 files changed, 110 insertions(+), 367 deletions(-) delete mode 100644 module-start-up-parameters.conf rename tomcat-build.patch => tomcat-10.1-build.patch (100%) delete mode 100644 tomcat-10.1-digest.script create mode 100644 tomcat-10.1-locate-java.sh create mode 100644 tomcat-10.1-start.sh delete mode 100644 tomcat-10.1-tool-wrapper.script rename tomcat-10.1-tomcat-users-webapp.patch => tomcat-10.1-users-webapp.patch (100%) delete mode 100644 tomcat-10.1.sysconfig delete mode 100644 tomcat-10.1.wrapper delete mode 100644 tomcat-functions delete mode 100644 tomcat-named.service delete mode 100644 tomcat-preamble delete mode 100644 tomcat-server diff --git a/module-start-up-parameters.conf b/module-start-up-parameters.conf deleted file mode 100644 index 7f8652a..0000000 --- a/module-start-up-parameters.conf +++ /dev/null @@ -1,8 +0,0 @@ -# Add the module start-up parameters required by Tomcat -JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.lang=ALL-UNNAMED" -JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.io=ALL-UNNAMED" -JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.util=ALL-UNNAMED" -JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.util.concurrent=ALL-UNNAMED" -JAVA_OPTS="$JAVA_OPTS --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED" -export JAVA_OPTS - diff --git a/tomcat-build.patch b/tomcat-10.1-build.patch similarity index 100% rename from tomcat-build.patch rename to tomcat-10.1-build.patch diff --git a/tomcat-10.1-digest.script b/tomcat-10.1-digest.script deleted file mode 100644 index ce4aa0f..0000000 --- a/tomcat-10.1-digest.script +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/sh -# -# tomcat-digest script -# JPackage Project - -# Source functions library -if [ -f /usr/share/java-utils/java-functions ] ; then - . /usr/share/java-utils/java-functions -else - echo "Can't find functions library, aborting" - exit 1 -fi - -# Get the tomcat config (use this for environment specific settings) -if [ -z "${TOMCAT_CFG}" ]; then - TOMCAT_CFG="/etc/tomcat/tomcat.conf" -fi - -if [ -r "$TOMCAT_CFG" ]; then - . $TOMCAT_CFG -fi - -set_javacmd - -# CLASSPATH munging -if [ -n "$JSSE_HOME" ]; then - CLASSPATH="${CLASSPATH}:$(build-classpath jcert jnet jsse 2>/dev/null)" -fi -CLASSPATH="${CLASSPATH}:${CATALINA_HOME}/bin/bootstrap.jar" -CLASSPATH="${CLASSPATH}:${CATALINA_HOME}/bin/tomcat-juli.jar" -export CLASSPATH - -# Configuration -MAIN_CLASS="org.apache.catalina.startup.Tool" -BASE_FLAGS="-Dcatalina.home=\"$CATALINA_HOME\"" -BASE_OPTIONS="" -BASE_JARS="commons-daemon tomcat/catalina servlet tomcat/tomcat-util tomcat/tomcat-coyote tomcat/tomcat-api tomcat/tomcat-util-scan" - -# Set parameters -set_classpath $BASE_JARS -set_flags $BASE_FLAGS -set_options $BASE_OPTIONS - -# Let's start -run -server org.apache.catalina.realm.RealmBase "$@" diff --git a/tomcat-10.1-locate-java.sh b/tomcat-10.1-locate-java.sh new file mode 100644 index 0000000..cb272e7 --- /dev/null +++ b/tomcat-10.1-locate-java.sh @@ -0,0 +1,21 @@ +#!/bin/sh +# Script looking for a Java runtime suitable for running Tomcat. +#The Java runtime found is exported in the JAVA_HOME environment variable. +set -e +if [ -z "$JAVA_HOME" ]; then + INSTALLATION_PATH="/usr/lib/jvm/" + for jvmdir in "${INSTALLATION_PATH}"java* "${INSTALLATION_PATH}"jre*; do + if [ -d "${jvmdir}" ] && [ -r "${jvmdir}/bin/java" ]; then + MAJOR_JAVA_VERSION=$("${jvmdir}/bin/java" --version | head -n 1 | sed -E 's/^[^0-9]*1\.([0-9]+).*/\1/; t; s/^[^0-9]*([0-9]+)\..*/\1/') + # Tomcat 10 requires Java >= 11 + if [ "${MAJOR_JAVA_VERSION}" -ge 11 ]; then + export JAVA_HOME="${jvmdir}" + exit 0 + fi + fi + done +fi +if [ -z "$JAVA_HOME" ]; then + echo "No JDK or JRE found - Please set the JAVA_HOME variable." + exit 1 +fi diff --git a/tomcat-10.1-start.sh b/tomcat-10.1-start.sh new file mode 100644 index 0000000..d682610 --- /dev/null +++ b/tomcat-10.1-start.sh @@ -0,0 +1,18 @@ +#!/bin/sh +# Startup script for Apache Tomcat with systemd + +set -e + +# Load the service settings +. /etc/tomcat/tomcat.conf + +# Try to find Java installation and set JAVA_HOME +/bin/sh /usr/libexec/tomcat/tomcat-locate-java.sh + +# Enable the Java security manager? +SECURITY="" +[ "$SECURITY_MANAGER" = "true" ] && SECURITY="-security" + + +# Start Tomcat +cd "$CATALINA_BASE" && "$CATALINA_HOME"/bin/catalina.sh run $SECURITY \ No newline at end of file diff --git a/tomcat-10.1-tool-wrapper.script b/tomcat-10.1-tool-wrapper.script deleted file mode 100644 index 949d46d..0000000 --- a/tomcat-10.1-tool-wrapper.script +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/sh -# -# tomcat-digest script -# JPackage Project - -# Source functions library -if [ -f /usr/share/java-utils/java-functions ] ; then - . /usr/share/java-utils/java-functions -else - echo "Can't find functions library, aborting" - exit 1 -fi - -# Get the tomcat config (use this for environment specific settings) -if [ -z "${TOMCAT_CFG}" ]; then - TOMCAT_CFG="/etc/tomcat/tomcat.conf" -fi - -if [ -r "$TOMCAT_CFG" ]; then - . $TOMCAT_CFG -fi - -set_javacmd - -# CLASSPATH munging -if [ -n "$JSSE_HOME" ]; then - CLASSPATH="${CLASSPATH}:$(build-classpath jcert jnet jsse 2>/dev/null)" -fi -CLASSPATH="${CLASSPATH}:${CATALINA_HOME}/bin/bootstrap.jar" -CLASSPATH="${CLASSPATH}:${CATALINA_HOME}/bin/tomcat-juli.jar" -export CLASSPATH - -# Configuration -MAIN_CLASS="org.apache.catalina.startup.Tool" -BASE_OPTIONS="" -BASE_FLAGS="-Dcatalina.home=\"$CATALINA_HOME\"" -BASE_JARS="commons-daemon tomcat/catalina servlet tomcat/tomcat-util tomcat/tomcat-coyote tomcat/tomcat-api tomcat/tomcat-util-scan" - -# Set parameters -set_classpath $BASE_JARS -set_flags $BASE_FLAGS -set_options $BASE_OPTIONS - -# Let's start -run "$@" diff --git a/tomcat-10.1-tomcat-users-webapp.patch b/tomcat-10.1-users-webapp.patch similarity index 100% rename from tomcat-10.1-tomcat-users-webapp.patch rename to tomcat-10.1-users-webapp.patch diff --git a/tomcat-10.1.conf b/tomcat-10.1.conf index c83305a..a698426 100644 --- a/tomcat-10.1.conf +++ b/tomcat-10.1.conf @@ -1,42 +1,24 @@ -# System-wide configuration file for tomcat services -# This will be loaded by systemd as an environment file, -# so please keep the syntax. For shell expansion support -# place your custom files as /etc/tomcat/conf.d/*.conf -# -# There are 2 "classes" of startup behavior in this package. -# The old one, the default service named tomcat.service. -# The new named instances are called tomcat@instance.service. -# -# Use this file to change default values for all services. -# Change the service specific ones to affect only one service. -# For tomcat.service it's /etc/sysconfig/tomcat, for -# tomcat@instance it's /etc/sysconfig/tomcat@instance. +# Minimum required Java version is 11. +#export JAVA_HOME=/usr/lib/jvm/java-11 -# This variable is used to figure out if config is loaded or not. -TOMCAT_CFG_LOADED="1" +# Include here and not in JAVA_OPTS all options, that should only be used by Tomcat itself. +# Examples are heap size, GC logging, JMX ports etc. +#export CATALINA_OPTS="-Dcatalina.http.port=8082" -# In new-style instances, if CATALINA_BASE isn't specified, it will -# be constructed by joining TOMCATS_BASE and NAME. -TOMCATS_BASE="/var/lib/tomcats/" +# Java runtime options used when any command is executed. +#export JAVA_OPTS="-Xmx512m -Xms256m" -# Where your java installation lives -JAVA_HOME="/usr/lib/jvm/jre" +# To enable remote debugging uncomment the following line. +# You will then be able to use a Java debugger on port 8000. +#export JAVA_OPTS="${JAVA_OPTS} -agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n" -# Where your tomcat installation lives -CATALINA_HOME="@@@TCHOME@@@" +# Java compiler to use for translating JavaServer Pages (JSPs). You can use all +# compilers that are accepted by Ant's build.compiler property. +#export JSP_COMPILER=javac +#export JAVA_OPTS="$JAVA_OPTS -Dbuild.compiler=$JSP_COMPILER" -# System-wide tmp -CATALINA_TMPDIR="/var/cache/tomcat/temp" +# Enable the Java security manager? (true/false, default: false) +#export SECURITY_MANAGER=true -# You can change your tomcat locale here -#LANG="en_US" - -# Run tomcat under the Java Security Manager -SECURITY_MANAGER="false" - -# If you wish to further customize your tomcat environment, -# put your own definitions here -# (i.e. LD_LIBRARY_PATH for some jdbc drivers) - -# You can also pass parameters to Java here by defining JAVA_OPTS variable -# (e.g. JAVA_OPTS="-Xminf0.1 -Xmaxf0.3") +# Whether to compress logfiles older than today's +#export LOGFILE_COMPRESS=1 \ No newline at end of file diff --git a/tomcat-10.1.service b/tomcat-10.1.service index 832e7c6..55639b2 100644 --- a/tomcat-10.1.service +++ b/tomcat-10.1.service @@ -1,20 +1,39 @@ -# Systemd unit file for default tomcat -# -# To create clones of this service: -# DO NOTHING, use tomcat@.service instead. +# Systemd unit file for for Apache Tomcat [Unit] Description=Apache Tomcat Web Application Container +Documentation=https://tomcat.apache.org/tomcat-10.1-doc/index.html After=syslog.target network.target +RequiresMountsFor=/var/log/tomcat /var/lib/tomcat [Service] +# Configuration +Environment="CATALINA_HOME=/usr/share/tomcat" +Environment="CATALINA_BASE=/var/lib/tomcat" +Environment="CATALINA_TMPDIR=/tmp" +Environment="JAVA_OPTS=-Djava.awt.headless=true" + +# Lifecycle Type=simple -EnvironmentFile=/etc/tomcat/tomcat.conf -Environment="NAME=" -EnvironmentFile=-/etc/sysconfig/tomcat -ExecStart=/usr/libexec/tomcat/server start +ExecStart=/bin/sh /usr/libexec/tomcat/tomcat-start.sh SuccessExitStatus=143 +Restart=on-abort + +# Logging +SyslogIdentifier=tomcat + +# Security User=tomcat +Group=tomcat +PrivateTmp=yes +AmbientCapabilities=CAP_NET_BIND_SERVICE +NoNewPrivileges=true +CacheDirectory=tomcat +CacheDirectoryMode=750 +ProtectSystem=strict +ReadWritePaths=/etc/tomcat/Catalina/ +ReadWritePaths=/var/lib/tomcat/webapps/ +ReadWritePaths=/var/log/tomcat/ [Install] WantedBy=multi-user.target diff --git a/tomcat-10.1.sysconfig b/tomcat-10.1.sysconfig deleted file mode 100644 index 3117bf7..0000000 --- a/tomcat-10.1.sysconfig +++ /dev/null @@ -1,11 +0,0 @@ -# Service-specific configuration file for tomcat. This will be sourced by -# systemd for the default service (tomcat.service) -# If you want to customize named instance, make a similar file -# and name it tomcat@instancename. - -# You will not need to set this, usually. For default service it equals -# CATALINA_HOME. For named service, it equals ${TOMCATS_BASE}${NAME} -#CATALINA_BASE="@@@TCHOME@@@" - -# Please take a look at /etc/tomcat/tomcat.conf to have an idea what you -# can override. diff --git a/tomcat-10.1.wrapper b/tomcat-10.1.wrapper deleted file mode 100644 index c97cb85..0000000 --- a/tomcat-10.1.wrapper +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash - -if [ "$1" = "version" ]; then - . /usr/libexec/tomcat/preamble - exec ${JAVACMD} -classpath ${CATALINA_HOME}/lib/catalina.jar \ - org.apache.catalina.util.ServerInfo -fi - -SRV="tomcat" -if [ -n "$2" ]; then - SRV="tomcat@$2" -fi - -if [ "$1" = "start" ]; then - systemctl start ${SRV}.service -elif [ "$1" = "stop" ]; then - systemctl stop ${SRV}.service -elif [ "$1" = "version" ]; then - ${JAVACMD} -classpath ${CATALINA_HOME}/lib/catalina.jar \ - org.apache.catalina.util.ServerInfo -else - echo "Usage: $0 {start|stop|version} [server-id]" - exit 1 -fi diff --git a/tomcat-functions b/tomcat-functions deleted file mode 100644 index 1187653..0000000 --- a/tomcat-functions +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash - -if [ -r /usr/share/java-utils/java-functions ]; then - . /usr/share/java-utils/java-functions -else - echo "Can't read Java functions library, aborting" - exit 1 -fi - -_save_function() { - local ORIG_FUNC=$(declare -f $1) - local NEWNAME_FUNC="$2${ORIG_FUNC#$1}" - eval "$NEWNAME_FUNC" -} - -_save_function run run_java - -run() { - run_java $@ -} - diff --git a/tomcat-named.service b/tomcat-named.service deleted file mode 100644 index b6cd8bd..0000000 --- a/tomcat-named.service +++ /dev/null @@ -1,24 +0,0 @@ -# Systemd unit file for tomcat instances. -# -# To create clones of this service: -# 0. systemctl enable tomcat@name.service -# 1. create catalina.base directory structure in -# /var/lib/tomcats/name -# 2. profit. - -[Unit] -Description=Apache Tomcat Web Application Container -After=syslog.target network.target - -[Service] -Type=simple -EnvironmentFile=/etc/tomcat/tomcat.conf -Environment="NAME=%i" -EnvironmentFile=-/etc/sysconfig/tomcat@%i -ExecStart=/usr/libexec/tomcat/server start -ExecStop=/usr/libexec/tomcat/server stop -SuccessExitStatus=143 -User=tomcat - -[Install] -WantedBy=multi-user.target diff --git a/tomcat-preamble b/tomcat-preamble deleted file mode 100644 index 1271dca..0000000 --- a/tomcat-preamble +++ /dev/null @@ -1,52 +0,0 @@ -#!/bin/bash - -. /usr/libexec/tomcat/functions - -# Get the tomcat config (use this for environment specific settings) - -if [ -z "${TOMCAT_CFG_LOADED}" ]; then - if [ -z "${TOMCAT_CFG}" ]; then - TOMCAT_CFG="/etc/tomcat/tomcat.conf" - fi - . $TOMCAT_CFG -fi - -if [ -d "${TOMCAT_CONFD=/etc/tomcat/conf.d}" ]; then - for file in ${TOMCAT_CONFD}/*.conf ; do - if [ -f "$file" ] ; then - . "$file" - fi - done -fi - -if [ -z "$CATALINA_BASE" ]; then - if [ -n "$NAME" ]; then - if [ -z "$TOMCATS_BASE" ]; then - TOMCATS_BASE="/var/lib/tomcats/" - fi - CATALINA_BASE="${TOMCATS_BASE}${NAME}" - else - CATALINA_BASE="${CATALINA_HOME}" - fi -fi -VERBOSE=1 -set_javacmd -cd ${CATALINA_HOME} -# CLASSPATH munging -if [ ! -z "$CLASSPATH" ] ; then - CLASSPATH="$CLASSPATH": -fi - -if [ -n "$JSSE_HOME" ]; then - CLASSPATH="${CLASSPATH}$(build-classpath jcert jnet jsse 2>/dev/null):" -fi -CLASSPATH="${CLASSPATH}${CATALINA_HOME}/bin/bootstrap.jar" -CLASSPATH="${CLASSPATH}:${CATALINA_HOME}/bin/tomcat-juli.jar" -CLASSPATH="${CLASSPATH}:$(build-classpath commons-daemon 2>/dev/null)" - -if [ -z "$LOGGING_PROPERTIES" ] ; then - LOGGING_PROPERTIES="${CATALINA_BASE}/conf/logging.properties" - if [ ! -f "${LOGGING_PROPERTIES}" ] ; then - LOGGING_PROPERTIES="${CATALINA_HOME}/conf/logging.properties" - fi -fi diff --git a/tomcat-server b/tomcat-server deleted file mode 100644 index 17ae385..0000000 --- a/tomcat-server +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash - -. /usr/libexec/tomcat/preamble - -MAIN_CLASS=org.apache.catalina.startup.Bootstrap - -FLAGS="$JAVA_OPTS" -OPTIONS="-Dcatalina.base=$CATALINA_BASE \ --Dcatalina.home=$CATALINA_HOME \ --Djava.endorsed.dirs=$JAVA_ENDORSED_DIRS \ --Djava.io.tmpdir=$CATALINA_TMPDIR \ --Djava.util.logging.config.file=${LOGGING_PROPERTIES} \ --Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager" - -if [ "$1" = "start" ] ; then - FLAGS="${FLAGS} $CATALINA_OPTS" - if [ "${SECURITY_MANAGER}" = "true" ] ; then - OPTIONS="${OPTIONS} \ - -Djava.security.manager \ - -Djava.security.policy==${CATALINA_BASE}/conf/catalina.policy" - fi - run start -elif [ "$1" = "stop" ] ; then - run stop -fi diff --git a/tomcat.spec b/tomcat.spec index 6b5787b..e39e9e4 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -20,7 +20,6 @@ %global libdir %{_javadir}/%{name} %global logdir %{_var}/log/%{name} %global cachedir %{_var}/cache/%{name} -%global tempdir %{cachedir}/temp %global workdir %{basedir}/work Name: tomcat @@ -34,22 +33,15 @@ License: Apache-2.0 URL: http://tomcat.apache.org/ Source0: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz Source1: %{name}-%{major_version}.%{minor_version}.conf -Source2: %{name}-%{major_version}.%{minor_version}.sysconfig -Source3: %{name}-%{major_version}.%{minor_version}.wrapper -Source4: %{name}-%{major_version}.%{minor_version}.logrotate -Source5: %{name}-%{major_version}.%{minor_version}-digest.script -Source6: %{name}-%{major_version}.%{minor_version}-tool-wrapper.script -Source7: %{name}-%{major_version}.%{minor_version}.service -Source8: %{name}-functions -Source9: %{name}-preamble -Source10: %{name}-server -Source11: %{name}-named.service -Source12: module-start-up-parameters.conf +Source2: %{name}-%{major_version}.%{minor_version}.logrotate +Source3: %{name}-%{major_version}.%{minor_version}.service +Source4: %{name}-%{major_version}.%{minor_version}-locate-java.sh +Source5: %{name}-%{major_version}.%{minor_version}-start.sh # https://bugzilla.redhat.com/show_bug.cgi?id=435829 Patch0: %{name}-%{major_version}.%{minor_version}-bootstrap-MANIFEST.MF.patch -Patch1: %{name}-%{major_version}.%{minor_version}-tomcat-users-webapp.patch -Patch2: %{name}-build.patch +Patch1: %{name}-%{major_version}.%{minor_version}-users-webapp.patch +Patch2: %{name}-%{major_version}.%{minor_version}-build.patch # catalina.policy patch to allow ECJ usage under the Security Manager Patch3: %{name}-%{major_version}.%{minor_version}-catalina-policy.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1857043 @@ -60,7 +52,9 @@ Patch5: %{name}-%{major_version}.%{minor_version}-JDTCompiler.patch Patch6: rhbz-1857043.patch BuildArch: noarch -ExclusiveArch: %{java_arches} noarch +# Can't use noarch since we are packaging tomcat-jni.jar. +# See: https://docs.fedoraproject.org/en-US/packaging-guidelines/Java/#_architecture_support +ExclusiveArch: %{java_arches} BuildRequires: ant BuildRequires: ecj @@ -69,9 +63,9 @@ BuildRequires: java-devel BuildRequires: javapackages-local BuildRequires: aqute-bnd BuildRequires: tomcat-jakartaee-migration +BuildRequires: systemd Requires: (java-headless >= 11 or java >= 11) -Requires: javapackages-tools Requires: %{name}-lib = %{epoch}:%{version}-%{release} Recommends: tomcat-native >= %{native_version} Requires: systemd @@ -118,7 +112,6 @@ Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} Requires: ecj >= 4.20 Recommends: tomcat-jakartaee-migration -Requires(preun): coreutils %description lib Libraries needed to run the Tomcat Web container. @@ -202,10 +195,8 @@ touch HACK %install # build initial path structure -%{__install} -d ${RPM_BUILD_ROOT}%{_bindir} -%{__install} -d ${RPM_BUILD_ROOT}%{_sbindir} +# %{__install} -d ${RPM_BUILD_ROOT}%{_bindir} %{__install} -d ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d -%{__install} -d ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig %{__install} -d ${RPM_BUILD_ROOT}%{appdir} %{__install} -d ${RPM_BUILD_ROOT}%{bindir} %{__install} -d ${RPM_BUILD_ROOT}%{confdir} @@ -214,12 +205,19 @@ touch HACK /bin/echo "Place your custom *.conf files here. Shell expansion is supported." > ${RPM_BUILD_ROOT}%{confdir}/conf.d/README %{__install} -d ${RPM_BUILD_ROOT}%{libdir} %{__install} -d ${RPM_BUILD_ROOT}%{logdir} -%{__install} -d ${RPM_BUILD_ROOT}%{_localstatedir}/lib/tomcats %{__install} -d ${RPM_BUILD_ROOT}%{homedir} -%{__install} -d ${RPM_BUILD_ROOT}%{tempdir} +%{__install} -d ${RPM_BUILD_ROOT}%{cachedir} %{__install} -d ${RPM_BUILD_ROOT}%{_unitdir} %{__install} -d ${RPM_BUILD_ROOT}%{_libexecdir}/%{name} +%{__install} %{SOURCE1} ${RPM_BUILD_ROOT}%{confdir}/%{name}.conf +%{__sed} -e "s|\@\@\@TCLOG\@\@\@|%{logdir}|g" %{SOURCE2} > ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{name}.disabled +%{__install} %{SOURCE3} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service +%{__install} %{SOURCE4} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-locate-java.sh +%{__install} %{SOURCE5} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-start.sh + +%{__install} -D tomcat.sysusers.conf ${RPM_BUILD_ROOT}%{_sysusersdir}/tomcat.conf + for jar in output/build/lib/*.jar; do # Skip Jar if empty, applies to tomcat-coyote-ffm.jar atm jar tf ${jar} | grep -E -q '.*\.class' || continue @@ -237,7 +235,7 @@ for jar in output/build/lib/*.jar; do sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" ${pom} case "${jarname}" in - tomcat-jni) %mvn_file org.apache.tomcat:tomcat-jni tomcat/tomcat-jni ${RPM_BUILD_ROOT}%{libdir}/tomcat-jni ;; + tomcat-jni) %mvn_file org.apache.tomcat:tomcat-jni tomcat/tomcat-jni %{libdir}/tomcat-jni ;; jsp-api) %mvn_file org.apache.tomcat:tomcat-jsp-api tomcat/jsp-api tomcat/%{name}-jsp-%{jspspec}-api %{name}-jsp-%{jspspec}-api %{name}-jsp-api ;; servlet-api) %mvn_file org.apache.tomcat:tomcat-servlet-api tomcat/servlet-api tomcat/%{name}-servlet-%{servletspec}-api %{name}-servlet-%{servletspec}-api %{name}-servlet-api ;; el-api) %mvn_file org.apache.tomcat:tomcat-el-api tomcat/el-api tomcat/%{name}-el-%{servletspec}-api %{name}-el-%{servletspec}-api %{name}-el-api ;; @@ -255,9 +253,8 @@ sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat-juli.pom # bootstrap does not have a pom, generate one %mvn_artifact 'org.apache.tomcat:tomcat-bootstrap:%{version}' output/build/bin/bootstrap.jar -#Create symlinks to bindir -%mvn_file :tomcat-bootstrap tomcat/tomcat-bootstrap ${RPM_BUILD_ROOT}%{bindir}/bootstrap.jar -%mvn_file :tomcat-juli tomcat/tomcat-juli ${RPM_BUILD_ROOT}%{bindir}/tomcat-juli.jar +%mvn_file org.apache.tomcat:tomcat-bootstrap tomcat/tomcat-bootstrap +%mvn_file org.apache.tomcat:tomcat-juli tomcat/tomcat-juli # tomcat-parent pom sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat.pom @@ -276,56 +273,24 @@ jar ufm ${RPM_BUILD_ROOT}%{libdir}/servlet-api.jar <(echo "JavaPackages-GroupId: # move things into place pushd output/build - %{__cp} -a bin/*.xml ${RPM_BUILD_ROOT}%{bindir} + %{__cp} -a bin/* ${RPM_BUILD_ROOT}%{bindir} %{__cp} -a conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{confdir} %{__cp} -a webapps/* ${RPM_BUILD_ROOT}%{appdir} popd -%{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ - -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE1} \ - > ${RPM_BUILD_ROOT}%{confdir}/%{name}.conf -%{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ - -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE2} \ - > ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/%{name} -%{__install} %{SOURCE3} \ - ${RPM_BUILD_ROOT}%{_sbindir}/%{name} -%{__install} %{SOURCE7} \ - ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service -%{__sed} -e "s|\@\@\@TCLOG\@\@\@|%{logdir}|g" %{SOURCE4} \ - > ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{name}.disabled -%{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ - -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE5} \ - > ${RPM_BUILD_ROOT}%{_bindir}/%{name}-digest -%{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ - -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ - -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE6} \ - > ${RPM_BUILD_ROOT}%{_bindir}/%{name}-tool-wrapper - -%{__install} %{SOURCE8} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/functions -%{__install} %{SOURCE9} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/preamble -%{__install} %{SOURCE10} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/server -%{__install} %{SOURCE11} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}@.service -%{__install} %{SOURCE12} ${RPM_BUILD_ROOT}%{confdir}/conf.d/ - ln -sr $(build-classpath ecj/ecj) ${RPM_BUILD_ROOT}%{libdir}/ecj-x.jar ln -sr $(build-classpath tomcat-jakartaee-migration/jakartaee-migration) ${RPM_BUILD_ROOT}%{libdir}/jakartaee-migration-x.jar ln -sr %{confdir} ${RPM_BUILD_ROOT}%{baseconfdir} ln -sr %{cachedir} ${RPM_BUILD_ROOT}%{workdir} ln -sr %{logdir} ${RPM_BUILD_ROOT}%{baselogdir} - -install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf +ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %post # install but don't activate %systemd_post %{name}.service %preun -# clean tempdir and workdir on removal or upgrade -%{__rm} -rf %{workdir}/* %{tempdir}/* %systemd_preun %{name}.service %postun @@ -333,14 +298,8 @@ install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf %files %doc {LICENSE,NOTICE,RELEASE-NOTES,RUNNING.txt} -%{_bindir}/%{name}-digest -%{_bindir}/%{name}-tool-wrapper -%{_sbindir}/%{name} %{_unitdir}/%{name}.service -%{_unitdir}/%{name}@.service %{_libexecdir}/%{name} -%{_localstatedir}/lib/tomcats -%config(noreplace) %{_sysconfdir}/sysconfig/%{name} %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}.disabled %{_sysusersdir}/tomcat.conf %{homedir} @@ -349,7 +308,6 @@ install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf %{workdir} %attr(2770,tomcat,adm) %dir %{logdir} %attr(750,tomcat,tomcat) %dir %{cachedir} -%attr(0770,root,tomcat) %{tempdir} %attr(2775,tomcat,tomcat) %dir %{appdir} %{confdir}/conf.d @@ -376,9 +334,9 @@ install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf %{appdir}/docs %files lib -f .mfiles -%defattr(644, root, tomcat, 2775) %{libdir}/jakartaee-migration-x.jar %{libdir}/ecj-x.jar +%exclude %{libdir}/tomcat-jni.pom %files jsp-%{jspspec}-api -f .mfiles-tomcat-jsp-api %doc LICENSE From da88992d305c75f9c407eeedbd28be0ef038237d Mon Sep 17 00:00:00 2001 From: dsoumis Date: Wed, 19 Feb 2025 13:47:07 +0200 Subject: [PATCH 064/124] Introduce tomcat-common subpackage --- tomcat.spec | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index e39e9e4..7ad4bc5 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -65,8 +65,7 @@ BuildRequires: aqute-bnd BuildRequires: tomcat-jakartaee-migration BuildRequires: systemd -Requires: (java-headless >= 11 or java >= 11) -Requires: %{name}-lib = %{epoch}:%{version}-%{release} +Requires: %{name}-common = %{epoch}:%{version}-%{release} Recommends: tomcat-native >= %{native_version} Requires: systemd @@ -105,6 +104,14 @@ Conflicts: tomcat-jsp-2.3-api %description jsp-%{jspspec}-api Apache Tomcat JSP API Implementation Classes. +%package common +Summary: Apache Tomcat - Servlet and JSP engine -- common files +Requires: (java-headless >= 11 or java >= 11) +Requires: %{name}-lib = %{epoch}:%{version}-%{release} + +%description common +Apache Tomcat - Servlet and JSP engine -- common files + %package lib Summary: Libraries needed to run the Tomcat Web container Requires: %{name}-jsp-%{jspspec}-api = %{epoch}:%{version}-%{release} @@ -263,6 +270,7 @@ sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat.pom %mvn_package ":tomcat-el-api" tomcat-el-api %mvn_package ":tomcat-jsp-api" tomcat-jsp-api %mvn_package ":tomcat-servlet-api" tomcat-servlet-api +%mvn_package ":tomcat-bootstrap" tomcat-common %mvn_install @@ -299,10 +307,9 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %files %doc {LICENSE,NOTICE,RELEASE-NOTES,RUNNING.txt} %{_unitdir}/%{name}.service -%{_libexecdir}/%{name} +%{_libexecdir}/%{name}/tomcat-start.sh %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}.disabled %{_sysusersdir}/tomcat.conf -%{homedir} %{baseconfdir} %{baselogdir} %{workdir} @@ -333,7 +340,12 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %files docs-webapp %{appdir}/docs +%files common -f .mfiles-tomcat-common +%{_libexecdir}/%{name}/tomcat-locate-java.sh +%{homedir}/bin + %files lib -f .mfiles +%{homedir}/lib %{libdir}/jakartaee-migration-x.jar %{libdir}/ecj-x.jar %exclude %{libdir}/tomcat-jni.pom From 6313caf0fda55b4b222de9fbe5a31d7d46c7cf69 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Wed, 19 Feb 2025 14:10:51 +0200 Subject: [PATCH 065/124] Add min_java_version variable --- tomcat.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tomcat.spec b/tomcat.spec index 7ad4bc5..f603e54 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -6,6 +6,7 @@ %global servletspec 6.0 %global elspec 5.0 %global tcuid 53 +%global min_java_version 11 # Recommended version is specified in java/org/apache/catalina/core/AprLifecycleListener.java %global native_version 2.0.8 @@ -106,7 +107,7 @@ Apache Tomcat JSP API Implementation Classes. %package common Summary: Apache Tomcat - Servlet and JSP engine -- common files -Requires: (java-headless >= 11 or java >= 11) +Requires: (java-headless >= %{min_java_version} or java >= %{min_java_version}) Requires: %{name}-lib = %{epoch}:%{version}-%{release} %description common From e4b70e261a6f8ce13784f4ec086867792000c8d1 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Thu, 20 Feb 2025 18:33:17 +0200 Subject: [PATCH 066/124] Reorganize docs and add RUNNING.txt file in tomcat-common package --- tomcat-10.1-RUNNING.txt | 133 ++++++++++++++++++++++++++++++++++++++++ tomcat-10.1.conf | 4 +- tomcat.spec | 23 +++++-- 3 files changed, 154 insertions(+), 6 deletions(-) create mode 100644 tomcat-10.1-RUNNING.txt diff --git a/tomcat-10.1-RUNNING.txt b/tomcat-10.1-RUNNING.txt new file mode 100644 index 0000000..e114b14 --- /dev/null +++ b/tomcat-10.1-RUNNING.txt @@ -0,0 +1,133 @@ +================================================================================ + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +================================================================================ + + =================================================== + Running The Apache Tomcat 10.1 Servlet/JSP Container + =================================================== + +Apache Tomcat 10.1 requires a Java Standard Edition Runtime +Environment (JRE) version 11 or later. + +============================= +Running With JRE 11 Or Later +============================= + +(1) Download and Install a Java SE Runtime Environment (JRE) or a full Java Development Kit (JDK), release version 11 or later. + +(2) Configure Environment Variables + +Tomcat is a Java application and does not use environment variables directly. +Environment variables are used by the Tomcat startup scripts. The scripts use +the environment variables to prepare the command that starts Tomcat. + +The CATALINA_HOME (required) environment variable should be set to the location of the +root directory of the "binary" distribution of Tomcat. It defaults to /usr/share/tomcat/ + +The CATALINA_BASE (optional) environment variable specifies location of the root +directory of the "active configuration" of Tomcat. It defaults to /var/lib/tomcat/ + +(3) Set JAVA_HOME (required) + +Variable is used to specify location of a Java Runtime +Environment or of a Java Development Kit that is used to start Tomcat. + +/usr/libexec/tomcat/tomcat-locate-java.sh script is ran by default when starting the tomcat service +and tries to set JAVA_HOME, if empty, without any user interaction. + +(4) Other variables (optional) + +See the comments at the top of /usr/share/tomcat/bin/catalina.sh script for +the list and a description of each of them. + +One frequently used variable is CATALINA_OPTS. It allows specification of +additional options for the java command that starts Tomcat. + +See the Java documentation for the options that affect the Java Runtime +Environment. + +See the "System Properties" page in the Tomcat Configuration Reference for +the system properties that are specific to Tomcat. + +A similar variable is JAVA_OPTS. It is used less frequently. It allows +specification of options that are used both to start and to stop Tomcat as well +as for other commands. + +Note: Do not use JAVA_OPTS to specify memory limits. You do not need much +memory for a small process that is used to stop Tomcat. Those settings +belong to CATALINA_OPTS. + +Another frequently used variable is CATALINA_PID. It +specifies the location of the file where process id of the forked Tomcat +java process will be written. This setting is optional. It will activate +the following features: + + * better protection against duplicate start attempts and + * allows forceful termination of Tomcat process when it does not react to + the standard shutdown command. + +You can assign those variables in /etc/tomcat/tomcat.conf when running Tomcat as a service. + +(4) Start Up Tomcat As A Service + +(4.1) Tomcat can be started by executing: + + $systemctl start tomcat.service + +(4.2) After startup, the default web applications included with tomcat-webapps package will be + available by visiting: + + http://localhost:8080/ + +(4.3) Further information about configuring and running Tomcat can be found in + the documentation included in tomcat-docs-webapp package, as well as on the Tomcat website: + + https://tomcat.apache.org/ + +(5) Check Tomcat Service Status + +$systemctl status tomcat.service + +(6) Shut Down Tomcat Service + +$systemctl stop tomcat.service + +================ +Troubleshooting +================ + +There are only really 2 things likely to go wrong during the stand-alone +Tomcat install: + +(1) The most common hiccup is when another web server (or any process for that + matter) has laid claim to port 8080. This is the default HTTP port that + Tomcat attempts to bind to at startup. To change this, open the file: + + $CATALINA_HOME/conf/server.xml + + and search for '8080'. Change it to a port that isn't in use, and is + greater than 1024, as ports less than or equal to 1024 require superuser + access to bind under UNIX. + + Restart Tomcat and you're in business. Be sure that you replace the "8080" + in the URL you're using to access Tomcat. For example, if you change the + port to 1977, you would request the URL http://localhost:1977/ in your + browser. + +(2) The 'localhost' machine isn't found. This could happen if you're behind a + proxy. If that's the case, make sure the proxy configuration for your + browser knows that you shouldn't be going through the proxy to access the + "localhost". diff --git a/tomcat-10.1.conf b/tomcat-10.1.conf index a698426..fbb3951 100644 --- a/tomcat-10.1.conf +++ b/tomcat-10.1.conf @@ -3,10 +3,10 @@ # Include here and not in JAVA_OPTS all options, that should only be used by Tomcat itself. # Examples are heap size, GC logging, JMX ports etc. -#export CATALINA_OPTS="-Dcatalina.http.port=8082" +#export CATALINA_OPTS="-Xmx512m -Xms256m" # Java runtime options used when any command is executed. -#export JAVA_OPTS="-Xmx512m -Xms256m" +#export JAVA_OPTS="" # To enable remote debugging uncomment the following line. # You will then be able to use a Java debugger on port 8000. diff --git a/tomcat.spec b/tomcat.spec index f603e54..a50a7d6 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -38,6 +38,7 @@ Source2: %{name}-%{major_version}.%{minor_version}.logrotate Source3: %{name}-%{major_version}.%{minor_version}.service Source4: %{name}-%{major_version}.%{minor_version}-locate-java.sh Source5: %{name}-%{major_version}.%{minor_version}-start.sh +Source6: %{name}-%{major_version}.%{minor_version}-RUNNING.txt # https://bugzilla.redhat.com/show_bug.cgi?id=435829 Patch0: %{name}-%{major_version}.%{minor_version}-bootstrap-MANIFEST.MF.patch @@ -166,6 +167,12 @@ find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name " # Remove webservices naming resources as it's generally unused %{__rm} -rf java/org/apache/naming/factory/webservices +sed -i -e "s/@VERSION@/%{version}/g" \ + -e "s/@VERSION_MAJOR_MINOR@/%{major_version}.%{minor_version}/g" \ + -e "s/@VERSION_MAJOR@/%{major_version}/g" \ + -e "s/@MIN_JAVA_VERSION@/%{min_java_version}/g" \ + -e "s/@JDT_VERSION@/x/g" RELEASE-NOTES + # Create a sysusers.d config file cat >tomcat.sysusers.conf < Date: Thu, 20 Feb 2025 18:54:37 +0200 Subject: [PATCH 067/124] Add Suggests: sections in tomcat package --- tomcat.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/tomcat.spec b/tomcat.spec index a50a7d6..1bdc3c9 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -68,9 +68,14 @@ BuildRequires: tomcat-jakartaee-migration BuildRequires: systemd Requires: %{name}-common = %{epoch}:%{version}-%{release} -Recommends: tomcat-native >= %{native_version} Requires: systemd +Recommends: tomcat-native >= %{native_version} + +Suggests: %{name}-admin-webapps = %{epoch}:%{version}-%{release} +Suggests: %{name}-docs-webapp = %{epoch}:%{version}-%{release} +Suggests: %{name}-webapps = %{epoch}:%{version}-%{release} + %description Tomcat is the servlet container that is used in the official Reference Implementation for the Java Servlet and JavaServer Pages technologies. From 4cb746528937b2740d45c3484c3a18ad04c147e2 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Tue, 25 Feb 2025 16:49:55 +0200 Subject: [PATCH 068/124] Introduce tomcat-user-instance package --- tomcat-10.1-setenv.sh | 12 ++ tomcat-10.1-user-instance-create.asciidoc | 85 ++++++++++++ tomcat-10.1-user-instance-create.sh | 149 ++++++++++++++++++++++ tomcat.spec | 31 ++++- 4 files changed, 276 insertions(+), 1 deletion(-) create mode 100755 tomcat-10.1-setenv.sh create mode 100644 tomcat-10.1-user-instance-create.asciidoc create mode 100644 tomcat-10.1-user-instance-create.sh diff --git a/tomcat-10.1-setenv.sh b/tomcat-10.1-setenv.sh new file mode 100755 index 0000000..76bea76 --- /dev/null +++ b/tomcat-10.1-setenv.sh @@ -0,0 +1,12 @@ +#!/bin/sh +# + +export CATALINA_HOME=/usr/share/tomcat + +# Try to find Java installation and set JAVA_HOME +/bin/sh /usr/libexec/tomcat/tomcat-locate-java.sh + +# Default Java options +if [ -z "$JAVA_OPTS" ]; then + JAVA_OPTS="-Djava.awt.headless=true" +fi diff --git a/tomcat-10.1-user-instance-create.asciidoc b/tomcat-10.1-user-instance-create.asciidoc new file mode 100644 index 0000000..6c02e94 --- /dev/null +++ b/tomcat-10.1-user-instance-create.asciidoc @@ -0,0 +1,85 @@ +tomcat-user-instance-create(1) +================================ +:doctype: manpage +:man source: TOMCAT +:man manual: Apache Tomcat + +NAME +---- +tomcat-user-instance-create - Creates a standalone Tomcat instance with a separate configuration + +SYNOPSIS +-------- +*tomcat-user-instance-create* [OPTIONS] DIRECTORYNAME + +DESCRIPTION +----------- +The `tomcat-user-instance-create` script creates a self-contained Tomcat instance in a specified directory. +This instance has its own configuration, libraries, and web applications, allowing multiple independent Tomcat instances to run on the same system. + +The script automatically sets up the required `CATALINA_BASE` structure, including: +- `bin/startup.sh` – Starts the Tomcat instance. +- `bin/shutdown.sh` – Stops the Tomcat instance. + +By using this script, users can configure and manage multiple Tomcat instances independently of the system-wide Tomcat installation. + +USAGE +----- +To create a new Tomcat instance, specify the target directory where the instance should be created. +This directory **must not already exist**, as the script will create it. + +If no additional options are provided, the instance will be created with **default** ports and settings. + +OPTIONS +------- + +*-p *:: +Set the TCP port for the default HTTP connector. The default is `8080`. + +*-c *:: +Set the TCP port for the Tomcat shutdown control mechanism. The default is `8005`. + +*-w *:: +Set the shutdown keyword. When sent to the control port, this triggers a graceful shutdown of the instance. The default keyword is `SHUTDOWN`. + +*-h, --help*:: +Display usage information and exit. + +EXAMPLES +-------- +Create a Tomcat instance in `~/mytomcat` using default ports: +---- +$ tomcat-user-instance-create ~/mytomcat +---- + +Create an instance with a custom HTTP and control port: +---- +$ tomcat-user-instance-create -p 9090 -c 9005 ~/mytomcat +---- + +Create an instance with a custom shutdown keyword: +---- +$ tomcat-user-instance-create -w "STOPNOW" ~/mytomcat +---- + +NOTES +----- +- Ensure that the selected HTTP and control ports are not already in use. +- Ports **below 1024** require root privileges. +- The created instance is independent of the system-wide Tomcat installation. + +FILES +----- +The script generates a directory structure similar to: +---- +DIRECTORYNAME/ +│── bin/ +│ ├── startup.sh +│ ├── shutdown.sh +│── conf/ +│── logs/ +│── webapps/ +│── work/ +│── temp/ +│── lib/ +---- diff --git a/tomcat-10.1-user-instance-create.sh b/tomcat-10.1-user-instance-create.sh new file mode 100644 index 0000000..4854928 --- /dev/null +++ b/tomcat-10.1-user-instance-create.sh @@ -0,0 +1,149 @@ +#!/bin/sh +# Script to create a CATALINA_BASE directory for your own tomcat + +PROG=$(basename "$0") +CATALINA_HOME="/usr/share/tomcat" +TARGET="" +HPORT=8080 +CPORT=8005 +CWORD="SHUTDOWN" +warned=0 +warnlowport=0 + +usage() { + echo "Usage: $PROG [options] " + echo " directoryname: name of the tomcat instance directory to create" + echo "Options:" + echo " -h, --help Display this help message" + echo " -p HTTP port to be used by Tomcat (default is $HPORT)" + echo " -c Server shutdown control port (default is $CPORT)" + echo " -w Word to send to trigger shutdown (default is $CWORD)" +} + +checkport() { + type=$1 + port=$2 + # Fail if port is non-numeric + case "$port" in + ''|*[!0-9]*) + echo "Error: ${type} port '${port}' is not a valid TCP port number." + exit 1 + ;; + esac + + num=$((port + 1)) 2>/dev/null || { + echo "Error: ${type} port '${port}' is not a valid TCP port number." + exit 1 + } + + if [ "$num" -lt 2 ] || [ "$num" -gt 65536 ]; then + echo "Error: ${type} port '${port}' is not a valid TCP port number or is above TCP port numbers (> 65535)." + exit 1 + fi + + # Warn if port is below 1024 (once) + if [ ${warnlowport} -eq 0 ]; then + if [ "${port}" -lt 1024 ]; then + echo "Warning: ports below 1024 are reserved to the super-user." + warnlowport=1 + warned=1 + fi + fi + + # Warn if port appears to be in use + if ss -tln | grep -q ":${port} "; then + echo "Warning: ${type} port ${port} appears to be in use." + warned=1 + fi +} + +if [ "$#" -lt 1 ]; then + usage + exit 1 +fi +if [ "$1" = "-h" ] || [ "$1" = "--help" ]; then + usage + exit 0 +fi + +while getopts ":p:c:w:h" options; do + case $options in + p ) HPORT=$OPTARG ;; + c ) CPORT=$OPTARG ;; + w ) CWORD=$OPTARG ;; + h ) usage;; + \? ) echo "Error: Unknown parameter '-$OPTARG'." + exit 1;; + esac +done + +shift $((OPTIND - 1)) +TARGET=$1 +shift +echo "You are about to create a Tomcat instance in directory '$TARGET'" + +# Fail if no target specified +if [ -z "${TARGET}" ]; then + echo "Error: No target directory specified (use -d)." + exit 1 +fi + +# Fail if ports are the same +if [ "${HPORT}" = "${CPORT}" ]; then + echo "Error: HTTP port and control port must be different." + exit 1 +fi + +# Fail if target directory already exists +if [ -d "${TARGET}" ]; then + echo "Error: Target directory already exists." + exit 1 +fi + +# Check ports +checkport HTTP "${HPORT}" +checkport Control "${CPORT}" + +# Ask for confirmation if warnings were printed out +if [ ${warned} -eq 1 ]; then + echo "Press to continue, or type 'no' to abort." + read -r answer + case "$answer" in + [nN][oO]|[nN]) + echo "Aborting." + exit 1 + ;; + esac +fi + +mkdir -p "${TARGET}" + +FULLTARGET=$(cd "${TARGET}" > /dev/null && pwd) + +mkdir "${TARGET}/conf" +mkdir "${TARGET}/logs" +mkdir "${TARGET}/webapps" +mkdir "${TARGET}/work" +mkdir "${TARGET}/temp" +cp -r "${CATALINA_HOME}/user-instance/*" "${TARGET}" + +sed -i -e "s/Connector port=\"8080\"/Connector port=\"${HPORT}\"/;s/Server port=\"-1\" shutdown=\"SHUTDOWN\"/Server port=\"${CPORT}\" shutdown=\"${CWORD}\"/" "${TARGET}/conf/server.xml" + +cat > "${TARGET}/bin/startup.sh" << EOF +#!/bin/sh +export CATALINA_BASE="${FULLTARGET}" +"${CATALINA_HOME}"/bin/startup.sh +echo "Tomcat started" +EOF + +cat > "${TARGET}/bin/shutdown.sh" << EOF +#!/bin/sh +export CATALINA_BASE="${FULLTARGET}" +"${CATALINA_HOME}"/bin/shutdown.sh +echo "Tomcat stopped" +EOF + +chmod a+x "${TARGET}/bin/startup.sh" "${TARGET}/bin/shutdown.sh" +echo "* New Tomcat instance created in ${TARGET}" +echo "* You might want to edit default configuration in ${TARGET}/conf" +echo "* Run ${TARGET}/bin/startup.sh to start your Tomcat instance" diff --git a/tomcat.spec b/tomcat.spec index 1bdc3c9..560c452 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -22,6 +22,7 @@ %global logdir %{_var}/log/%{name} %global cachedir %{_var}/cache/%{name} %global workdir %{basedir}/work +%global userinstancedir %{homedir}/user-instance Name: tomcat Epoch: 1 @@ -39,6 +40,9 @@ Source3: %{name}-%{major_version}.%{minor_version}.service Source4: %{name}-%{major_version}.%{minor_version}-locate-java.sh Source5: %{name}-%{major_version}.%{minor_version}-start.sh Source6: %{name}-%{major_version}.%{minor_version}-RUNNING.txt +Source7: %{name}-%{major_version}.%{minor_version}-user-instance-create.sh +Source8: %{name}-%{major_version}.%{minor_version}-setenv.sh +Source9: %{name}-%{major_version}.%{minor_version}-user-instance-create.asciidoc # https://bugzilla.redhat.com/show_bug.cgi?id=435829 Patch0: %{name}-%{major_version}.%{minor_version}-bootstrap-MANIFEST.MF.patch @@ -66,6 +70,7 @@ BuildRequires: javapackages-local BuildRequires: aqute-bnd BuildRequires: tomcat-jakartaee-migration BuildRequires: systemd +BuildRequires: rubygem-asciidoctor Requires: %{name}-common = %{epoch}:%{version}-%{release} Requires: systemd @@ -75,6 +80,7 @@ Recommends: tomcat-native >= %{native_version} Suggests: %{name}-admin-webapps = %{epoch}:%{version}-%{release} Suggests: %{name}-docs-webapp = %{epoch}:%{version}-%{release} Suggests: %{name}-webapps = %{epoch}:%{version}-%{release} +Suggests: %{name}-user-instance = %{epoch}:%{version}-%{release} %description Tomcat is the servlet container that is used in the official Reference @@ -155,6 +161,17 @@ Requires: %{name} = %{epoch}:%{version}-%{release} %description webapps The ROOT web application for Apache Tomcat. +%package user-instance +Summary: Apache Tomcat - Servlet and JSP engine -- tools to create user instances +Requires: %{name}-common = %{epoch}:%{version}-%{release} +Suggests: %{name} = %{epoch}:%{version}-%{release} +Suggests: %{name}-admin-webapps = %{epoch}:%{version}-%{release} +Suggests: %{name}-docs-webapp = %{epoch}:%{version}-%{release} +Suggests: %{name}-webapps = %{epoch}:%{version}-%{release} + +%description user-instance +Apache Tomcat - Servlet and JSP engine -- tools to create user instances + %prep %setup -q -n %{packdname} # remove pre-built binaries and windows files @@ -215,7 +232,6 @@ touch HACK %install # build initial path structure -# %{__install} -d ${RPM_BUILD_ROOT}%{_bindir} %{__install} -d ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d %{__install} -d ${RPM_BUILD_ROOT}%{appdir} %{__install} -d ${RPM_BUILD_ROOT}%{bindir} @@ -239,6 +255,12 @@ touch HACK %{__install} -D tomcat.sysusers.conf ${RPM_BUILD_ROOT}%{_sysusersdir}/tomcat.conf +%{__install} -d ${RPM_BUILD_ROOT}%{userinstancedir}/conf +%{__install} -D %{SOURCE7} ${RPM_BUILD_ROOT}%{_bindir}/tomcat-user-instance-create.sh +%{__install} -D %{SOURCE8} ${RPM_BUILD_ROOT}%{userinstancedir}/bin/setenv.sh + +asciidoctor -b manpage -D ${RPM_BUILD_ROOT}%{_mandir}/man1 -o tomcat-user-instance-create.1 %{SOURCE9} + for jar in output/build/lib/*.jar; do # Skip Jar if empty, applies to tomcat-coyote-ffm.jar atm jar tf ${jar} | grep -E -q '.*\.class' || continue @@ -297,6 +319,7 @@ jar ufm ${RPM_BUILD_ROOT}%{libdir}/servlet-api.jar <(echo "JavaPackages-GroupId: pushd output/build %{__cp} -a bin/* ${RPM_BUILD_ROOT}%{bindir} %{__cp} -a conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{confdir} + %{__cp} -a conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{userinstancedir}/conf %{__cp} -a webapps/* ${RPM_BUILD_ROOT}%{appdir} popd @@ -384,5 +407,11 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %defattr(0644,tomcat,tomcat,0755) %{appdir}/ROOT +%files user-instance +%license LICENSE +%{userinstancedir} +%{_bindir}/tomcat-user-instance-create.sh +%{_mandir}/man1/tomcat-user-instance-create.1* + %changelog %autochangelog From fd0d6ea01f1162ad19304dd7296f2ad8c19bf8fa Mon Sep 17 00:00:00 2001 From: dsoumis Date: Wed, 26 Feb 2025 12:48:42 +0200 Subject: [PATCH 069/124] Remove redundant defattr from webapps files section --- tomcat.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/tomcat.spec b/tomcat.spec index 560c452..a1f7da4 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -404,7 +404,6 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %files webapps %license LICENSE -%defattr(0644,tomcat,tomcat,0755) %{appdir}/ROOT %files user-instance From c1868d66549c281c36dc3006ec37190871ceb8e5 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Wed, 26 Feb 2025 14:26:18 +0200 Subject: [PATCH 070/124] Improve package descriptions and summaries --- tomcat.spec | 142 ++++++++++++++++++++++++++++------------------------ 1 file changed, 76 insertions(+), 66 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index a1f7da4..a1b5416 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -28,7 +28,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} Release: %autorelease -Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API +Summary: Apache Tomcat - Servlet and JSP engine for system-wide deployment # Automatically converted from old format: ASL 2.0 - review is highly recommended. License: Apache-2.0 @@ -83,28 +83,75 @@ Suggests: %{name}-webapps = %{epoch}:%{version}-%{release} Suggests: %{name}-user-instance = %{epoch}:%{version}-%{release} %description -Tomcat is the servlet container that is used in the official Reference -Implementation for the Java Servlet and JavaServer Pages technologies. -The Java Servlet and JavaServer Pages specifications are developed by -Sun under the Java Community Process. +Apache Tomcat is an open-source implementation of the Java Servlet, JavaServer Pages (JSP), and WebSocket technologies. +It provides a pure Java HTTP web server environment for running Java applications. +This package includes only the startup scripts for managing a system-wide Tomcat daemon. +It does not include documentation or web applications. + * To install the default web applications, use the tomcat-webapps package. + * To access online documentation, install tomcat-docs-webapps package. + * To create user instances without running Tomcat as a system service, use tomcat-user-instance package instead. -Tomcat is developed in an open and participatory environment and -released under the Apache Software License version 2.0. Tomcat is intended -to be a collaboration of the best-of-breed developers from around the world. +%package user-instance +Summary: Apache Tomcat - Tools for creating user-managed instances +Requires: %{name}-common = %{epoch}:%{version}-%{release} +Suggests: %{name} = %{epoch}:%{version}-%{release} +Suggests: %{name}-admin-webapps = %{epoch}:%{version}-%{release} +Suggests: %{name}-docs-webapp = %{epoch}:%{version}-%{release} +Suggests: %{name}-webapps = %{epoch}:%{version}-%{release} + +%description user-instance +This package provides the tools necessary to create user-managed Tomcat instances, +allowing users to run Tomcat independently of the system-wide service. +A user instance includes its own configuration, libraries, and web applications, +which can be started and stopped using scripts inside the instance directory. + +%package common +Summary: Apache Tomcat - Common files for Tomcat packages +Requires: (java-headless >= %{min_java_version} or java >= %{min_java_version}) +Requires: %{name}-lib = %{epoch}:%{version}-%{release} + +%description common +This package contains common files required by both tomcat and tomcat-user-instance packages, including essential Tomcat +scripts and libraries. Installing this package alone does not provide a functional Tomcat installation, +but is required as a dependency for other Tomcat-related packages. + +%package lib +Summary: Apache Tomcat - Core libraries for embedding Tomcat +Requires: %{name}-jsp-%{jspspec}-api = %{epoch}:%{version}-%{release} +Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} +Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} +Requires: ecj >= 4.20 +Recommends: tomcat-jakartaee-migration + +%description lib +This package contains the core libraries of Apache Tomcat, which allow other Java applications to embed Tomcat +as a lightweight servlet container. It is primarily intended for use by developers and applications that need Tomcat +as an embedded runtime. %package admin-webapps -Summary: The host-manager and manager web applications for Apache Tomcat +Summary: Apache Tomcat - Administrative web applications Requires: %{name} = %{epoch}:%{version}-%{release} %description admin-webapps -The host-manager and manager web applications for Apache Tomcat. +This package provides the Tomcat Web Application Manager and Virtual Host Manager, which allow administrators to deploy, +manage, and configure web applications through a web interface. +These tools simplify application lifecycle management without requiring direct filesystem access. %package docs-webapp -Summary: The docs web application for Apache Tomcat +Summary: Apache Tomcat - Online documentation web application Requires: %{name} = %{epoch}:%{version}-%{release} %description docs-webapp -The docs web application for Apache Tomcat. +This package provides the Tomcat documentation web application, accessible via the Tomcat server. +It includes API references, configuration guidelines, and development documentation. + +%package webapps +Summary: Apache Tomcat - Default ROOT web application +Requires: %{name} = %{epoch}:%{version}-%{release} + +%description webapps +This package includes the default ROOT web applications bundled with Apache Tomcat, +which serves as the default homepage when accessing Tomcat in a browser. %package jsp-%{jspspec}-api Summary: Apache Tomcat JavaServer Pages v%{jspspec} API Implementation Classes @@ -117,25 +164,6 @@ Conflicts: tomcat-jsp-2.3-api %description jsp-%{jspspec}-api Apache Tomcat JSP API Implementation Classes. -%package common -Summary: Apache Tomcat - Servlet and JSP engine -- common files -Requires: (java-headless >= %{min_java_version} or java >= %{min_java_version}) -Requires: %{name}-lib = %{epoch}:%{version}-%{release} - -%description common -Apache Tomcat - Servlet and JSP engine -- common files - -%package lib -Summary: Libraries needed to run the Tomcat Web container -Requires: %{name}-jsp-%{jspspec}-api = %{epoch}:%{version}-%{release} -Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} -Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} -Requires: ecj >= 4.20 -Recommends: tomcat-jakartaee-migration - -%description lib -Libraries needed to run the Tomcat Web container. - %package servlet-%{servletspec}-api Summary: Apache Tomcat Java Servlet v%{servletspec} API Implementation Classes Provides: servlet = %{servletspec} @@ -154,24 +182,6 @@ Conflicts: tomcat-el-3.0-api %description el-%{elspec}-api Apache Tomcat EL API Implementation Classes. -%package webapps -Summary: The ROOT web application for Apache Tomcat -Requires: %{name} = %{epoch}:%{version}-%{release} - -%description webapps -The ROOT web application for Apache Tomcat. - -%package user-instance -Summary: Apache Tomcat - Servlet and JSP engine -- tools to create user instances -Requires: %{name}-common = %{epoch}:%{version}-%{release} -Suggests: %{name} = %{epoch}:%{version}-%{release} -Suggests: %{name}-admin-webapps = %{epoch}:%{version}-%{release} -Suggests: %{name}-docs-webapp = %{epoch}:%{version}-%{release} -Suggests: %{name}-webapps = %{epoch}:%{version}-%{release} - -%description user-instance -Apache Tomcat - Servlet and JSP engine -- tools to create user instances - %prep %setup -q -n %{packdname} # remove pre-built binaries and windows files @@ -371,14 +381,11 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %attr(2775,root,tomcat) %dir %{confdir}/Catalina %attr(2775,root,tomcat) %dir %{confdir}/Catalina/localhost -%files admin-webapps +%files user-instance %license LICENSE -%{appdir}/host-manager -%{appdir}/manager - -%files docs-webapp -%license LICENSE -%{appdir}/docs +%{userinstancedir} +%{_bindir}/tomcat-user-instance-create.sh +%{_mandir}/man1/tomcat-user-instance-create.1* %files common -f .mfiles-tomcat-common %license LICENSE @@ -393,6 +400,19 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %{libdir}/ecj-x.jar %exclude %{libdir}/tomcat-jni.pom +%files admin-webapps +%license LICENSE +%{appdir}/host-manager +%{appdir}/manager + +%files docs-webapp +%license LICENSE +%{appdir}/docs + +%files webapps +%license LICENSE +%{appdir}/ROOT + %files jsp-%{jspspec}-api -f .mfiles-tomcat-jsp-api %license LICENSE @@ -402,15 +422,5 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %files el-%{elspec}-api -f .mfiles-tomcat-el-api %license LICENSE -%files webapps -%license LICENSE -%{appdir}/ROOT - -%files user-instance -%license LICENSE -%{userinstancedir} -%{_bindir}/tomcat-user-instance-create.sh -%{_mandir}/man1/tomcat-user-instance-create.1* - %changelog %autochangelog From 48b049b11647bccf850d5d7d6f5355fe75222faf Mon Sep 17 00:00:00 2001 From: dsoumis Date: Wed, 26 Feb 2025 17:41:06 +0200 Subject: [PATCH 071/124] Remove logrotate file since Tomcat rotates its own logs --- tomcat-10.1.logrotate | 11 ----------- tomcat.spec | 4 ---- 2 files changed, 15 deletions(-) delete mode 100644 tomcat-10.1.logrotate diff --git a/tomcat-10.1.logrotate b/tomcat-10.1.logrotate deleted file mode 100644 index 082092a..0000000 --- a/tomcat-10.1.logrotate +++ /dev/null @@ -1,11 +0,0 @@ -# This is an example config only and is disabled by default -# If you wish to use it, you'll need to update /etc/tomcat/logging.properties -# to prevent catalina*.log from being rotated by Tomcat -@@@TCLOG@@@/catalina*.log { - copytruncate - weekly - rotate 52 - compress - missingok - create 0644 tomcat tomcat -} diff --git a/tomcat.spec b/tomcat.spec index a1b5416..fe6de25 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -35,7 +35,6 @@ License: Apache-2.0 URL: http://tomcat.apache.org/ Source0: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz Source1: %{name}-%{major_version}.%{minor_version}.conf -Source2: %{name}-%{major_version}.%{minor_version}.logrotate Source3: %{name}-%{major_version}.%{minor_version}.service Source4: %{name}-%{major_version}.%{minor_version}-locate-java.sh Source5: %{name}-%{major_version}.%{minor_version}-start.sh @@ -242,7 +241,6 @@ touch HACK %install # build initial path structure -%{__install} -d ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d %{__install} -d ${RPM_BUILD_ROOT}%{appdir} %{__install} -d ${RPM_BUILD_ROOT}%{bindir} %{__install} -d ${RPM_BUILD_ROOT}%{confdir} @@ -257,7 +255,6 @@ touch HACK %{__install} -d ${RPM_BUILD_ROOT}%{_libexecdir}/%{name} %{__install} %{SOURCE1} ${RPM_BUILD_ROOT}%{confdir}/%{name}.conf -%{__sed} -e "s|\@\@\@TCLOG\@\@\@|%{logdir}|g" %{SOURCE2} > ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{name}.disabled %{__install} %{SOURCE3} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service %{__install} %{SOURCE4} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-locate-java.sh %{__install} %{SOURCE5} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-start.sh @@ -356,7 +353,6 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %{homedir}/doc/RUNNING.txt %{_unitdir}/%{name}.service %{_libexecdir}/%{name}/tomcat-start.sh -%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}.disabled %{_sysusersdir}/tomcat.conf %{baseconfdir} %{baselogdir} From 74d5d938592bfab95c3a362fae14f0185e8b2435 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Wed, 26 Feb 2025 17:42:32 +0200 Subject: [PATCH 072/124] Rename service start script more properly --- tomcat-10.1-start.sh => tomcat-10.1-run.sh | 0 tomcat.spec | 6 +++--- 2 files changed, 3 insertions(+), 3 deletions(-) rename tomcat-10.1-start.sh => tomcat-10.1-run.sh (100%) diff --git a/tomcat-10.1-start.sh b/tomcat-10.1-run.sh similarity index 100% rename from tomcat-10.1-start.sh rename to tomcat-10.1-run.sh diff --git a/tomcat.spec b/tomcat.spec index fe6de25..56613ff 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -37,7 +37,7 @@ Source0: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{vers Source1: %{name}-%{major_version}.%{minor_version}.conf Source3: %{name}-%{major_version}.%{minor_version}.service Source4: %{name}-%{major_version}.%{minor_version}-locate-java.sh -Source5: %{name}-%{major_version}.%{minor_version}-start.sh +Source5: %{name}-%{major_version}.%{minor_version}-run.sh Source6: %{name}-%{major_version}.%{minor_version}-RUNNING.txt Source7: %{name}-%{major_version}.%{minor_version}-user-instance-create.sh Source8: %{name}-%{major_version}.%{minor_version}-setenv.sh @@ -257,7 +257,7 @@ touch HACK %{__install} %{SOURCE1} ${RPM_BUILD_ROOT}%{confdir}/%{name}.conf %{__install} %{SOURCE3} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service %{__install} %{SOURCE4} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-locate-java.sh -%{__install} %{SOURCE5} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-start.sh +%{__install} %{SOURCE5} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-run.sh %{__install} -D %{SOURCE6} ${RPM_BUILD_ROOT}%{homedir}/doc/RUNNING.txt %{__install} -D tomcat.sysusers.conf ${RPM_BUILD_ROOT}%{_sysusersdir}/tomcat.conf @@ -352,7 +352,7 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %license LICENSE %{homedir}/doc/RUNNING.txt %{_unitdir}/%{name}.service -%{_libexecdir}/%{name}/tomcat-start.sh +%{_libexecdir}/%{name}/tomcat-run.sh %{_sysusersdir}/tomcat.conf %{baseconfdir} %{baselogdir} From c86e1e94da32c7cbe05e5e03ebe0c939a0bae741 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Wed, 26 Feb 2025 17:44:14 +0200 Subject: [PATCH 073/124] Remove unused parameter --- tomcat-10.1.conf | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/tomcat-10.1.conf b/tomcat-10.1.conf index fbb3951..dc9fec5 100644 --- a/tomcat-10.1.conf +++ b/tomcat-10.1.conf @@ -18,7 +18,4 @@ #export JAVA_OPTS="$JAVA_OPTS -Dbuild.compiler=$JSP_COMPILER" # Enable the Java security manager? (true/false, default: false) -#export SECURITY_MANAGER=true - -# Whether to compress logfiles older than today's -#export LOGFILE_COMPRESS=1 \ No newline at end of file +#export SECURITY_MANAGER=true \ No newline at end of file From 4c675c785fc5b871b842bf76ded75a82da30efe3 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Wed, 26 Feb 2025 18:13:31 +0200 Subject: [PATCH 074/124] Fix tomcat-juli.jar not placed in tomcat-common package --- tomcat.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/tomcat.spec b/tomcat.spec index 56613ff..c62b7c4 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -314,6 +314,7 @@ sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat.pom %mvn_package ":tomcat-jsp-api" tomcat-jsp-api %mvn_package ":tomcat-servlet-api" tomcat-servlet-api %mvn_package ":tomcat-bootstrap" tomcat-common +%mvn_package ":tomcat-juli" tomcat-common %mvn_install From d584406620b7ae49f0457ee6a06758b6bb7c0691 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Fri, 7 Mar 2025 14:41:10 +0200 Subject: [PATCH 075/124] Update catalina-policy.patch --- tomcat-10.1-catalina-policy.patch | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/tomcat-10.1-catalina-policy.patch b/tomcat-10.1-catalina-policy.patch index 3254968..5c01b4a 100644 --- a/tomcat-10.1-catalina-policy.patch +++ b/tomcat-10.1-catalina-policy.patch @@ -1,16 +1,23 @@ ---- conf/catalina.policy.orig 2024-05-22 16:12:23.809886452 +0300 -+++ conf/catalina.policy 2024-05-22 16:14:38.913939654 +0300 -@@ -55,6 +55,14 @@ +--- conf/catalina.policy.orig 2025-03-04 21:02:32.000000000 +0200 ++++ conf/catalina.policy 2025-03-07 14:23:42.341169484 +0200 +@@ -55,6 +55,20 @@ grant codeBase "jrt:/jdk.compiler" { permission java.security.AllPermission; }; - -+// ========== RHEL SPECIFIC CODE PERMISSIONS ======================================= + ++// ========== FEDORA SPECIFIC CODE PERMISSIONS ======================================= + -+// Allowing everything in /usr/share/java allows too many unknowns to be permitted -+// Specifying the individual jars that tomcat needs to function with the security manager -+// is the safest way forward. +grant codeBase "file:/usr/share/java/ecj/ecj.jar" { + permission java.security.AllPermission; +}; - ++ ++grant codeBase "file:/usr/share/tomcat-jakartaee-migration/jakartaee-migration.jar" { ++ permission java.security.AllPermission; ++}; ++ ++grant codeBase "file:/usr/lib/java/tomcat/tomcat-jni.jar" { ++ permission java.security.AllPermission; ++}; ++ + // ========== CATALINA CODE PERMISSIONS ======================================= + From 740d603f373bdd64cc4d117eb731d2e432019434 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Fri, 7 Mar 2025 14:42:06 +0200 Subject: [PATCH 076/124] Reorganize installs and preserve timestamps as suggested by Fedora Packaging guidelines --- tomcat.spec | 48 +++++++++++++++++++++++------------------------- 1 file changed, 23 insertions(+), 25 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index c62b7c4..b43b30a 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -34,14 +34,16 @@ Summary: Apache Tomcat - Servlet and JSP engine for system-wide deployment License: Apache-2.0 URL: http://tomcat.apache.org/ Source0: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz -Source1: %{name}-%{major_version}.%{minor_version}.conf -Source3: %{name}-%{major_version}.%{minor_version}.service -Source4: %{name}-%{major_version}.%{minor_version}-locate-java.sh -Source5: %{name}-%{major_version}.%{minor_version}-run.sh -Source6: %{name}-%{major_version}.%{minor_version}-RUNNING.txt -Source7: %{name}-%{major_version}.%{minor_version}-user-instance-create.sh -Source8: %{name}-%{major_version}.%{minor_version}-setenv.sh -Source9: %{name}-%{major_version}.%{minor_version}-user-instance-create.asciidoc +# Source1: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz +# Source2: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz +Source3: %{name}-%{major_version}.%{minor_version}.conf +Source4: %{name}-%{major_version}.%{minor_version}.service +Source5: %{name}-%{major_version}.%{minor_version}-locate-java.sh +Source6: %{name}-%{major_version}.%{minor_version}-run.sh +Source7: %{name}-%{major_version}.%{minor_version}-RUNNING.txt +Source8: %{name}-%{major_version}.%{minor_version}-user-instance-create.sh +Source9: %{name}-%{major_version}.%{minor_version}-setenv.sh +Source10: %{name}-%{major_version}.%{minor_version}-user-instance-create.asciidoc # https://bugzilla.redhat.com/show_bug.cgi?id=435829 Patch0: %{name}-%{major_version}.%{minor_version}-bootstrap-MANIFEST.MF.patch @@ -243,30 +245,26 @@ touch HACK # build initial path structure %{__install} -d ${RPM_BUILD_ROOT}%{appdir} %{__install} -d ${RPM_BUILD_ROOT}%{bindir} -%{__install} -d ${RPM_BUILD_ROOT}%{confdir} %{__install} -d ${RPM_BUILD_ROOT}%{confdir}/Catalina/localhost %{__install} -d ${RPM_BUILD_ROOT}%{confdir}/conf.d /bin/echo "Place your custom *.conf files here. Shell expansion is supported." > ${RPM_BUILD_ROOT}%{confdir}/conf.d/README -%{__install} -d ${RPM_BUILD_ROOT}%{libdir} +# %{__install} -d ${RPM_BUILD_ROOT}%{libdir} %{__install} -d ${RPM_BUILD_ROOT}%{logdir} -%{__install} -d ${RPM_BUILD_ROOT}%{homedir} %{__install} -d ${RPM_BUILD_ROOT}%{cachedir} -%{__install} -d ${RPM_BUILD_ROOT}%{_unitdir} -%{__install} -d ${RPM_BUILD_ROOT}%{_libexecdir}/%{name} -%{__install} %{SOURCE1} ${RPM_BUILD_ROOT}%{confdir}/%{name}.conf -%{__install} %{SOURCE3} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service -%{__install} %{SOURCE4} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-locate-java.sh -%{__install} %{SOURCE5} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-run.sh -%{__install} -D %{SOURCE6} ${RPM_BUILD_ROOT}%{homedir}/doc/RUNNING.txt +%{__install} -D -p %{SOURCE3} ${RPM_BUILD_ROOT}%{confdir}/%{name}.conf +%{__install} -D -p %{SOURCE4} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service +%{__install} -D -p %{SOURCE5} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-locate-java.sh +%{__install} -D -p %{SOURCE6} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-run.sh +%{__install} -D -p %{SOURCE7} ${RPM_BUILD_ROOT}%{homedir}/doc/RUNNING.txt %{__install} -D tomcat.sysusers.conf ${RPM_BUILD_ROOT}%{_sysusersdir}/tomcat.conf %{__install} -d ${RPM_BUILD_ROOT}%{userinstancedir}/conf -%{__install} -D %{SOURCE7} ${RPM_BUILD_ROOT}%{_bindir}/tomcat-user-instance-create.sh -%{__install} -D %{SOURCE8} ${RPM_BUILD_ROOT}%{userinstancedir}/bin/setenv.sh +%{__install} -D -p %{SOURCE8} ${RPM_BUILD_ROOT}%{_bindir}/tomcat-user-instance-create.sh +%{__install} -D -p %{SOURCE9} ${RPM_BUILD_ROOT}%{userinstancedir}/bin/setenv.sh -asciidoctor -b manpage -D ${RPM_BUILD_ROOT}%{_mandir}/man1 -o tomcat-user-instance-create.1 %{SOURCE9} +asciidoctor -b manpage -D ${RPM_BUILD_ROOT}%{_mandir}/man1 -o tomcat-user-instance-create.1 %{SOURCE10} for jar in output/build/lib/*.jar; do # Skip Jar if empty, applies to tomcat-coyote-ffm.jar atm @@ -325,10 +323,10 @@ jar ufm ${RPM_BUILD_ROOT}%{libdir}/servlet-api.jar <(echo "JavaPackages-GroupId: # move things into place pushd output/build - %{__cp} -a bin/* ${RPM_BUILD_ROOT}%{bindir} - %{__cp} -a conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{confdir} - %{__cp} -a conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{userinstancedir}/conf - %{__cp} -a webapps/* ${RPM_BUILD_ROOT}%{appdir} + %{__cp} -ap bin/* ${RPM_BUILD_ROOT}%{bindir} + %{__cp} -ap conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{confdir} + %{__cp} -ap conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{userinstancedir}/conf + %{__cp} -ap webapps/* ${RPM_BUILD_ROOT}%{appdir} popd ln -sr $(build-classpath ecj/ecj) ${RPM_BUILD_ROOT}%{libdir}/ecj-x.jar From 03b7b8f8e69991d5b6bc8b728a56722bbe7d5f30 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Fri, 7 Mar 2025 16:25:35 +0200 Subject: [PATCH 077/124] Fix man page rendering --- tomcat-10.1-user-instance-create.asciidoc | 57 +++++++++-------------- 1 file changed, 23 insertions(+), 34 deletions(-) diff --git a/tomcat-10.1-user-instance-create.asciidoc b/tomcat-10.1-user-instance-create.asciidoc index 6c02e94..c474e16 100644 --- a/tomcat-10.1-user-instance-create.asciidoc +++ b/tomcat-10.1-user-instance-create.asciidoc @@ -1,19 +1,16 @@ -tomcat-user-instance-create(1) -================================ += tomcat-user-instance-create(1) +DIMITRIS SOUMIS :doctype: manpage :man source: TOMCAT :man manual: Apache Tomcat -NAME ----- +== NAME tomcat-user-instance-create - Creates a standalone Tomcat instance with a separate configuration SYNOPSIS --------- *tomcat-user-instance-create* [OPTIONS] DIRECTORYNAME -DESCRIPTION ------------ +== DESCRIPTION The `tomcat-user-instance-create` script creates a self-contained Tomcat instance in a specified directory. This instance has its own configuration, libraries, and web applications, allowing multiple independent Tomcat instances to run on the same system. @@ -23,16 +20,13 @@ The script automatically sets up the required `CATALINA_BASE` structure, includi By using this script, users can configure and manage multiple Tomcat instances independently of the system-wide Tomcat installation. -USAGE ------ +== USAGE To create a new Tomcat instance, specify the target directory where the instance should be created. This directory **must not already exist**, as the script will create it. If no additional options are provided, the instance will be created with **default** ports and settings. -OPTIONS -------- - +== OPTIONS *-p *:: Set the TCP port for the default HTTP connector. The default is `8080`. @@ -45,41 +39,36 @@ Set the shutdown keyword. When sent to the control port, this triggers a gracefu *-h, --help*:: Display usage information and exit. -EXAMPLES --------- +== EXAMPLES Create a Tomcat instance in `~/mytomcat` using default ports: ----- + $ tomcat-user-instance-create ~/mytomcat ----- Create an instance with a custom HTTP and control port: ----- + $ tomcat-user-instance-create -p 9090 -c 9005 ~/mytomcat ----- Create an instance with a custom shutdown keyword: ----- -$ tomcat-user-instance-create -w "STOPNOW" ~/mytomcat ----- -NOTES ------ +$ tomcat-user-instance-create -w "STOPNOW" ~/mytomcat + +== NOTES - Ensure that the selected HTTP and control ports are not already in use. - Ports **below 1024** require root privileges. - The created instance is independent of the system-wide Tomcat installation. -FILES ------ +== FILES The script generates a directory structure similar to: + ---- DIRECTORYNAME/ -│── bin/ -│ ├── startup.sh -│ ├── shutdown.sh -│── conf/ -│── logs/ -│── webapps/ -│── work/ -│── temp/ -│── lib/ +|-- bin/ +| |-- startup.sh +| |-- shutdown.sh +|-- conf/ +|-- logs/ +|-- webapps/ +|-- work/ +|-- temp/ +|-- lib/ ---- From 07f14cc8f87a7cca1ccbf054cda88a4dc1f5a7c6 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Fri, 7 Mar 2025 16:31:23 +0200 Subject: [PATCH 078/124] Update to 10.1.36 and verify signatures as suggested in the Fedora Packaging Guidelines https://docs.fedoraproject.org/en-US/packaging-guidelines/#_verifying_signatures --- .gitignore | 2 +- KEYS | 562 ++++++++++++++++++++++++++++++++++++++++++++++++++++ sources | 3 +- tomcat.spec | 10 +- 4 files changed, 572 insertions(+), 5 deletions(-) create mode 100644 KEYS diff --git a/.gitignore b/.gitignore index 471c3e4..312c881 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ -apache-tomcat-*-src.tar.gz +apache-tomcat-*-src.tar.gz* results_tomcat tomcat*.src.rpm apache-tomcat-*-src/ diff --git a/KEYS b/KEYS new file mode 100644 index 0000000..6b7231f --- /dev/null +++ b/KEYS @@ -0,0 +1,562 @@ +This file contains the PGP&GPG keys of various Apache developers. +Please don't use them for email unless you have to. Their main +purpose is code signing. + +Apache users: pgp < KEYS +Apache developers: + (pgpk -ll && pgpk -xa ) >> this file. + or + (gpg --fingerprint --list-sigs + && gpg --armor --export ) >> this file. + +Apache developers: please ensure that your key is also available via the +PGP keyservers (such as pgpkeys.mit.edu). + + +pub 4096R/2F6059E7 2009-09-18 + Key fingerprint = A9C5 DF4D 22E9 9998 D987 5A51 10C0 1C5A 2F60 59E7 +uid Mark E D Thomas +sub 4096R/5E763BEC 2009-09-18 + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Comment: GPGTools - http://gpgtools.org + +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 +c3EtcnwlXI07qk8nmCl1XudlS5KHeJ5axWLEDNJCvEuJGy4moaFllwmTUtxDzRK/ +zG6QSJEPfH8VZiEl6HBpgzlBB5aToxc+Wy7UpGzwaNrA6KvwSaB+jSxrZYtHbwBq +2U3ttmamynBF1izPuOeJAn4EEAECAGgFAksM3mcgHFNhbmRlciBUZW1tZSA8c2Fu +ZGVyQHRlbW1lLm5ldD4iHFNhbmRlciBUZW1tZSA8c2N0ZW1tZUBhcGFjaGUub3Jn +Ph0cU2FuZGVyIFRlbW1lIDxzYW5kZXJAbWUuY29tPgAKCRCbuGOw9Ru4igbUD/9+ ++F4uqkO+F6g1QNiyFM47K1NaFLga/lNp72mOOIlZMORXpBJGeL9DhbDvN5KIQqR4 +I5wCONGtzeU8P7M+uLapFZmofROABlACUeVhOPx8fOCeNz9xU4f33dKJJnAsIfis +SMMyJR9Xz/IbNWvM6Kb7hU+L86G2cZPD8uvZ7oHyY4wZWtjTHM0ne/usodJffxIj +oQFhn0vAC8hBNWStI8UUih+n+iqvvXA2cB9v3Ni3VjQOGLKSZ5Ke2jpKdYTl5zST +frHfjgjGvIdkWz0hbVMzL+urU9oIChBK6Nr3DxY/XvO8PmFGh7V+M9C/gahLCrNz +fD3vKGi7OYkp6dODPnREpOSZ7elGO5mGQnSosqzrLb7kw/vEobBbxsYDwxxl+ONZ +8yxUaBpvRIrwqNEwb1YxlMCLnpRs7TJxxitq+zF7F0MxB5sqdLHSNqxcfbxpTflz +Tn/H9h34aF7f4Qkn276XKIomhge4su7jxHNH/G9gTk6oicdalBFRMFwBRpaOivno +FmSGa1Yt7C1mBBQkRXjw52ZRx8MHKnccNNgpk5Xc7+VT9nqmoulq1JfzLsrtu4D1 +TaleWOVN4X4FYk3S2VWxLV5dhmuCy7hP0ZsXOTBjLXC5wMxJcp7I3IlIx39a6U7O +vhWbguPxyXR3AjBUsMRfO0pGZKXxDI3N+yHOWAtDcokCkwQQAQIAfQUCTNK0KDUc +SmltIEphZ2llbHNraSAoUmVsZWFzZSBTaWduaW5nIEtleSkgPGppbUBhcGFjaGUu +b3JnPiAcSmltIEphZ2llbHNraSA8amltQGphZ3VORVQuY29tPh8cSmltIEphZ2ll +bHNraSA8amltQGppbWphZy5jb20+AAoJEDTqduZ5FIWo/wEP/immECQXMIMQ9zj7 +4RU2R6YV7Slzc3YATfjwOgOwzQ3qF+UTSHui7eiYoHOwRK0OTKW6fe7bh9/XeWLB +sglUl+RNuvCNHAQNg9/p7x9mJL05e3OnGpVLVnq/yQezCWo1GWIPxodwmoyI2C3S +iUapfKN1q0Ml6nwZOyHsgNCFYDVhmtEnIcK7/PXLpeYTpTBuXETZZQY++XyZDiVI +le2W3uxrY0k8zVPvGSXGIh2iHtAuCrJoNKY+webEe5QVNoAYnNyu5de+50gpQOr+ +wYsvuf7S1MAPAX2L48U/JvpBfDikZR8qujvCDAAe0bnom/Ov/eWtnONi4hpsD4T3 +kcElxWOph3mEm1YUksGmoWE0FvE6o7r04XF+VrIA/YwcgC5wGgGmYFU4DR384hMZ +1EMAsd8cKdYBja/PA4BTcA6Vc0uJVFaB8o117m7r7sHKRsD7CHbbKcK8ZtRNDQa3 +SzTMqLhsRDRl5wp9Bwq6l++BKPpvEnpbs8SdW+TxrxpM/0aIhQ6ZS5RKJvhZK3Ap +3cgYBVW23CwPtVc+40/t8XqBRRlzbLdfWhEC+FU4f9RHS+DQRFSxl/xXeLtDBH75 +1WbhkRIRTktQxapEDuRFfd02Oeo356/r0TYUQHL4bwYEbTBm+HO1KJn64BCaUMOU +pW881K8SHQaHMr1iiQUpvMkTcofRiQKpBBABAgCTBQJM0uOxIBxTYW5kZXIgVGVt +bWUgPHNhbmRlckB0ZW1tZS5uZXQ+IhxTYW5kZXIgVGVtbWUgPHNjdGVtbWVAYXBh +Y2hlLm9yZz4dHFNhbmRlciBUZW1tZSA8c2FuZGVyQG1lLmNvbT4qHFNhbmRlciBU +ZW1tZSA8c2N0ZW1tZUBrZXlzaW50aGVjbG91ZC5jb20+AAoJEJu4Y7D1G7iKG0YP +/3AweZFnchITlhDdEkozl8M89VZGTBqfU6Rg7mNxL/HDnJRtBBGXmSQ5NLygX+kS +PKci3KRbjbeVEmEcWs/ZfzxN4gR+6y8ohUOaA0UDrZYctYkzG1d7HbkcM1lmvtde +Gelj1j/+eu4LRu5h9oczkqRnWV5xnqz7xsEH9Rrcgm39RpNzFf43Joo25iqdVGk4 +yBVjoHQsnD1qZwdZQ0EHxYozNkGfa6j7VXAzCYVstfRMPGKrYH/xRg2jNy750z/p +apgT3GXbpvcB9Z3gj2LRn+FKLxoH2WLf2DabdzyZz9KXfnG4ZeOd2BrFXexKT2MQ +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 +yZUcTCEB33B2jQ9z0XUEp+6B2F5iZQ== +=4AB7 +-----END PGP PUBLIC KEY BLOCK----- +pub rsa4096 2012-05-08 [SCEA] + 5C3C 5F3E 314C 8662 92F3 59A8 F3AD 5C94 A67F 707E +uid [ultimate] Christopher Schultz +uid [ultimate] Christopher Schultz +uid [ultimate] Christopher Schultz +uid [ultimate] Christopher Schultz +sub rsa4096 2012-05-08 [SEA] + +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +NwUqv9cUGhf+Di0nAX1diWxfd7DdEi8= +=6zfV +-----END PGP PUBLIC KEY BLOCK----- diff --git a/sources b/sources index 1bac248..df42da2 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ -SHA512 (apache-tomcat-10.1.34-src.tar.gz) = 0124d92eb1d184bdce1a50d5934958a0c796460a7157a8622aeee2b21060f5377198939a0260285bcdaa25cea42b880cb97575469a63f7b33ec22d532927e6ca +SHA512 (apache-tomcat-10.1.36-src.tar.gz) = 18123ea1639733f14cf0b1ca0df8255b8d69abc7dd19cad10ad51f4f1f1c16f8f08fba668101169df68d23400f75f3aacab9040edba9330b78939b7c6399ae10 +SHA512 (apache-tomcat-10.1.36-src.tar.gz.asc) = 22153e1d7797cfb519f7df0968a60f2b1a39de156cd53011fba32c4e51a61e7f8fe4a4b75b673bd5611485f4ef1ca50e43f08d7d09925731253dc114ba0221e1 diff --git a/tomcat.spec b/tomcat.spec index b43b30a..792eb92 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -1,7 +1,7 @@ %global jspspec 3.1 %global major_version 10 %global minor_version 1 -%global micro_version 34 +%global micro_version 36 %global packdname apache-tomcat-%{version}-src %global servletspec 6.0 %global elspec 5.0 @@ -34,8 +34,9 @@ Summary: Apache Tomcat - Servlet and JSP engine for system-wide deployment License: Apache-2.0 URL: http://tomcat.apache.org/ Source0: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz -# Source1: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz -# Source2: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz +Source1: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz.asc +# https://www.apache.org/dist/tomcat/tomcat-%{major_version}/KEYS +Source2: KEYS Source3: %{name}-%{major_version}.%{minor_version}.conf Source4: %{name}-%{major_version}.%{minor_version}.service Source5: %{name}-%{major_version}.%{minor_version}-locate-java.sh @@ -63,6 +64,7 @@ BuildArch: noarch # See: https://docs.fedoraproject.org/en-US/packaging-guidelines/Java/#_architecture_support ExclusiveArch: %{java_arches} +BuildRequires: gnupg2 BuildRequires: ant BuildRequires: ecj BuildRequires: findutils @@ -184,6 +186,8 @@ Conflicts: tomcat-el-3.0-api Apache Tomcat EL API Implementation Classes. %prep +%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}' + %setup -q -n %{packdname} # remove pre-built binaries and windows files find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name "*.gz" -o \ From 1a5e851e22de0c608cf33d49391f76a21297df84 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Fri, 7 Mar 2025 17:11:40 +0200 Subject: [PATCH 079/124] Add symlinks of tomcat-bootstrap.jar and tomcat-juli.jar in libdir --- tomcat.spec | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 792eb92..fc1a128 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -252,7 +252,6 @@ touch HACK %{__install} -d ${RPM_BUILD_ROOT}%{confdir}/Catalina/localhost %{__install} -d ${RPM_BUILD_ROOT}%{confdir}/conf.d /bin/echo "Place your custom *.conf files here. Shell expansion is supported." > ${RPM_BUILD_ROOT}%{confdir}/conf.d/README -# %{__install} -d ${RPM_BUILD_ROOT}%{libdir} %{__install} -d ${RPM_BUILD_ROOT}%{logdir} %{__install} -d ${RPM_BUILD_ROOT}%{cachedir} @@ -305,8 +304,8 @@ sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat-juli.pom # bootstrap does not have a pom, generate one %mvn_artifact 'org.apache.tomcat:tomcat-bootstrap:%{version}' output/build/bin/bootstrap.jar -%mvn_file org.apache.tomcat:tomcat-bootstrap tomcat/tomcat-bootstrap -%mvn_file org.apache.tomcat:tomcat-juli tomcat/tomcat-juli +%mvn_file org.apache.tomcat:tomcat-bootstrap tomcat/tomcat-bootstrap %{libdir}/tomcat-bootstrap +%mvn_file org.apache.tomcat:tomcat-juli tomcat/tomcat-juli %{libdir}/tomcat-juli # tomcat-parent pom sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat.pom From 524080c49f7f59c25ee80580deafa3dadc9b6858 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Wed, 26 Mar 2025 15:53:05 +0200 Subject: [PATCH 080/124] Fix script calling from service file --- tomcat-10.1.service | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tomcat-10.1.service b/tomcat-10.1.service index 55639b2..d510faf 100644 --- a/tomcat-10.1.service +++ b/tomcat-10.1.service @@ -15,7 +15,7 @@ Environment="JAVA_OPTS=-Djava.awt.headless=true" # Lifecycle Type=simple -ExecStart=/bin/sh /usr/libexec/tomcat/tomcat-start.sh +ExecStart=/bin/sh /usr/libexec/tomcat/tomcat-run.sh SuccessExitStatus=143 Restart=on-abort From 9e1550b6088a9f5ae25174fc4158ab937f1812db Mon Sep 17 00:00:00 2001 From: dsoumis Date: Wed, 26 Mar 2025 15:54:17 +0200 Subject: [PATCH 081/124] - Enhancing comments - Some mvn_file fixes - Remove daemon.sh as commons-daemon is not packaged --- tomcat.spec | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index fc1a128..d747252 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -35,7 +35,7 @@ License: Apache-2.0 URL: http://tomcat.apache.org/ Source0: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz Source1: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz.asc -# https://www.apache.org/dist/tomcat/tomcat-%{major_version}/KEYS +# https://www.apache.org/dist/tomcat/tomcat-10/KEYS Source2: KEYS Source3: %{name}-%{major_version}.%{minor_version}.conf Source4: %{name}-%{major_version}.%{minor_version}.service @@ -270,7 +270,7 @@ touch HACK asciidoctor -b manpage -D ${RPM_BUILD_ROOT}%{_mandir}/man1 -o tomcat-user-instance-create.1 %{SOURCE10} for jar in output/build/lib/*.jar; do - # Skip Jar if empty, applies to tomcat-coyote-ffm.jar atm + # Skip Jar if empty, applies to tomcat-coyote-ffm.jar atm since it requires to be built with Java>=23 jar tf ${jar} | grep -E -q '.*\.class' || continue jarname=$(basename $jar .jar) @@ -304,8 +304,8 @@ sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat-juli.pom # bootstrap does not have a pom, generate one %mvn_artifact 'org.apache.tomcat:tomcat-bootstrap:%{version}' output/build/bin/bootstrap.jar -%mvn_file org.apache.tomcat:tomcat-bootstrap tomcat/tomcat-bootstrap %{libdir}/tomcat-bootstrap -%mvn_file org.apache.tomcat:tomcat-juli tomcat/tomcat-juli %{libdir}/tomcat-juli +%mvn_file org.apache.tomcat:tomcat-bootstrap tomcat/tomcat-bootstrap +%mvn_file org.apache.tomcat:tomcat-juli tomcat/tomcat-juli # tomcat-parent pom sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat.pom @@ -326,6 +326,7 @@ jar ufm ${RPM_BUILD_ROOT}%{libdir}/servlet-api.jar <(echo "JavaPackages-GroupId: # move things into place pushd output/build + rm -f bin/daemon.sh %{__cp} -ap bin/* ${RPM_BUILD_ROOT}%{bindir} %{__cp} -ap conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{confdir} %{__cp} -ap conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{userinstancedir}/conf From 5c8a69decae8a9f5af65d3bfaf68e9d38c5afe20 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 7 Apr 2025 16:50:23 +0300 Subject: [PATCH 082/124] - Fixes in tomcat-10.1-user-instance-create.sh - Add required ReadWritePaths in service file. - Disable shutdown port when tomcat runs as a service. - Add webapps-javaee directory - Remove .sh suffix from binary executable - Link require libraries for migration tool to work as expected. --- tomcat-10.1-user-instance-create.sh | 3 +-- tomcat-10.1.service | 2 ++ tomcat.spec | 18 +++++++++++++++--- 3 files changed, 18 insertions(+), 5 deletions(-) diff --git a/tomcat-10.1-user-instance-create.sh b/tomcat-10.1-user-instance-create.sh index 4854928..12aa1d8 100644 --- a/tomcat-10.1-user-instance-create.sh +++ b/tomcat-10.1-user-instance-create.sh @@ -120,12 +120,11 @@ mkdir -p "${TARGET}" FULLTARGET=$(cd "${TARGET}" > /dev/null && pwd) -mkdir "${TARGET}/conf" mkdir "${TARGET}/logs" mkdir "${TARGET}/webapps" mkdir "${TARGET}/work" mkdir "${TARGET}/temp" -cp -r "${CATALINA_HOME}/user-instance/*" "${TARGET}" +cp -r ${CATALINA_HOME}/user-instance/* "${TARGET}" sed -i -e "s/Connector port=\"8080\"/Connector port=\"${HPORT}\"/;s/Server port=\"-1\" shutdown=\"SHUTDOWN\"/Server port=\"${CPORT}\" shutdown=\"${CWORD}\"/" "${TARGET}/conf/server.xml" diff --git a/tomcat-10.1.service b/tomcat-10.1.service index d510faf..16727db 100644 --- a/tomcat-10.1.service +++ b/tomcat-10.1.service @@ -33,7 +33,9 @@ CacheDirectoryMode=750 ProtectSystem=strict ReadWritePaths=/etc/tomcat/Catalina/ ReadWritePaths=/var/lib/tomcat/webapps/ +ReadWritePaths=/var/lib/tomcat/webapps-javaee/ ReadWritePaths=/var/log/tomcat/ +ReadWritePaths=/tmp [Install] WantedBy=multi-user.target diff --git a/tomcat.spec b/tomcat.spec index d747252..c4e6f7d 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -73,7 +73,7 @@ BuildRequires: javapackages-local BuildRequires: aqute-bnd BuildRequires: tomcat-jakartaee-migration BuildRequires: systemd -BuildRequires: rubygem-asciidoctor +BuildRequires: rubygem-asciidoctor Requires: %{name}-common = %{epoch}:%{version}-%{release} Requires: systemd @@ -215,6 +215,8 @@ cat >tomcat.sysusers.conf < Date: Tue, 8 Apr 2025 13:32:29 +0300 Subject: [PATCH 083/124] Define the provision method for tests --- plans/smoke.fmf | 3 +++ 1 file changed, 3 insertions(+) diff --git a/plans/smoke.fmf b/plans/smoke.fmf index 039f41a..db364b6 100644 --- a/plans/smoke.fmf +++ b/plans/smoke.fmf @@ -3,3 +3,6 @@ discover: url: https://src.fedoraproject.org/tests/tomcat execute: how: tmt +provision: + how: virtual + image: fedora:rawhide From afc96310f4e02deb7663335e772e64aea563ef5e Mon Sep 17 00:00:00 2001 From: dsoumis Date: Fri, 25 Apr 2025 14:37:55 +0300 Subject: [PATCH 084/124] Fix gating rules --- gating.yaml | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/gating.yaml b/gating.yaml index e49f5a7..19d2681 100644 --- a/gating.yaml +++ b/gating.yaml @@ -1,12 +1,16 @@ --- !Policy product_versions: - - fedora-* -decision_contexts: - - bodhi_update_push_testing - - bodhi_update_push_stable + - fedora-rawhide +decision_context: bodhi_update_push_stable subject_type: koji_build rules: - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional} - - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis} +--- !Policy +product_versions: + - fedora-* +decision_context: bodhi_update_push_stable +subject_type: koji_build +rules: - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional} - - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/smoke.functional} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/smoke.functional} \ No newline at end of file From 153431058bcb850f6b15790aa2bdf675cc4372d9 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Fri, 25 Apr 2025 14:46:54 +0300 Subject: [PATCH 085/124] Fix gating rules --- gating.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gating.yaml b/gating.yaml index 19d2681..da1c0b0 100644 --- a/gating.yaml +++ b/gating.yaml @@ -5,6 +5,7 @@ decision_context: bodhi_update_push_stable subject_type: koji_build rules: - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional} + - !PassingTestCaseRule { test_case_name: fedora-ci.koji-build./plans/smoke.functional } --- !Policy product_versions: - fedora-* @@ -12,5 +13,4 @@ decision_context: bodhi_update_push_stable subject_type: koji_build rules: - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional} - - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis} - - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/smoke.functional} \ No newline at end of file + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis} \ No newline at end of file From 5a663f3961cedb2db7e53dd78a716072909b072b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 25 Jul 2025 19:25:36 +0000 Subject: [PATCH 086/124] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From 5b42bbd1ae24e9a6de149d12e7428c913f6550dd Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:03 +0300 Subject: [PATCH 087/124] Revert "Fix gating rules" This reverts commit 153431058bcb850f6b15790aa2bdf675cc4372d9. --- gating.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gating.yaml b/gating.yaml index da1c0b0..19d2681 100644 --- a/gating.yaml +++ b/gating.yaml @@ -5,7 +5,6 @@ decision_context: bodhi_update_push_stable subject_type: koji_build rules: - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional} - - !PassingTestCaseRule { test_case_name: fedora-ci.koji-build./plans/smoke.functional } --- !Policy product_versions: - fedora-* @@ -13,4 +12,5 @@ decision_context: bodhi_update_push_stable subject_type: koji_build rules: - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional} - - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis} \ No newline at end of file + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/smoke.functional} \ No newline at end of file From 0d75b57e96da7e74fd6097aecde7436907d3d8c4 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:03 +0300 Subject: [PATCH 088/124] Revert "Fix gating rules" This reverts commit afc96310f4e02deb7663335e772e64aea563ef5e. --- gating.yaml | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/gating.yaml b/gating.yaml index 19d2681..e49f5a7 100644 --- a/gating.yaml +++ b/gating.yaml @@ -1,16 +1,12 @@ --- !Policy -product_versions: - - fedora-rawhide -decision_context: bodhi_update_push_stable -subject_type: koji_build -rules: - - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional} ---- !Policy product_versions: - fedora-* -decision_context: bodhi_update_push_stable +decision_contexts: + - bodhi_update_push_testing + - bodhi_update_push_stable subject_type: koji_build rules: - - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional} - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis} - - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/smoke.functional} \ No newline at end of file + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/smoke.functional} From f771c96d92fb9911bff4f6b33c2288b55b6536a9 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:03 +0300 Subject: [PATCH 089/124] Revert "Define the provision method for tests" This reverts commit eca613a2ab4f3a2ad23ab89e4bb61cc0f11b0998. --- plans/smoke.fmf | 3 --- 1 file changed, 3 deletions(-) diff --git a/plans/smoke.fmf b/plans/smoke.fmf index db364b6..039f41a 100644 --- a/plans/smoke.fmf +++ b/plans/smoke.fmf @@ -3,6 +3,3 @@ discover: url: https://src.fedoraproject.org/tests/tomcat execute: how: tmt -provision: - how: virtual - image: fedora:rawhide From 527e2158f3822e8f06485d65db3dad397a34d2bc Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:03 +0300 Subject: [PATCH 090/124] Revert "- Fixes in tomcat-10.1-user-instance-create.sh" This reverts commit 5c8a69decae8a9f5af65d3bfaf68e9d38c5afe20. --- tomcat-10.1-user-instance-create.sh | 3 ++- tomcat-10.1.service | 2 -- tomcat.spec | 18 +++--------------- 3 files changed, 5 insertions(+), 18 deletions(-) diff --git a/tomcat-10.1-user-instance-create.sh b/tomcat-10.1-user-instance-create.sh index 12aa1d8..4854928 100644 --- a/tomcat-10.1-user-instance-create.sh +++ b/tomcat-10.1-user-instance-create.sh @@ -120,11 +120,12 @@ mkdir -p "${TARGET}" FULLTARGET=$(cd "${TARGET}" > /dev/null && pwd) +mkdir "${TARGET}/conf" mkdir "${TARGET}/logs" mkdir "${TARGET}/webapps" mkdir "${TARGET}/work" mkdir "${TARGET}/temp" -cp -r ${CATALINA_HOME}/user-instance/* "${TARGET}" +cp -r "${CATALINA_HOME}/user-instance/*" "${TARGET}" sed -i -e "s/Connector port=\"8080\"/Connector port=\"${HPORT}\"/;s/Server port=\"-1\" shutdown=\"SHUTDOWN\"/Server port=\"${CPORT}\" shutdown=\"${CWORD}\"/" "${TARGET}/conf/server.xml" diff --git a/tomcat-10.1.service b/tomcat-10.1.service index 16727db..d510faf 100644 --- a/tomcat-10.1.service +++ b/tomcat-10.1.service @@ -33,9 +33,7 @@ CacheDirectoryMode=750 ProtectSystem=strict ReadWritePaths=/etc/tomcat/Catalina/ ReadWritePaths=/var/lib/tomcat/webapps/ -ReadWritePaths=/var/lib/tomcat/webapps-javaee/ ReadWritePaths=/var/log/tomcat/ -ReadWritePaths=/tmp [Install] WantedBy=multi-user.target diff --git a/tomcat.spec b/tomcat.spec index c4e6f7d..d747252 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -73,7 +73,7 @@ BuildRequires: javapackages-local BuildRequires: aqute-bnd BuildRequires: tomcat-jakartaee-migration BuildRequires: systemd -BuildRequires: rubygem-asciidoctor +BuildRequires: rubygem-asciidoctor Requires: %{name}-common = %{epoch}:%{version}-%{release} Requires: systemd @@ -215,8 +215,6 @@ cat >tomcat.sysusers.conf < Date: Mon, 28 Jul 2025 16:09:03 +0300 Subject: [PATCH 091/124] Revert "- Enhancing comments" This reverts commit 9e1550b6088a9f5ae25174fc4158ab937f1812db. --- tomcat.spec | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index d747252..fc1a128 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -35,7 +35,7 @@ License: Apache-2.0 URL: http://tomcat.apache.org/ Source0: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz Source1: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz.asc -# https://www.apache.org/dist/tomcat/tomcat-10/KEYS +# https://www.apache.org/dist/tomcat/tomcat-%{major_version}/KEYS Source2: KEYS Source3: %{name}-%{major_version}.%{minor_version}.conf Source4: %{name}-%{major_version}.%{minor_version}.service @@ -270,7 +270,7 @@ touch HACK asciidoctor -b manpage -D ${RPM_BUILD_ROOT}%{_mandir}/man1 -o tomcat-user-instance-create.1 %{SOURCE10} for jar in output/build/lib/*.jar; do - # Skip Jar if empty, applies to tomcat-coyote-ffm.jar atm since it requires to be built with Java>=23 + # Skip Jar if empty, applies to tomcat-coyote-ffm.jar atm jar tf ${jar} | grep -E -q '.*\.class' || continue jarname=$(basename $jar .jar) @@ -304,8 +304,8 @@ sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat-juli.pom # bootstrap does not have a pom, generate one %mvn_artifact 'org.apache.tomcat:tomcat-bootstrap:%{version}' output/build/bin/bootstrap.jar -%mvn_file org.apache.tomcat:tomcat-bootstrap tomcat/tomcat-bootstrap -%mvn_file org.apache.tomcat:tomcat-juli tomcat/tomcat-juli +%mvn_file org.apache.tomcat:tomcat-bootstrap tomcat/tomcat-bootstrap %{libdir}/tomcat-bootstrap +%mvn_file org.apache.tomcat:tomcat-juli tomcat/tomcat-juli %{libdir}/tomcat-juli # tomcat-parent pom sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat.pom @@ -326,7 +326,6 @@ jar ufm ${RPM_BUILD_ROOT}%{libdir}/servlet-api.jar <(echo "JavaPackages-GroupId: # move things into place pushd output/build - rm -f bin/daemon.sh %{__cp} -ap bin/* ${RPM_BUILD_ROOT}%{bindir} %{__cp} -ap conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{confdir} %{__cp} -ap conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{userinstancedir}/conf From 177c1aa024f5870b1124abe200353c26940522ce Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:03 +0300 Subject: [PATCH 092/124] Revert "Fix script calling from service file" This reverts commit 524080c49f7f59c25ee80580deafa3dadc9b6858. --- tomcat-10.1.service | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tomcat-10.1.service b/tomcat-10.1.service index d510faf..55639b2 100644 --- a/tomcat-10.1.service +++ b/tomcat-10.1.service @@ -15,7 +15,7 @@ Environment="JAVA_OPTS=-Djava.awt.headless=true" # Lifecycle Type=simple -ExecStart=/bin/sh /usr/libexec/tomcat/tomcat-run.sh +ExecStart=/bin/sh /usr/libexec/tomcat/tomcat-start.sh SuccessExitStatus=143 Restart=on-abort From 8d8a869c2eee707ace0db3f149d839798fd4ef6f Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:03 +0300 Subject: [PATCH 093/124] Revert "Add symlinks of tomcat-bootstrap.jar and tomcat-juli.jar in libdir" This reverts commit 1a5e851e22de0c608cf33d49391f76a21297df84. --- tomcat.spec | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index fc1a128..792eb92 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -252,6 +252,7 @@ touch HACK %{__install} -d ${RPM_BUILD_ROOT}%{confdir}/Catalina/localhost %{__install} -d ${RPM_BUILD_ROOT}%{confdir}/conf.d /bin/echo "Place your custom *.conf files here. Shell expansion is supported." > ${RPM_BUILD_ROOT}%{confdir}/conf.d/README +# %{__install} -d ${RPM_BUILD_ROOT}%{libdir} %{__install} -d ${RPM_BUILD_ROOT}%{logdir} %{__install} -d ${RPM_BUILD_ROOT}%{cachedir} @@ -304,8 +305,8 @@ sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat-juli.pom # bootstrap does not have a pom, generate one %mvn_artifact 'org.apache.tomcat:tomcat-bootstrap:%{version}' output/build/bin/bootstrap.jar -%mvn_file org.apache.tomcat:tomcat-bootstrap tomcat/tomcat-bootstrap %{libdir}/tomcat-bootstrap -%mvn_file org.apache.tomcat:tomcat-juli tomcat/tomcat-juli %{libdir}/tomcat-juli +%mvn_file org.apache.tomcat:tomcat-bootstrap tomcat/tomcat-bootstrap +%mvn_file org.apache.tomcat:tomcat-juli tomcat/tomcat-juli # tomcat-parent pom sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat.pom From 0559a64142d685421e763139a2ab66a75118a52d Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:03 +0300 Subject: [PATCH 094/124] Revert "Update to 10.1.36 and verify signatures as suggested in the Fedora Packaging Guidelines" This reverts commit 07f14cc8f87a7cca1ccbf054cda88a4dc1f5a7c6. --- .gitignore | 2 +- KEYS | 562 ---------------------------------------------------- sources | 3 +- tomcat.spec | 10 +- 4 files changed, 5 insertions(+), 572 deletions(-) delete mode 100644 KEYS diff --git a/.gitignore b/.gitignore index 312c881..471c3e4 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ -apache-tomcat-*-src.tar.gz* +apache-tomcat-*-src.tar.gz results_tomcat tomcat*.src.rpm apache-tomcat-*-src/ diff --git a/KEYS b/KEYS deleted file mode 100644 index 6b7231f..0000000 --- a/KEYS +++ /dev/null @@ -1,562 +0,0 @@ -This file contains the PGP&GPG keys of various Apache developers. -Please don't use them for email unless you have to. Their main -purpose is code signing. - -Apache users: pgp < KEYS -Apache developers: - (pgpk -ll && pgpk -xa ) >> this file. - or - (gpg --fingerprint --list-sigs - && gpg --armor --export ) >> this file. - -Apache developers: please ensure that your key is also available via the -PGP keyservers (such as pgpkeys.mit.edu). - - -pub 4096R/2F6059E7 2009-09-18 - Key fingerprint = A9C5 DF4D 22E9 9998 D987 5A51 10C0 1C5A 2F60 59E7 -uid Mark E D Thomas -sub 4096R/5E763BEC 2009-09-18 - ------BEGIN PGP PUBLIC KEY BLOCK----- -Comment: GPGTools - http://gpgtools.org - -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 -c3EtcnwlXI07qk8nmCl1XudlS5KHeJ5axWLEDNJCvEuJGy4moaFllwmTUtxDzRK/ -zG6QSJEPfH8VZiEl6HBpgzlBB5aToxc+Wy7UpGzwaNrA6KvwSaB+jSxrZYtHbwBq -2U3ttmamynBF1izPuOeJAn4EEAECAGgFAksM3mcgHFNhbmRlciBUZW1tZSA8c2Fu -ZGVyQHRlbW1lLm5ldD4iHFNhbmRlciBUZW1tZSA8c2N0ZW1tZUBhcGFjaGUub3Jn -Ph0cU2FuZGVyIFRlbW1lIDxzYW5kZXJAbWUuY29tPgAKCRCbuGOw9Ru4igbUD/9+ -+F4uqkO+F6g1QNiyFM47K1NaFLga/lNp72mOOIlZMORXpBJGeL9DhbDvN5KIQqR4 -I5wCONGtzeU8P7M+uLapFZmofROABlACUeVhOPx8fOCeNz9xU4f33dKJJnAsIfis -SMMyJR9Xz/IbNWvM6Kb7hU+L86G2cZPD8uvZ7oHyY4wZWtjTHM0ne/usodJffxIj -oQFhn0vAC8hBNWStI8UUih+n+iqvvXA2cB9v3Ni3VjQOGLKSZ5Ke2jpKdYTl5zST -frHfjgjGvIdkWz0hbVMzL+urU9oIChBK6Nr3DxY/XvO8PmFGh7V+M9C/gahLCrNz -fD3vKGi7OYkp6dODPnREpOSZ7elGO5mGQnSosqzrLb7kw/vEobBbxsYDwxxl+ONZ -8yxUaBpvRIrwqNEwb1YxlMCLnpRs7TJxxitq+zF7F0MxB5sqdLHSNqxcfbxpTflz -Tn/H9h34aF7f4Qkn276XKIomhge4su7jxHNH/G9gTk6oicdalBFRMFwBRpaOivno -FmSGa1Yt7C1mBBQkRXjw52ZRx8MHKnccNNgpk5Xc7+VT9nqmoulq1JfzLsrtu4D1 -TaleWOVN4X4FYk3S2VWxLV5dhmuCy7hP0ZsXOTBjLXC5wMxJcp7I3IlIx39a6U7O -vhWbguPxyXR3AjBUsMRfO0pGZKXxDI3N+yHOWAtDcokCkwQQAQIAfQUCTNK0KDUc -SmltIEphZ2llbHNraSAoUmVsZWFzZSBTaWduaW5nIEtleSkgPGppbUBhcGFjaGUu -b3JnPiAcSmltIEphZ2llbHNraSA8amltQGphZ3VORVQuY29tPh8cSmltIEphZ2ll -bHNraSA8amltQGppbWphZy5jb20+AAoJEDTqduZ5FIWo/wEP/immECQXMIMQ9zj7 -4RU2R6YV7Slzc3YATfjwOgOwzQ3qF+UTSHui7eiYoHOwRK0OTKW6fe7bh9/XeWLB -sglUl+RNuvCNHAQNg9/p7x9mJL05e3OnGpVLVnq/yQezCWo1GWIPxodwmoyI2C3S -iUapfKN1q0Ml6nwZOyHsgNCFYDVhmtEnIcK7/PXLpeYTpTBuXETZZQY++XyZDiVI -le2W3uxrY0k8zVPvGSXGIh2iHtAuCrJoNKY+webEe5QVNoAYnNyu5de+50gpQOr+ -wYsvuf7S1MAPAX2L48U/JvpBfDikZR8qujvCDAAe0bnom/Ov/eWtnONi4hpsD4T3 -kcElxWOph3mEm1YUksGmoWE0FvE6o7r04XF+VrIA/YwcgC5wGgGmYFU4DR384hMZ -1EMAsd8cKdYBja/PA4BTcA6Vc0uJVFaB8o117m7r7sHKRsD7CHbbKcK8ZtRNDQa3 -SzTMqLhsRDRl5wp9Bwq6l++BKPpvEnpbs8SdW+TxrxpM/0aIhQ6ZS5RKJvhZK3Ap -3cgYBVW23CwPtVc+40/t8XqBRRlzbLdfWhEC+FU4f9RHS+DQRFSxl/xXeLtDBH75 -1WbhkRIRTktQxapEDuRFfd02Oeo356/r0TYUQHL4bwYEbTBm+HO1KJn64BCaUMOU -pW881K8SHQaHMr1iiQUpvMkTcofRiQKpBBABAgCTBQJM0uOxIBxTYW5kZXIgVGVt -bWUgPHNhbmRlckB0ZW1tZS5uZXQ+IhxTYW5kZXIgVGVtbWUgPHNjdGVtbWVAYXBh -Y2hlLm9yZz4dHFNhbmRlciBUZW1tZSA8c2FuZGVyQG1lLmNvbT4qHFNhbmRlciBU -ZW1tZSA8c2N0ZW1tZUBrZXlzaW50aGVjbG91ZC5jb20+AAoJEJu4Y7D1G7iKG0YP -/3AweZFnchITlhDdEkozl8M89VZGTBqfU6Rg7mNxL/HDnJRtBBGXmSQ5NLygX+kS -PKci3KRbjbeVEmEcWs/ZfzxN4gR+6y8ohUOaA0UDrZYctYkzG1d7HbkcM1lmvtde -Gelj1j/+eu4LRu5h9oczkqRnWV5xnqz7xsEH9Rrcgm39RpNzFf43Joo25iqdVGk4 -yBVjoHQsnD1qZwdZQ0EHxYozNkGfa6j7VXAzCYVstfRMPGKrYH/xRg2jNy750z/p -apgT3GXbpvcB9Z3gj2LRn+FKLxoH2WLf2DabdzyZz9KXfnG4ZeOd2BrFXexKT2MQ -TqJIzIAmXU2XgXK2fHeofqTcKD63qgbg2EBg2m4/RvRgO81kCuO6Sq5UVhtyYSk6 -X5O/Z3O4WEtyp2bePWC6tP3x/5ks8OlUDF7Rw2AOUCyU96aa/C3MwrV/cJrbESbo -ZJCnSsn0DMj+96J0qsm49N6nj9xo1VPWE1kfl2+K2uW89IBun5/pTDE5C3m9Qvff -HSTMDY37bVwfoCzfNiOUa+BDQLM7gkjATzbmvY6d4UMnXjQ9GKp/v2Nsz+FV8HJ8 -RQI8yvPLI8hbleX0EJpvrUsLllZR76/IWxoNy7J1KiYD7yuqSoa3clCTPw8EVaAF -q5g64uFMHAADsFSWaID8umypkhH0imS8J4XwKPJfnCroiEYEEBEKAAYFAkzSGcIA -CgkQkdPrePiuutNirgCZAZorRS7z/JqyPwb2a4NgRrSSWXkAoIQxA4OqQQNgmJ/9 -rHQqbuJxkfwBiEYEEhECAAYFAlD3wYIACgkQn5i5pTzaZheV6wCfTLPa0d7TcY6Y -9AdwJfDJXqHDUCkAoJzDpnJgn6VIpXnaSQVAFbxre+VFiQEcBBABAgAGBQJPHwj7 -AAoJEKv3lK+rsTuD3AgH/2YNKl+dNEj/vzvQmvsCQTWXf3OycOiMVKj6nwoEGNzC -/1QTXdTZy+8ZaOg+dLoGnHMuj0TdwgjGPiN5uIWeLss9FIr2BkCJusi0sCINDTA+ -l0qduOY+mhvkw0xJ0SueR8Qn+PK7rxQwLVsScyw5n0mrPyt0ws4BZTiVdXglJxvQ -gseXjSGhgpwPKB7OKlpqvu7wyXe8Nnbxj369yJqZbyDZ6I6Sy4FjhBQGN+woRTyV -LlOoHLaIdstQZ6onUc+LpQj9mZuKt9L7AYJS7FBXRnLLeBdN7sghzotI+/SOv3dz -yX1Q1C7OgItTzgMqtfJKpRlnD7FtOhO4XYg+Sonzs0SJAhwEEAECAAYFAk3T3jsA -CgkQLAdUss4GkvPLsA/+MO159xG0ro1RUswS6xJ3xQms60TNsCuXE/Ty3EXWUV/t -KRcP8sHOcqaGkxwx0BHbUWCHiau7u34IRS6sacHHDcNfZDBpkHbqz+/1uTfODsKT -c0wje0PWWO+XUZTgYUTvcg9cmWqCvkEBoaXhoeYnse0E5bUO94h2gvxzMzs50PV7 -+VBK5VAI7o8b+RQ+pO2Roh8AoE8NNAzMLzZ2kg8lPhd0ibtOxR1zq5RVedLKX+hN -/k+Met/PbJb1CqzccFn6VAmrx76zJPwWO4faicU7UC6v07knmEPfBPyHMo3VdRQj -fAOCt4gmD6/29HuzgLgMNQ/jsVgxTSBymormd2LRUPLMpN+QcB+dZqYaSFi0JSA4 -wmWeIqrXT1PDIWL8XzlEelgZIape6gZcXl9/MpI6BC5IpJFDMYcRHBtSw2UO3jXr -uSilM7ly27FJViWtClIn0ZwjC3MHRExkOkc5uiNbR0DitgDIoIhe673y3NV9VphU -oY4vBFyYM9Q3P8RRS/QWqNw6zdWi2NZHLh9g8CMgxxSirSCmk5oVYSeYczL8v2bq -ceOLEUtkcM7wLQ5Vp6ALT1dLoxdIk2EzZ2Dg8kdjxTvh7XbApxe4AQ4CDPRO6Wef -gOgZJ95xVbKOZtGwpVsz7CJiK38k/Nuv7U7SXhBN5gzSn8Zi+v8UMhhrUn1ffpmJ -AhwEEAECAAYFAk3g95sACgkQGFJGyIKJNBe0ww//T5mReFaaKxP6Rt2rp8NTLkRO -lUk7dIrtljMJ54wGAlFk1CEVM2z68iiJXvHebHYOtj7pkq0kj85WzgZ7vjjXL8cW -HDiMY30fYLmzPj5Wu+qJyWmoo33F0pe6bTee0d5SyAaJ5O8UQ2PoXwJfFghp8iCt -jDhwqXMaz1mXOeFP2gVZD3lp32SrCpmBHwsTn8KsVdtmsY1FmFeIoEZCFTj7ct7I -wpjvCZ1GIBLh5iWECiW7uB31IjK5txCxQvs7Vzb7No4wvzxzDLKbF2O5iht+Zf9e -d+JVWnjf4limSDoZI9zo0e1bFwf4ud85UIsDa6kw0rc+VyiUu35+qn4/hg742pEv -c5BRTFfpQGVJno7QlqxWxYUAGDi/axHh279UGu5L0r/0sCnte/YDPupnIvM5cdei -5dpliN6MjZMLF9efLsP40dSUSAFXwMDutISXktWqSpnaSyqVxFgfieLRKCdXeUO5 -6LOBPD6ahw5SJIpr8H5Q3PA0/s7ipH85VLtgmxq4QCkXDdxFG9+Aj7RNjdlmKoBV -F6kPHgQtnYL9wdlvyk+G65FirZKD17N45UqU5Jpe+4fjQVg8rABPYn6f9iBsxrNa -yLECEn1WPjILwUp+afIaB0/Dl6leF/IjtmKQw2geJf2i6J0YbPn8F10c+9r71k+e -23A58eKO0fm2tHrX/v6JAhwEEAEIAAYFAk3iiCsACgkQQPReIWFFn3qvPA/9EDue -G9lfEJgz6BItHbVHC+CwKrBDqORayojJdgJPk7ugUO62iEITA54aClc2q/YK8wL4 -+AhmnCdp/8cQaC/KdyEQt+SHHh0faqnXcdTDPdXCkb4iwhssue+sUyBTAVo1Jwal -HjYGXqcy9AeuSXjnOIWCHeSoy4EMrfUngyTSIRJPgMh6xvDF7QIQx2mD3UPTrIM6 -iQK/TqZgr5VBZwRX+qgv0NERnTRfJoYG45WLrywF3WXa0JSpTjskg4s08U0zkD7r -5l/Rk1Q6teyc9RWEEmxBJhYCpSX/dwdm3cb/pMOMwiQD/m80c3+2r0STGrjjmo0m -5A42CLKWHD/4yL/Iw8e34Fhsu0KJsxZwgM9R2ov0Pm8fnKva0hUS+UPdn4/lEXQr -86RCGHyQrXDg1W70FHxlr+WAaaWHp83MeZ1CnjB3901Sj/L5URn9kHXLqDgo0ZRs -m/3P+S/T7PU9PJM1OWsaTViHsbT8dm1R9/QJq5y+KdcDI9ZlH5teG94bhY0pR935 -JXn5rkm1A7vtDIou4snrE7rg4rEGHFeRUO7NmneKaEH8s/LZmUb5mEh3NoY6NCjk -+z+dUw1IWaavCPZa8EN1PSjYudg6wRXOC7GioczLPSzD3tzS7N0rudOme5YGx/lK -U9XRaYMG2VSGJCuS/imSOkoAyOkMwelPH4GGAq6JAhwEEgEIAAYFAk8IouwACgkQ -xodfNUHO/eBW6RAAio14ecYMboqD3oJgS6RYd0wxPm2pfvyvi9NEYGdqYwZi8feo -GnZE4NeXeYZyHVR+5GHt6XIzwzUOvvZ4J0VN5AA9xnvtIrypScM/Z6OZzDLfq+PE -LNuWePT8XAJYFRFP/ic0y3TPdPixww7ZQTOjgBXgIgDAHCbJ+fAhhi70MkCpTfd5 -AEPJU4PhoXxckhdIx4DorvMlI87RpwZbMaKGDZxWew0eedUpPoGoCjzZ1Gwso7Fd -nCu5deIttEVP+wStiGahMn4VAWI0zjuUU8EpWW0vZ9dpiGQtJReiBzvH7NTYNTCG -MpodlqV9TR3HG2WYjAw22u7wWhat1HB+WIED5hzNI+x8NbnH2IT+3nISvnApzHMz -nIZTrIYyYCatZ3mPr18R/eUUoHjaJSo+IyfokqD5lvSnvogLlOjkPXF0HECBz6pF -SuEZWxw/Y9b0DEofqSdopqYpssxhSMgsbfk9wiAVuO0oAZ187cxlsaeYnxZzVM9z -q0SfwJ3PpiafUvVLTHPC8PWNNRsbsOWZwlhWr4l6LJ8G2owSFODk6+GZ3oHfzRsX -ApqBV5Q78094HusVdcN9eehnnPJREgxVRGmESzHiv9cbV3xXnHVcBlhtYmboUEVz -k1Yg342KeaW5/AWR6xsTAZRE1aJdNcghtYrQj5Fd99XfsN8RUGJ7H8H6r0eJBBwE -EAEKAAYFAk51z2QACgkQ7bjAgqbuaQhjDR/7Bdipk4r53BrRQS3XTzRGVl35RdE5 -0vUc/11pMHkpg6/1HQrVY2msNBDY+R2tUzuvdH1Z1J0Xc0yBQ2WLWW+pORYnnx2c -hVrrVDFTrtwxkvzS98K9ZJ3q8glSYWEh9KgwvUjCcoKE4FO2fy57ZLYKNuzY9PC5 -euEHUR6jFluGPHGD3CweUc49GN+6nfSXnrIzaLHRKanNc2Vv4nIMTXzqoXd3BeHp -8869EpD6oFD0eB0CuS22AuOdYhtPB24ajTbZv+jSHYlUlKZtmFqG+Jba8tmxV73d -j1xlLrtisrQtrQMmaFsK4sWdrI2FasfvjB40x0u1McPf+eH8YiVYqL9pshbDAR6b -qbVazhTGDtEu80WwSTU8C+cuy9QvE4hClhxLBdGFG4/o3ANvsQZz0CetYBUojJEg -6q7K8BoVZ3My2S8UWO23warFkS1UWanpSPu5GD8qaGiMVAaG6gML3lMKb/PbAldl -cBhqSIpB/3gpfuGrE/z+N4r2nQbXAI2G8+4YgTahsuj0775GtzGpZRAZxSsbZDim -l4n6KfNeET2Zx4vY+kbAX4IxyP/fytk6cqBPrG8e/hdVcMl5MdHSVIfX9Z6KzV6V -drED83LNUCrCt7YQGyu7JcBLk4ytXUow+MxnOOpHKaBiq56wmlO5mwfA3UexysI5 -hxogAVm+w9SoB1hPuZKUyfOyd3xP3Ao2p5LVhF84NIgroNZ3HhxZGnb8xMSNjR4J -eeiYJ0Yl0j3O+xWYfrLOvY1GxEevMQbDgMw6WDWaevC4qsp7co/wxSZLi7f2gNwR -i2YPX2Kg3jKoCBuM0HRCZplnZATq7kCROcZKGvm9o0zGoUNKzh3yqU4A3hWOc4kj -TYrqHT5o1yAOFJtGvFixPmZ0L3c4+U4iVt1Pmo5i3AQKq8/qi9OU0F91Rzkf1Saz -zy+lGqFR+RFfoXIinsoTHbZFbCTP0yfW64f93tk7dSTp4M3Z08MSJfnyS7SRH8iR -isJbfJ62DZgA3gc95Sc79qb1p9WAq/JPzNLQaaq92Th823sVCZ0k5EpqV5vLBOtA -7zKns1ByNsTr1EGGnYyLXcJxgxTtP29kHs7Ia2ZKV3QYFgPdP4QseQdvntYkMN1f -cLs1Lv3JiMp96RMSywSF0tp9iMbVJPUu8uBvU4zXlrVAnUFNKcrORxRIkFDp7WAO -LqkI959Mc8Eerb9CWc/Axh94Rla194Zfpp1ExY5KOCnATGEMP1NU8CVCecVukn/f -yzRzNfCO3VbI6qvgKHCmCPwdXQAsHJiCtNgO70yp0zivQWNGtuiU5ar3lfX5neih -UFTZz1j3yM3EHySQIXHZR3OTbTmVgTZ+7Mp6c2AxuOGAdUQ9Cj5DhkOJuokBHAQQ -AQgABgUCV4TFlgAKCRD0ziNk+2lnsgQPB/0c27VXpwGNZTc7adptXsJAuPgNTIcz -upNwovUnJqC5OZnTyF3F0bQw051voZyoS+MuPk+hSG3pPuVFWhmszQaB+9S9yjrD -Yj4UPeucAkYQGNGwTRe1e7lRrmWguEGSUbHxAGLR3VuFgxeY3Tbera2jyI2k5Oxc -uV7xp9zmNCBvje3nzaIG69fHq+vkemMmdmYusrorZ4kXNmM+vNFIzJWxv0KRb4mm -fDaWGQdH2c7MnqMfAjkTYW70Nm4DcI+8XNsyaQvodkmUKONvjCHneoed+0OS/5MU -V+HLxzoX8bLRw2YIR4GxhQaxixkPgvyQWtIcWpsx8NH3o/PVsdPTQtwPiQIcBBAB -AgAGBQJVBs+xAAoJECS2Qt9ZftCVMtEP/15sUVyYjDBlB6+3WlSLuKp5LXr3L1Vb -YFqA4LfNGzDdY9C4XrxE6G1ZdCK/mYqfFeZjijw7ZoFr+O2GSW1/rr/KOrZu8rtx -J1YWjyds3ebBqS7thBMPomgJpqODUTBSxNxpeDMoOT7DYn1b9mQUrKVlqZnfl+R3 -zBCu+sj5U10b9duEOu3w15AHYSxZwFRATMwssGOzpeH46U1YgGiUZpyVF6WfWUuH -GaYkOdS143H4FehIYxiQIoozeSstFACQNKmJ9bOl9cN8qEcVbXCt+6p9sBQoZnYX -znOwLWnylwdzc5ch6RzBoCxYTthUNOAWVPFiK6OpJwtxUZAJG954o3cYIj9fRP3Q -Ie3gplu8oVF3GJBgUnWZSxsEYddxmWLc2/pTtZdIkoT49eflOslfH99ySXWQh/TQ -878FBwugCifQazivlYHY8WmJ6/xRsLXPD5H5vH0dzxZmnDI7UEshyPczYHNYXdsC -QIYstm/zjfm7CmoOR0oPUUIHwpadeaVPh6sbPXq9VU09OcEOibfdWNvsg07MWbuj -knmIV9+zoBUMj76vpBE776/aXoaAeNWUgK05CUMDLOekICevzu81iVxXYHl+46+H -RGZ7XkvOpkkgjbg+M9xId8q3PjzmGYQYr+Lg+6h3TodkGCQdAPYWCwJh0ZzZE3WZ -RPx3Ae/oX7HOiQIcBBMBCgAGBQJUaz58AAoJECsRil+hXzC5S0gP/Ri70XuaPUp/ -/CXmpwoTdIksSCtbXf/RCMYvpRcWlTctLaJVPTHtzMO5zoRvN1M5P6AEZfPcckCo -HlnbHNJFHxoRaGsKTjLUu2r9FzFZ/3QGOOXemMte1B+33nKiRaW+yVlNht2+ZuQa -JB/X1Ieg1n1qkMV3z6jDEkDuDL/w3bCLmc5/fRWYRK79N7rsJmYqIkZj0kBjQGGz -ElDctTq+6yhKHv9pKHbR84c5Yf144TxR+8rMayv6zaBXCYbso1HdYWIRba2Z0yRB -212YMt4kDk1uxVW6Fc8Jn0JWunHF1pbdkvbQBYUxs57kSp54cEUtdMZtowKN/SMU -UCwTcoEDHt2r6P6eOJC1TkOjtHKRNLsjzTmP2398APhXyisr206XCOGDeDO3wODj -pIFkr2gTjGRQKRNy8JHvI1+6KCrLg/eSrkVpsXxzzPaZxUjW4GM0o+XU/8QGNhiw -IFccOmjHBNfSE/suDKkULqLDuVW3RFDdiSd/pIUPTAk331SYWHo1Bh8C3ViJQBkE -kL9zflvdlyHp7dlpiLuQrfD3SAPJdw7liPdJ6AlCoCFv63I9MDAnoZgGhsZHEAwL -PUwrReHmBZCrq4gRux0EOuJsoYZVkW918O/4K0wgC8FqYc7/JYgQkLRNEe0nRrI6 -lcLJuqNwH+NwjyqoUe5uXU3SzUGVCmu/iQIiBBMBCgAMBQJXQVf2BYMHhh+AAAoJ -ECbR5vsOCGsNzU0P/1oBRmDNViNgy6S9FGYCmZnkYKyzmvRPBRbK6hDSCdGgLtSB -AdFv6hVPXprzOty9kZzpupMck8ETdNRL6ar007Vkl137iGc+OfKujh4z9F46iLvA -0INcg9Ei4suAO4NsVYAa7jz6AHorx3gFRRsmLR8AGtLdy+EMoXQzZAQGrMUGyNsY -SwMEsdJeO74XczkmfHpLQiFRAZjv+RHmJe6IUfkWF5iYoX7rDfvz+vKhjASED4Z0 -h3xChou9mX5Ujm7KxGdEiRAYp7TRAqxbpw7mHtgYrXa5wSlCVGCDNnhGQ1ke6LS6 -97kAAyuR5clBQF/owH89VDM+7ETFVkGUVAtjiqzpnA3/YGzWXhOABxDASmWKqXpp -uxkTAcH2+uBxPFrWRkItGTdM+vDZtN0VqCI2lfqZ93RkUKmrKvAEFTbyRaMpPCH3 -pTFS0DhbCeRoyqJxKC5Fo1teqeuTvFGIysnuWC0SNgQDjLB15RJkMX+Qfc3mvqvY -qiX9RM1ni3jf7IhnXljXRu2Yg/QpogjWa1R62EVqyX1EpLpz0AYBWrO6EvYyF1tM -99IFLglvKTwKYhcUb00ujhmobZ0kvakrMaLei0OTeTWScFPRtzeXJLN6Iu5MtOvI -k+FVXfqajUM/R1wwmS2jv8l9k6kgz3xCJKieitZEyeBACAcHN4x4LpDD9cJYiQIi -BBMBCgAMBQJYGMcvBYMHhh+AAAoJEKI41NSYIPRnv2sQAJ12YZnfA93fxOPDcHWn -eTVQBnhAfX62f5Mt2lUGs2ejzqHugznnt7LbYVYGl0e4w01bPVwSEd7Og6IBPR6o -wx9CPr/aW4lKlxDSKFKsBSgjnBEZSos3GjPxPsgyvsgfP/8g1zZ2b873lNvB4wK8 -3VAJ17JB3DhtC/ZpIEiQq7EveSoYKqWr7Av+Vl0vohziDEf+x76Gp/Z29BbQp2Ug -DsUkNTks6/WSYEJnmHoyXrSRkqFKUXN/IXqys+PdtEKfZP7hHUdtxEisvjqnYFgD -bUYNAHoMDceYRP0Y5s0YC6RZ+CuKel70pN30RykLDdoEz7xiWw84ayAZZJCqMUJ2 -9S61rSztouJ6HR1ueZtT4BK6v/PkgjHUYUx/QjKOjBdo/oE5toUw9FTk3Cd6LVxr -I11gRJcM8cMpeeeMrotveIXBvOSBbUDalTlBkXYSq/2+VxdzWdEqUptv8KRAZBfU -lHOsft8o4lNxL7koBJNggULk+INAJcg+NNlp8ufPddYPvxhZTModx99SW6LY/YlV -uhoK7kXPMKzX1yILdGm1g2sFirQnAHNntHVwqvFN4/X3mGY4/jn7ebNGQKr/o05m -vu8iIwOqbEpeERgsaazI01a5S2ICydX9eWU63hx5rG0CIXapjUsbV900MELcB34O -RHqn5dLpfevue863JGUxPGMjiQEzBBABCAAdFiEEr3zKM9T0WtSOOvGE/Sshck2M -1IAFAlsXD4sACgkQ/Sshck2M1ICdkwf/Y6gAIBctZSb5VwXgwZ/9WVa8m+otcNna -Bs/Uf2txmblNHMQb1vaTyRkRpfz/YirxwfpJFoNouZQaf+Bbl/5ll8xIE1/UGeGD -GzXgjXxs+EJy1Lac4voAf191dGJrPGQ+sJsq/FUqk9Hij2A0/nxajh96WIIRZjbZ -mtbRBicNmifojIti2Iw3vCtu5kPMYSKPd4NIkQj6vg68wUhVObHPdO9DdpUQz5Z9 -YDu7fdhg0xespNvAhYWvHBBmWatTTNISRg54ueo8kLCCtXU18ho/2fUWHoyjfno3 -PZBOr95NaDRXnEqT9iYT0ewlVflciBBbKrVWWWEt8ke/NLJHluvbtokCMwQQAQgA -HRYhBEW+vuyVCr0Fzw71w1CgTQw7ZRfyBQJbN4eOAAoJEFCgTQw7ZRfyEtAP/jNN -2+Sg9Rb3pCL92moMiUklNXBWgxXWfan2QnbOifcfJ7loZvC6uvFkM3O0Nnn5Hwa4 -lZ9Nkb6kUFKitEi1FVihOrVmdS86oxN27+71rLc82qSUqY1EkmhfIggdh0hqXYoy -GnUjsiL3LMHQxBmNoEsO88Wf73+Nh0G60eOPFABArA7EmAdciwW+1V3BTGNMTl62 -l9vtc2YBT9QQw+avanSNbH1AXcYcYJ2bIGZ+O/C0aeMskW5ixhFFMoTWmleZUnlH -vB78vtgv1RC4VXyxrJppbHr7/sS/x2R/8lOle3HefDhxPm16yYwlNBkjnCQyp+0B -1QfeTrmMEsQcUnEvc+bH/YaNTdqbuHoQx9QSDfDZ77d6xE7owdfa8jwLVFdcULjn -IVHfxNXJGBgnpRJU1xKCGNoxtf8xuuG1g1I7K/niFwOU6dcAzHseZ+rk04VqZnlZ -PcNW5+ec/yZSl4o1Upm1xI0+f5NuEWA4IC5l91kykCbVCxddlX4qsi/C6GuFlkbG -ss8JNnHG/pvqGS3JXIGDe8DRF1lb3QVSxytq2N+qoQmhDU/GLEhwrOpLu0inUknw -msUBa5pVMeFKd24OqSOQ1v80euEt+YOW9/gVAxE+y9iSD2qonNw88ivjQmdOwJaO -GwCpDc2kU9fomfC4xc/A3pA8Sc9bI+213tgoMSQxiQEzBBABCAAdFiEEAP4HRkFI -6sfyXBjniwh32RvyOqoFAly3Ic8ACgkQiwh32RvyOqoxbgf/dPt1DU5O06Y/acuf -PzJgY8Hvc2k6Hy8T9YegGFjSXLjEkFqaHJ5rhIRUPoLPcgzj7+aLy+bEqzIuSMkl -NJR0Wtp+rn5tqY8Vt+5BJYACTPrbnFTBaYO6KEygqOsa4kSLg7mNEe9eO2q5HyJX -dnCnMnqKRsjq6lGax+BVSGDfuCQZhrYgyhykkfrkHvaAet7KE/iqO9av2btFE0yH -jpe73QUiaacQePfuMyO5WBIXqfkk1SPEtHn44elF5KGscdMB+VvCo2aMdBXgMAUL -9/EXP1cimnJp5vbEYF+x2M+bp+NTPTqiwuDb6ENDqDdmCIDjFgqM7EgsnpBcC+Q5 -WNrZLbkCDQRKtA7pARAAwjRJMLOWK6AZm7vO/PV39NOoE5eS8w/x3bd7AKfYgnz4 -LnDvpe1PsW6NVx0zCUMBFX0vkcd0W2i2ERvoVOxbiS0Af+TWggzUbqsOSh8kLSVB -/s6POCKqnzMxvGjknR4Ncq9sSh+EE5oEDjQbv1tMRGZma6Ok42DcJJNqcFytsriJ -mT1DsvpitahfFpt4U7ZDxPhRUjRSGnhw6Expsf9EYrvyu3TSU6wtE5UaZ9iunetM -wed2GE3PtA2Eg8gdBbqV4gMf/lxBp90O3jYtgVesOdL+a+dUD/M6bYhX5THxSjQH -1fMUuTLXkHffGEuaqnfyz6N4EuRxT0Gki9JN0Uwpb+30DR3GRapr9DlqYses5tp6 -WMYarEwxnkmudv7l3oVVxeSbm2BYnzEi6WxlWana5huYa9nMnMbIxYmNMyTmkYrZ -jfyVmzhi4sK3DeLpCjchZ7RRuYz2hZyXcfax38iTXhfXIL/SZWXhcSelqiAIZSjr -h9yvP6ctEjxOmThX0aNGFMb4duSv7IjnDy5utd2jscmO2H0PDBNr4J+yNJgLYPWp -vmBQ2mxqo/N/aHcGXc2b9k9plB58mxUyRQbjFhlimLLWA0unmRJobqWz71CpA7oP -5jvoHaPqUihfWEugzOUbQnUzSauDWWOdMqQW+UUo/iDRz6HCKdlfww0288krLusA -EQEAAYkCHwQYAQoACQUCSrQO6QIbDAAKCRAQwBxaL2BZ5y3tD/4t+KCuXBNi5alB -CExHEzveMdRF9FJrSqJEX0NwGFivF3hQ/HJkrcu9oTJC/tXNFf/+EHOd0lMiyFl5 -PBSlhe4XS988rgapUW+ee9tQmAt+RgP40fdKdJNb6+9NYGmrdnDUzlQtP+h/XBOc -mF0/szK/U0oigg8DjYYUm5gCWXOl9H4LJgg+yOcVCOVa4oTf1sdAmQba1xlMhOIY -BWmEhqbWZpGOS59XvpyNfOQXWu26S8HACBqyPZ2LVV4H+9cmxinTz7RX1yKD17nL -Z/fTOzZ1gYTbhg5rNmFpDgu3nlgU8SpGQ1kd70ZkcudgehsUe1EpPyl7O8qhj5H0 -/3OAmRXzrq2VF17gtz7zpntA0JqsBMbSaK5qBuBcurLhBT634WDIoE8u5Em1Uwjg -TI0Cx/lPxRTbIb4PfjP2b2ik/tJaUbwUrhuZ4LAtGztMVrF4W+qnx9oed4OFXMBb -wgS+SH6oAHlGwpxhhzXBlqZsHXm+w+2oazWUhxFFGEe5U245GEtNf0AznBMDWTqg -0SCVEDjlKt+e9tVXkTpHYWZjGbRZbEHkCbFqKhq0KP5BGInFZTFToI5jjszmuX0W -/yKpRpQZ+GuJnt4VrYSy7TMvjjhIpuhDY57VUwUIkz/2Kq8Vg2wpGg+29nvcGOTd -yZUcTCEB33B2jQ9z0XUEp+6B2F5iZQ== -=4AB7 ------END PGP PUBLIC KEY BLOCK----- -pub rsa4096 2012-05-08 [SCEA] - 5C3C 5F3E 314C 8662 92F3 59A8 F3AD 5C94 A67F 707E -uid [ultimate] Christopher Schultz -uid [ultimate] Christopher Schultz -uid [ultimate] Christopher Schultz -uid [ultimate] Christopher Schultz -sub rsa4096 2012-05-08 [SEA] - ------BEGIN PGP PUBLIC KEY BLOCK----- - -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 -NwUqv9cUGhf+Di0nAX1diWxfd7DdEi8= -=6zfV ------END PGP PUBLIC KEY BLOCK----- diff --git a/sources b/sources index df42da2..1bac248 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -SHA512 (apache-tomcat-10.1.36-src.tar.gz) = 18123ea1639733f14cf0b1ca0df8255b8d69abc7dd19cad10ad51f4f1f1c16f8f08fba668101169df68d23400f75f3aacab9040edba9330b78939b7c6399ae10 -SHA512 (apache-tomcat-10.1.36-src.tar.gz.asc) = 22153e1d7797cfb519f7df0968a60f2b1a39de156cd53011fba32c4e51a61e7f8fe4a4b75b673bd5611485f4ef1ca50e43f08d7d09925731253dc114ba0221e1 +SHA512 (apache-tomcat-10.1.34-src.tar.gz) = 0124d92eb1d184bdce1a50d5934958a0c796460a7157a8622aeee2b21060f5377198939a0260285bcdaa25cea42b880cb97575469a63f7b33ec22d532927e6ca diff --git a/tomcat.spec b/tomcat.spec index 792eb92..b43b30a 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -1,7 +1,7 @@ %global jspspec 3.1 %global major_version 10 %global minor_version 1 -%global micro_version 36 +%global micro_version 34 %global packdname apache-tomcat-%{version}-src %global servletspec 6.0 %global elspec 5.0 @@ -34,9 +34,8 @@ Summary: Apache Tomcat - Servlet and JSP engine for system-wide deployment License: Apache-2.0 URL: http://tomcat.apache.org/ Source0: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz -Source1: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz.asc -# https://www.apache.org/dist/tomcat/tomcat-%{major_version}/KEYS -Source2: KEYS +# Source1: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz +# Source2: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz Source3: %{name}-%{major_version}.%{minor_version}.conf Source4: %{name}-%{major_version}.%{minor_version}.service Source5: %{name}-%{major_version}.%{minor_version}-locate-java.sh @@ -64,7 +63,6 @@ BuildArch: noarch # See: https://docs.fedoraproject.org/en-US/packaging-guidelines/Java/#_architecture_support ExclusiveArch: %{java_arches} -BuildRequires: gnupg2 BuildRequires: ant BuildRequires: ecj BuildRequires: findutils @@ -186,8 +184,6 @@ Conflicts: tomcat-el-3.0-api Apache Tomcat EL API Implementation Classes. %prep -%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}' - %setup -q -n %{packdname} # remove pre-built binaries and windows files find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name "*.gz" -o \ From fb80fe23e4a264e9cc4a6cd930e625169d921818 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:03 +0300 Subject: [PATCH 095/124] Revert "Fix man page rendering" This reverts commit 03b7b8f8e69991d5b6bc8b728a56722bbe7d5f30. --- tomcat-10.1-user-instance-create.asciidoc | 55 ++++++++++++++--------- 1 file changed, 33 insertions(+), 22 deletions(-) diff --git a/tomcat-10.1-user-instance-create.asciidoc b/tomcat-10.1-user-instance-create.asciidoc index c474e16..6c02e94 100644 --- a/tomcat-10.1-user-instance-create.asciidoc +++ b/tomcat-10.1-user-instance-create.asciidoc @@ -1,16 +1,19 @@ -= tomcat-user-instance-create(1) -DIMITRIS SOUMIS +tomcat-user-instance-create(1) +================================ :doctype: manpage :man source: TOMCAT :man manual: Apache Tomcat -== NAME +NAME +---- tomcat-user-instance-create - Creates a standalone Tomcat instance with a separate configuration SYNOPSIS +-------- *tomcat-user-instance-create* [OPTIONS] DIRECTORYNAME -== DESCRIPTION +DESCRIPTION +----------- The `tomcat-user-instance-create` script creates a self-contained Tomcat instance in a specified directory. This instance has its own configuration, libraries, and web applications, allowing multiple independent Tomcat instances to run on the same system. @@ -20,13 +23,16 @@ The script automatically sets up the required `CATALINA_BASE` structure, includi By using this script, users can configure and manage multiple Tomcat instances independently of the system-wide Tomcat installation. -== USAGE +USAGE +----- To create a new Tomcat instance, specify the target directory where the instance should be created. This directory **must not already exist**, as the script will create it. If no additional options are provided, the instance will be created with **default** ports and settings. -== OPTIONS +OPTIONS +------- + *-p *:: Set the TCP port for the default HTTP connector. The default is `8080`. @@ -39,36 +45,41 @@ Set the shutdown keyword. When sent to the control port, this triggers a gracefu *-h, --help*:: Display usage information and exit. -== EXAMPLES +EXAMPLES +-------- Create a Tomcat instance in `~/mytomcat` using default ports: - +---- $ tomcat-user-instance-create ~/mytomcat +---- Create an instance with a custom HTTP and control port: - +---- $ tomcat-user-instance-create -p 9090 -c 9005 ~/mytomcat +---- Create an instance with a custom shutdown keyword: - +---- $ tomcat-user-instance-create -w "STOPNOW" ~/mytomcat +---- -== NOTES +NOTES +----- - Ensure that the selected HTTP and control ports are not already in use. - Ports **below 1024** require root privileges. - The created instance is independent of the system-wide Tomcat installation. -== FILES +FILES +----- The script generates a directory structure similar to: - ---- DIRECTORYNAME/ -|-- bin/ -| |-- startup.sh -| |-- shutdown.sh -|-- conf/ -|-- logs/ -|-- webapps/ -|-- work/ -|-- temp/ -|-- lib/ +│── bin/ +│ ├── startup.sh +│ ├── shutdown.sh +│── conf/ +│── logs/ +│── webapps/ +│── work/ +│── temp/ +│── lib/ ---- From 36b27510aa7c10d69f2b9fb8fe77f445c416a58a Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:04 +0300 Subject: [PATCH 096/124] Revert "Reorganize installs and preserve timestamps as suggested by Fedora Packaging guidelines" This reverts commit 740d603f373bdd64cc4d117eb731d2e432019434. --- tomcat.spec | 48 +++++++++++++++++++++++++----------------------- 1 file changed, 25 insertions(+), 23 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index b43b30a..c62b7c4 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -34,16 +34,14 @@ Summary: Apache Tomcat - Servlet and JSP engine for system-wide deployment License: Apache-2.0 URL: http://tomcat.apache.org/ Source0: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz -# Source1: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz -# Source2: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz -Source3: %{name}-%{major_version}.%{minor_version}.conf -Source4: %{name}-%{major_version}.%{minor_version}.service -Source5: %{name}-%{major_version}.%{minor_version}-locate-java.sh -Source6: %{name}-%{major_version}.%{minor_version}-run.sh -Source7: %{name}-%{major_version}.%{minor_version}-RUNNING.txt -Source8: %{name}-%{major_version}.%{minor_version}-user-instance-create.sh -Source9: %{name}-%{major_version}.%{minor_version}-setenv.sh -Source10: %{name}-%{major_version}.%{minor_version}-user-instance-create.asciidoc +Source1: %{name}-%{major_version}.%{minor_version}.conf +Source3: %{name}-%{major_version}.%{minor_version}.service +Source4: %{name}-%{major_version}.%{minor_version}-locate-java.sh +Source5: %{name}-%{major_version}.%{minor_version}-run.sh +Source6: %{name}-%{major_version}.%{minor_version}-RUNNING.txt +Source7: %{name}-%{major_version}.%{minor_version}-user-instance-create.sh +Source8: %{name}-%{major_version}.%{minor_version}-setenv.sh +Source9: %{name}-%{major_version}.%{minor_version}-user-instance-create.asciidoc # https://bugzilla.redhat.com/show_bug.cgi?id=435829 Patch0: %{name}-%{major_version}.%{minor_version}-bootstrap-MANIFEST.MF.patch @@ -245,26 +243,30 @@ touch HACK # build initial path structure %{__install} -d ${RPM_BUILD_ROOT}%{appdir} %{__install} -d ${RPM_BUILD_ROOT}%{bindir} +%{__install} -d ${RPM_BUILD_ROOT}%{confdir} %{__install} -d ${RPM_BUILD_ROOT}%{confdir}/Catalina/localhost %{__install} -d ${RPM_BUILD_ROOT}%{confdir}/conf.d /bin/echo "Place your custom *.conf files here. Shell expansion is supported." > ${RPM_BUILD_ROOT}%{confdir}/conf.d/README -# %{__install} -d ${RPM_BUILD_ROOT}%{libdir} +%{__install} -d ${RPM_BUILD_ROOT}%{libdir} %{__install} -d ${RPM_BUILD_ROOT}%{logdir} +%{__install} -d ${RPM_BUILD_ROOT}%{homedir} %{__install} -d ${RPM_BUILD_ROOT}%{cachedir} +%{__install} -d ${RPM_BUILD_ROOT}%{_unitdir} +%{__install} -d ${RPM_BUILD_ROOT}%{_libexecdir}/%{name} -%{__install} -D -p %{SOURCE3} ${RPM_BUILD_ROOT}%{confdir}/%{name}.conf -%{__install} -D -p %{SOURCE4} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service -%{__install} -D -p %{SOURCE5} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-locate-java.sh -%{__install} -D -p %{SOURCE6} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-run.sh -%{__install} -D -p %{SOURCE7} ${RPM_BUILD_ROOT}%{homedir}/doc/RUNNING.txt +%{__install} %{SOURCE1} ${RPM_BUILD_ROOT}%{confdir}/%{name}.conf +%{__install} %{SOURCE3} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service +%{__install} %{SOURCE4} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-locate-java.sh +%{__install} %{SOURCE5} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-run.sh +%{__install} -D %{SOURCE6} ${RPM_BUILD_ROOT}%{homedir}/doc/RUNNING.txt %{__install} -D tomcat.sysusers.conf ${RPM_BUILD_ROOT}%{_sysusersdir}/tomcat.conf %{__install} -d ${RPM_BUILD_ROOT}%{userinstancedir}/conf -%{__install} -D -p %{SOURCE8} ${RPM_BUILD_ROOT}%{_bindir}/tomcat-user-instance-create.sh -%{__install} -D -p %{SOURCE9} ${RPM_BUILD_ROOT}%{userinstancedir}/bin/setenv.sh +%{__install} -D %{SOURCE7} ${RPM_BUILD_ROOT}%{_bindir}/tomcat-user-instance-create.sh +%{__install} -D %{SOURCE8} ${RPM_BUILD_ROOT}%{userinstancedir}/bin/setenv.sh -asciidoctor -b manpage -D ${RPM_BUILD_ROOT}%{_mandir}/man1 -o tomcat-user-instance-create.1 %{SOURCE10} +asciidoctor -b manpage -D ${RPM_BUILD_ROOT}%{_mandir}/man1 -o tomcat-user-instance-create.1 %{SOURCE9} for jar in output/build/lib/*.jar; do # Skip Jar if empty, applies to tomcat-coyote-ffm.jar atm @@ -323,10 +325,10 @@ jar ufm ${RPM_BUILD_ROOT}%{libdir}/servlet-api.jar <(echo "JavaPackages-GroupId: # move things into place pushd output/build - %{__cp} -ap bin/* ${RPM_BUILD_ROOT}%{bindir} - %{__cp} -ap conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{confdir} - %{__cp} -ap conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{userinstancedir}/conf - %{__cp} -ap webapps/* ${RPM_BUILD_ROOT}%{appdir} + %{__cp} -a bin/* ${RPM_BUILD_ROOT}%{bindir} + %{__cp} -a conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{confdir} + %{__cp} -a conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{userinstancedir}/conf + %{__cp} -a webapps/* ${RPM_BUILD_ROOT}%{appdir} popd ln -sr $(build-classpath ecj/ecj) ${RPM_BUILD_ROOT}%{libdir}/ecj-x.jar From cd185fa508ea29d1d70b9f63568859b66ce256cb Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:04 +0300 Subject: [PATCH 097/124] Revert "Update catalina-policy.patch" This reverts commit d584406620b7ae49f0457ee6a06758b6bb7c0691. --- tomcat-10.1-catalina-policy.patch | 25 +++++++++---------------- 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/tomcat-10.1-catalina-policy.patch b/tomcat-10.1-catalina-policy.patch index 5c01b4a..3254968 100644 --- a/tomcat-10.1-catalina-policy.patch +++ b/tomcat-10.1-catalina-policy.patch @@ -1,23 +1,16 @@ ---- conf/catalina.policy.orig 2025-03-04 21:02:32.000000000 +0200 -+++ conf/catalina.policy 2025-03-07 14:23:42.341169484 +0200 -@@ -55,6 +55,20 @@ grant codeBase "jrt:/jdk.compiler" { +--- conf/catalina.policy.orig 2024-05-22 16:12:23.809886452 +0300 ++++ conf/catalina.policy 2024-05-22 16:14:38.913939654 +0300 +@@ -55,6 +55,14 @@ permission java.security.AllPermission; }; - -+// ========== FEDORA SPECIFIC CODE PERMISSIONS ======================================= + ++// ========== RHEL SPECIFIC CODE PERMISSIONS ======================================= + ++// Allowing everything in /usr/share/java allows too many unknowns to be permitted ++// Specifying the individual jars that tomcat needs to function with the security manager ++// is the safest way forward. +grant codeBase "file:/usr/share/java/ecj/ecj.jar" { + permission java.security.AllPermission; +}; -+ -+grant codeBase "file:/usr/share/tomcat-jakartaee-migration/jakartaee-migration.jar" { -+ permission java.security.AllPermission; -+}; -+ -+grant codeBase "file:/usr/lib/java/tomcat/tomcat-jni.jar" { -+ permission java.security.AllPermission; -+}; -+ - + // ========== CATALINA CODE PERMISSIONS ======================================= - From bd10c72eff8cdaca5abd01bb8da81fea9781ea75 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:04 +0300 Subject: [PATCH 098/124] Revert "Fix tomcat-juli.jar not placed in tomcat-common package" This reverts commit 4c675c785fc5b871b842bf76ded75a82da30efe3. --- tomcat.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/tomcat.spec b/tomcat.spec index c62b7c4..56613ff 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -314,7 +314,6 @@ sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat.pom %mvn_package ":tomcat-jsp-api" tomcat-jsp-api %mvn_package ":tomcat-servlet-api" tomcat-servlet-api %mvn_package ":tomcat-bootstrap" tomcat-common -%mvn_package ":tomcat-juli" tomcat-common %mvn_install From d56e3c9a0ed6e8a6bb1980c7d49f409d8e0fe185 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:05 +0300 Subject: [PATCH 099/124] Revert "Remove unused parameter" This reverts commit c86e1e94da32c7cbe05e5e03ebe0c939a0bae741. --- tomcat-10.1.conf | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tomcat-10.1.conf b/tomcat-10.1.conf index dc9fec5..fbb3951 100644 --- a/tomcat-10.1.conf +++ b/tomcat-10.1.conf @@ -18,4 +18,7 @@ #export JAVA_OPTS="$JAVA_OPTS -Dbuild.compiler=$JSP_COMPILER" # Enable the Java security manager? (true/false, default: false) -#export SECURITY_MANAGER=true \ No newline at end of file +#export SECURITY_MANAGER=true + +# Whether to compress logfiles older than today's +#export LOGFILE_COMPRESS=1 \ No newline at end of file From 866385e700f5b7665830f13f28570335d486a26a Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:05 +0300 Subject: [PATCH 100/124] Revert "Rename service start script more properly" This reverts commit 74d5d938592bfab95c3a362fae14f0185e8b2435. --- tomcat-10.1-run.sh => tomcat-10.1-start.sh | 0 tomcat.spec | 6 +++--- 2 files changed, 3 insertions(+), 3 deletions(-) rename tomcat-10.1-run.sh => tomcat-10.1-start.sh (100%) diff --git a/tomcat-10.1-run.sh b/tomcat-10.1-start.sh similarity index 100% rename from tomcat-10.1-run.sh rename to tomcat-10.1-start.sh diff --git a/tomcat.spec b/tomcat.spec index 56613ff..fe6de25 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -37,7 +37,7 @@ Source0: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{vers Source1: %{name}-%{major_version}.%{minor_version}.conf Source3: %{name}-%{major_version}.%{minor_version}.service Source4: %{name}-%{major_version}.%{minor_version}-locate-java.sh -Source5: %{name}-%{major_version}.%{minor_version}-run.sh +Source5: %{name}-%{major_version}.%{minor_version}-start.sh Source6: %{name}-%{major_version}.%{minor_version}-RUNNING.txt Source7: %{name}-%{major_version}.%{minor_version}-user-instance-create.sh Source8: %{name}-%{major_version}.%{minor_version}-setenv.sh @@ -257,7 +257,7 @@ touch HACK %{__install} %{SOURCE1} ${RPM_BUILD_ROOT}%{confdir}/%{name}.conf %{__install} %{SOURCE3} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service %{__install} %{SOURCE4} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-locate-java.sh -%{__install} %{SOURCE5} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-run.sh +%{__install} %{SOURCE5} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-start.sh %{__install} -D %{SOURCE6} ${RPM_BUILD_ROOT}%{homedir}/doc/RUNNING.txt %{__install} -D tomcat.sysusers.conf ${RPM_BUILD_ROOT}%{_sysusersdir}/tomcat.conf @@ -352,7 +352,7 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %license LICENSE %{homedir}/doc/RUNNING.txt %{_unitdir}/%{name}.service -%{_libexecdir}/%{name}/tomcat-run.sh +%{_libexecdir}/%{name}/tomcat-start.sh %{_sysusersdir}/tomcat.conf %{baseconfdir} %{baselogdir} From 78f701590927589179814ff3cbb132ef90d95b8c Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:05 +0300 Subject: [PATCH 101/124] Revert "Remove logrotate file since Tomcat rotates its own logs" This reverts commit 48b049b11647bccf850d5d7d6f5355fe75222faf. --- tomcat-10.1.logrotate | 11 +++++++++++ tomcat.spec | 4 ++++ 2 files changed, 15 insertions(+) create mode 100644 tomcat-10.1.logrotate diff --git a/tomcat-10.1.logrotate b/tomcat-10.1.logrotate new file mode 100644 index 0000000..082092a --- /dev/null +++ b/tomcat-10.1.logrotate @@ -0,0 +1,11 @@ +# This is an example config only and is disabled by default +# If you wish to use it, you'll need to update /etc/tomcat/logging.properties +# to prevent catalina*.log from being rotated by Tomcat +@@@TCLOG@@@/catalina*.log { + copytruncate + weekly + rotate 52 + compress + missingok + create 0644 tomcat tomcat +} diff --git a/tomcat.spec b/tomcat.spec index fe6de25..a1b5416 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -35,6 +35,7 @@ License: Apache-2.0 URL: http://tomcat.apache.org/ Source0: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz Source1: %{name}-%{major_version}.%{minor_version}.conf +Source2: %{name}-%{major_version}.%{minor_version}.logrotate Source3: %{name}-%{major_version}.%{minor_version}.service Source4: %{name}-%{major_version}.%{minor_version}-locate-java.sh Source5: %{name}-%{major_version}.%{minor_version}-start.sh @@ -241,6 +242,7 @@ touch HACK %install # build initial path structure +%{__install} -d ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d %{__install} -d ${RPM_BUILD_ROOT}%{appdir} %{__install} -d ${RPM_BUILD_ROOT}%{bindir} %{__install} -d ${RPM_BUILD_ROOT}%{confdir} @@ -255,6 +257,7 @@ touch HACK %{__install} -d ${RPM_BUILD_ROOT}%{_libexecdir}/%{name} %{__install} %{SOURCE1} ${RPM_BUILD_ROOT}%{confdir}/%{name}.conf +%{__sed} -e "s|\@\@\@TCLOG\@\@\@|%{logdir}|g" %{SOURCE2} > ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{name}.disabled %{__install} %{SOURCE3} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service %{__install} %{SOURCE4} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-locate-java.sh %{__install} %{SOURCE5} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-start.sh @@ -353,6 +356,7 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %{homedir}/doc/RUNNING.txt %{_unitdir}/%{name}.service %{_libexecdir}/%{name}/tomcat-start.sh +%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}.disabled %{_sysusersdir}/tomcat.conf %{baseconfdir} %{baselogdir} From b4f52963388d6e1c1da31227707fb8c85184963d Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:06 +0300 Subject: [PATCH 102/124] Revert "Improve package descriptions and summaries" This reverts commit c1868d66549c281c36dc3006ec37190871ceb8e5. --- tomcat.spec | 142 ++++++++++++++++++++++++---------------------------- 1 file changed, 66 insertions(+), 76 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index a1b5416..a1f7da4 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -28,7 +28,7 @@ Name: tomcat Epoch: 1 Version: %{major_version}.%{minor_version}.%{micro_version} Release: %autorelease -Summary: Apache Tomcat - Servlet and JSP engine for system-wide deployment +Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API # Automatically converted from old format: ASL 2.0 - review is highly recommended. License: Apache-2.0 @@ -83,75 +83,28 @@ Suggests: %{name}-webapps = %{epoch}:%{version}-%{release} Suggests: %{name}-user-instance = %{epoch}:%{version}-%{release} %description -Apache Tomcat is an open-source implementation of the Java Servlet, JavaServer Pages (JSP), and WebSocket technologies. -It provides a pure Java HTTP web server environment for running Java applications. -This package includes only the startup scripts for managing a system-wide Tomcat daemon. -It does not include documentation or web applications. - * To install the default web applications, use the tomcat-webapps package. - * To access online documentation, install tomcat-docs-webapps package. - * To create user instances without running Tomcat as a system service, use tomcat-user-instance package instead. +Tomcat is the servlet container that is used in the official Reference +Implementation for the Java Servlet and JavaServer Pages technologies. +The Java Servlet and JavaServer Pages specifications are developed by +Sun under the Java Community Process. -%package user-instance -Summary: Apache Tomcat - Tools for creating user-managed instances -Requires: %{name}-common = %{epoch}:%{version}-%{release} -Suggests: %{name} = %{epoch}:%{version}-%{release} -Suggests: %{name}-admin-webapps = %{epoch}:%{version}-%{release} -Suggests: %{name}-docs-webapp = %{epoch}:%{version}-%{release} -Suggests: %{name}-webapps = %{epoch}:%{version}-%{release} - -%description user-instance -This package provides the tools necessary to create user-managed Tomcat instances, -allowing users to run Tomcat independently of the system-wide service. -A user instance includes its own configuration, libraries, and web applications, -which can be started and stopped using scripts inside the instance directory. - -%package common -Summary: Apache Tomcat - Common files for Tomcat packages -Requires: (java-headless >= %{min_java_version} or java >= %{min_java_version}) -Requires: %{name}-lib = %{epoch}:%{version}-%{release} - -%description common -This package contains common files required by both tomcat and tomcat-user-instance packages, including essential Tomcat -scripts and libraries. Installing this package alone does not provide a functional Tomcat installation, -but is required as a dependency for other Tomcat-related packages. - -%package lib -Summary: Apache Tomcat - Core libraries for embedding Tomcat -Requires: %{name}-jsp-%{jspspec}-api = %{epoch}:%{version}-%{release} -Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} -Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} -Requires: ecj >= 4.20 -Recommends: tomcat-jakartaee-migration - -%description lib -This package contains the core libraries of Apache Tomcat, which allow other Java applications to embed Tomcat -as a lightweight servlet container. It is primarily intended for use by developers and applications that need Tomcat -as an embedded runtime. +Tomcat is developed in an open and participatory environment and +released under the Apache Software License version 2.0. Tomcat is intended +to be a collaboration of the best-of-breed developers from around the world. %package admin-webapps -Summary: Apache Tomcat - Administrative web applications +Summary: The host-manager and manager web applications for Apache Tomcat Requires: %{name} = %{epoch}:%{version}-%{release} %description admin-webapps -This package provides the Tomcat Web Application Manager and Virtual Host Manager, which allow administrators to deploy, -manage, and configure web applications through a web interface. -These tools simplify application lifecycle management without requiring direct filesystem access. +The host-manager and manager web applications for Apache Tomcat. %package docs-webapp -Summary: Apache Tomcat - Online documentation web application +Summary: The docs web application for Apache Tomcat Requires: %{name} = %{epoch}:%{version}-%{release} %description docs-webapp -This package provides the Tomcat documentation web application, accessible via the Tomcat server. -It includes API references, configuration guidelines, and development documentation. - -%package webapps -Summary: Apache Tomcat - Default ROOT web application -Requires: %{name} = %{epoch}:%{version}-%{release} - -%description webapps -This package includes the default ROOT web applications bundled with Apache Tomcat, -which serves as the default homepage when accessing Tomcat in a browser. +The docs web application for Apache Tomcat. %package jsp-%{jspspec}-api Summary: Apache Tomcat JavaServer Pages v%{jspspec} API Implementation Classes @@ -164,6 +117,25 @@ Conflicts: tomcat-jsp-2.3-api %description jsp-%{jspspec}-api Apache Tomcat JSP API Implementation Classes. +%package common +Summary: Apache Tomcat - Servlet and JSP engine -- common files +Requires: (java-headless >= %{min_java_version} or java >= %{min_java_version}) +Requires: %{name}-lib = %{epoch}:%{version}-%{release} + +%description common +Apache Tomcat - Servlet and JSP engine -- common files + +%package lib +Summary: Libraries needed to run the Tomcat Web container +Requires: %{name}-jsp-%{jspspec}-api = %{epoch}:%{version}-%{release} +Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} +Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} +Requires: ecj >= 4.20 +Recommends: tomcat-jakartaee-migration + +%description lib +Libraries needed to run the Tomcat Web container. + %package servlet-%{servletspec}-api Summary: Apache Tomcat Java Servlet v%{servletspec} API Implementation Classes Provides: servlet = %{servletspec} @@ -182,6 +154,24 @@ Conflicts: tomcat-el-3.0-api %description el-%{elspec}-api Apache Tomcat EL API Implementation Classes. +%package webapps +Summary: The ROOT web application for Apache Tomcat +Requires: %{name} = %{epoch}:%{version}-%{release} + +%description webapps +The ROOT web application for Apache Tomcat. + +%package user-instance +Summary: Apache Tomcat - Servlet and JSP engine -- tools to create user instances +Requires: %{name}-common = %{epoch}:%{version}-%{release} +Suggests: %{name} = %{epoch}:%{version}-%{release} +Suggests: %{name}-admin-webapps = %{epoch}:%{version}-%{release} +Suggests: %{name}-docs-webapp = %{epoch}:%{version}-%{release} +Suggests: %{name}-webapps = %{epoch}:%{version}-%{release} + +%description user-instance +Apache Tomcat - Servlet and JSP engine -- tools to create user instances + %prep %setup -q -n %{packdname} # remove pre-built binaries and windows files @@ -381,11 +371,14 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %attr(2775,root,tomcat) %dir %{confdir}/Catalina %attr(2775,root,tomcat) %dir %{confdir}/Catalina/localhost -%files user-instance +%files admin-webapps %license LICENSE -%{userinstancedir} -%{_bindir}/tomcat-user-instance-create.sh -%{_mandir}/man1/tomcat-user-instance-create.1* +%{appdir}/host-manager +%{appdir}/manager + +%files docs-webapp +%license LICENSE +%{appdir}/docs %files common -f .mfiles-tomcat-common %license LICENSE @@ -400,19 +393,6 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %{libdir}/ecj-x.jar %exclude %{libdir}/tomcat-jni.pom -%files admin-webapps -%license LICENSE -%{appdir}/host-manager -%{appdir}/manager - -%files docs-webapp -%license LICENSE -%{appdir}/docs - -%files webapps -%license LICENSE -%{appdir}/ROOT - %files jsp-%{jspspec}-api -f .mfiles-tomcat-jsp-api %license LICENSE @@ -422,5 +402,15 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %files el-%{elspec}-api -f .mfiles-tomcat-el-api %license LICENSE +%files webapps +%license LICENSE +%{appdir}/ROOT + +%files user-instance +%license LICENSE +%{userinstancedir} +%{_bindir}/tomcat-user-instance-create.sh +%{_mandir}/man1/tomcat-user-instance-create.1* + %changelog %autochangelog From 3bc9669c92b1ed9099704985a1d6c1ffcd392d2e Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:06 +0300 Subject: [PATCH 103/124] Revert "Remove redundant defattr from webapps files section" This reverts commit fd0d6ea01f1162ad19304dd7296f2ad8c19bf8fa. --- tomcat.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/tomcat.spec b/tomcat.spec index a1f7da4..560c452 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -404,6 +404,7 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %files webapps %license LICENSE +%defattr(0644,tomcat,tomcat,0755) %{appdir}/ROOT %files user-instance From 4a35676781734e27eb64e2ac0ad2cd855c54c986 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:06 +0300 Subject: [PATCH 104/124] Revert "Introduce tomcat-user-instance package" This reverts commit 4cb746528937b2740d45c3484c3a18ad04c147e2. --- tomcat-10.1-setenv.sh | 12 -- tomcat-10.1-user-instance-create.asciidoc | 85 ------------ tomcat-10.1-user-instance-create.sh | 149 ---------------------- tomcat.spec | 31 +---- 4 files changed, 1 insertion(+), 276 deletions(-) delete mode 100755 tomcat-10.1-setenv.sh delete mode 100644 tomcat-10.1-user-instance-create.asciidoc delete mode 100644 tomcat-10.1-user-instance-create.sh diff --git a/tomcat-10.1-setenv.sh b/tomcat-10.1-setenv.sh deleted file mode 100755 index 76bea76..0000000 --- a/tomcat-10.1-setenv.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh -# - -export CATALINA_HOME=/usr/share/tomcat - -# Try to find Java installation and set JAVA_HOME -/bin/sh /usr/libexec/tomcat/tomcat-locate-java.sh - -# Default Java options -if [ -z "$JAVA_OPTS" ]; then - JAVA_OPTS="-Djava.awt.headless=true" -fi diff --git a/tomcat-10.1-user-instance-create.asciidoc b/tomcat-10.1-user-instance-create.asciidoc deleted file mode 100644 index 6c02e94..0000000 --- a/tomcat-10.1-user-instance-create.asciidoc +++ /dev/null @@ -1,85 +0,0 @@ -tomcat-user-instance-create(1) -================================ -:doctype: manpage -:man source: TOMCAT -:man manual: Apache Tomcat - -NAME ----- -tomcat-user-instance-create - Creates a standalone Tomcat instance with a separate configuration - -SYNOPSIS --------- -*tomcat-user-instance-create* [OPTIONS] DIRECTORYNAME - -DESCRIPTION ------------ -The `tomcat-user-instance-create` script creates a self-contained Tomcat instance in a specified directory. -This instance has its own configuration, libraries, and web applications, allowing multiple independent Tomcat instances to run on the same system. - -The script automatically sets up the required `CATALINA_BASE` structure, including: -- `bin/startup.sh` – Starts the Tomcat instance. -- `bin/shutdown.sh` – Stops the Tomcat instance. - -By using this script, users can configure and manage multiple Tomcat instances independently of the system-wide Tomcat installation. - -USAGE ------ -To create a new Tomcat instance, specify the target directory where the instance should be created. -This directory **must not already exist**, as the script will create it. - -If no additional options are provided, the instance will be created with **default** ports and settings. - -OPTIONS -------- - -*-p *:: -Set the TCP port for the default HTTP connector. The default is `8080`. - -*-c *:: -Set the TCP port for the Tomcat shutdown control mechanism. The default is `8005`. - -*-w *:: -Set the shutdown keyword. When sent to the control port, this triggers a graceful shutdown of the instance. The default keyword is `SHUTDOWN`. - -*-h, --help*:: -Display usage information and exit. - -EXAMPLES --------- -Create a Tomcat instance in `~/mytomcat` using default ports: ----- -$ tomcat-user-instance-create ~/mytomcat ----- - -Create an instance with a custom HTTP and control port: ----- -$ tomcat-user-instance-create -p 9090 -c 9005 ~/mytomcat ----- - -Create an instance with a custom shutdown keyword: ----- -$ tomcat-user-instance-create -w "STOPNOW" ~/mytomcat ----- - -NOTES ------ -- Ensure that the selected HTTP and control ports are not already in use. -- Ports **below 1024** require root privileges. -- The created instance is independent of the system-wide Tomcat installation. - -FILES ------ -The script generates a directory structure similar to: ----- -DIRECTORYNAME/ -│── bin/ -│ ├── startup.sh -│ ├── shutdown.sh -│── conf/ -│── logs/ -│── webapps/ -│── work/ -│── temp/ -│── lib/ ----- diff --git a/tomcat-10.1-user-instance-create.sh b/tomcat-10.1-user-instance-create.sh deleted file mode 100644 index 4854928..0000000 --- a/tomcat-10.1-user-instance-create.sh +++ /dev/null @@ -1,149 +0,0 @@ -#!/bin/sh -# Script to create a CATALINA_BASE directory for your own tomcat - -PROG=$(basename "$0") -CATALINA_HOME="/usr/share/tomcat" -TARGET="" -HPORT=8080 -CPORT=8005 -CWORD="SHUTDOWN" -warned=0 -warnlowport=0 - -usage() { - echo "Usage: $PROG [options] " - echo " directoryname: name of the tomcat instance directory to create" - echo "Options:" - echo " -h, --help Display this help message" - echo " -p HTTP port to be used by Tomcat (default is $HPORT)" - echo " -c Server shutdown control port (default is $CPORT)" - echo " -w Word to send to trigger shutdown (default is $CWORD)" -} - -checkport() { - type=$1 - port=$2 - # Fail if port is non-numeric - case "$port" in - ''|*[!0-9]*) - echo "Error: ${type} port '${port}' is not a valid TCP port number." - exit 1 - ;; - esac - - num=$((port + 1)) 2>/dev/null || { - echo "Error: ${type} port '${port}' is not a valid TCP port number." - exit 1 - } - - if [ "$num" -lt 2 ] || [ "$num" -gt 65536 ]; then - echo "Error: ${type} port '${port}' is not a valid TCP port number or is above TCP port numbers (> 65535)." - exit 1 - fi - - # Warn if port is below 1024 (once) - if [ ${warnlowport} -eq 0 ]; then - if [ "${port}" -lt 1024 ]; then - echo "Warning: ports below 1024 are reserved to the super-user." - warnlowport=1 - warned=1 - fi - fi - - # Warn if port appears to be in use - if ss -tln | grep -q ":${port} "; then - echo "Warning: ${type} port ${port} appears to be in use." - warned=1 - fi -} - -if [ "$#" -lt 1 ]; then - usage - exit 1 -fi -if [ "$1" = "-h" ] || [ "$1" = "--help" ]; then - usage - exit 0 -fi - -while getopts ":p:c:w:h" options; do - case $options in - p ) HPORT=$OPTARG ;; - c ) CPORT=$OPTARG ;; - w ) CWORD=$OPTARG ;; - h ) usage;; - \? ) echo "Error: Unknown parameter '-$OPTARG'." - exit 1;; - esac -done - -shift $((OPTIND - 1)) -TARGET=$1 -shift -echo "You are about to create a Tomcat instance in directory '$TARGET'" - -# Fail if no target specified -if [ -z "${TARGET}" ]; then - echo "Error: No target directory specified (use -d)." - exit 1 -fi - -# Fail if ports are the same -if [ "${HPORT}" = "${CPORT}" ]; then - echo "Error: HTTP port and control port must be different." - exit 1 -fi - -# Fail if target directory already exists -if [ -d "${TARGET}" ]; then - echo "Error: Target directory already exists." - exit 1 -fi - -# Check ports -checkport HTTP "${HPORT}" -checkport Control "${CPORT}" - -# Ask for confirmation if warnings were printed out -if [ ${warned} -eq 1 ]; then - echo "Press to continue, or type 'no' to abort." - read -r answer - case "$answer" in - [nN][oO]|[nN]) - echo "Aborting." - exit 1 - ;; - esac -fi - -mkdir -p "${TARGET}" - -FULLTARGET=$(cd "${TARGET}" > /dev/null && pwd) - -mkdir "${TARGET}/conf" -mkdir "${TARGET}/logs" -mkdir "${TARGET}/webapps" -mkdir "${TARGET}/work" -mkdir "${TARGET}/temp" -cp -r "${CATALINA_HOME}/user-instance/*" "${TARGET}" - -sed -i -e "s/Connector port=\"8080\"/Connector port=\"${HPORT}\"/;s/Server port=\"-1\" shutdown=\"SHUTDOWN\"/Server port=\"${CPORT}\" shutdown=\"${CWORD}\"/" "${TARGET}/conf/server.xml" - -cat > "${TARGET}/bin/startup.sh" << EOF -#!/bin/sh -export CATALINA_BASE="${FULLTARGET}" -"${CATALINA_HOME}"/bin/startup.sh -echo "Tomcat started" -EOF - -cat > "${TARGET}/bin/shutdown.sh" << EOF -#!/bin/sh -export CATALINA_BASE="${FULLTARGET}" -"${CATALINA_HOME}"/bin/shutdown.sh -echo "Tomcat stopped" -EOF - -chmod a+x "${TARGET}/bin/startup.sh" "${TARGET}/bin/shutdown.sh" -echo "* New Tomcat instance created in ${TARGET}" -echo "* You might want to edit default configuration in ${TARGET}/conf" -echo "* Run ${TARGET}/bin/startup.sh to start your Tomcat instance" diff --git a/tomcat.spec b/tomcat.spec index 560c452..1bdc3c9 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -22,7 +22,6 @@ %global logdir %{_var}/log/%{name} %global cachedir %{_var}/cache/%{name} %global workdir %{basedir}/work -%global userinstancedir %{homedir}/user-instance Name: tomcat Epoch: 1 @@ -40,9 +39,6 @@ Source3: %{name}-%{major_version}.%{minor_version}.service Source4: %{name}-%{major_version}.%{minor_version}-locate-java.sh Source5: %{name}-%{major_version}.%{minor_version}-start.sh Source6: %{name}-%{major_version}.%{minor_version}-RUNNING.txt -Source7: %{name}-%{major_version}.%{minor_version}-user-instance-create.sh -Source8: %{name}-%{major_version}.%{minor_version}-setenv.sh -Source9: %{name}-%{major_version}.%{minor_version}-user-instance-create.asciidoc # https://bugzilla.redhat.com/show_bug.cgi?id=435829 Patch0: %{name}-%{major_version}.%{minor_version}-bootstrap-MANIFEST.MF.patch @@ -70,7 +66,6 @@ BuildRequires: javapackages-local BuildRequires: aqute-bnd BuildRequires: tomcat-jakartaee-migration BuildRequires: systemd -BuildRequires: rubygem-asciidoctor Requires: %{name}-common = %{epoch}:%{version}-%{release} Requires: systemd @@ -80,7 +75,6 @@ Recommends: tomcat-native >= %{native_version} Suggests: %{name}-admin-webapps = %{epoch}:%{version}-%{release} Suggests: %{name}-docs-webapp = %{epoch}:%{version}-%{release} Suggests: %{name}-webapps = %{epoch}:%{version}-%{release} -Suggests: %{name}-user-instance = %{epoch}:%{version}-%{release} %description Tomcat is the servlet container that is used in the official Reference @@ -161,17 +155,6 @@ Requires: %{name} = %{epoch}:%{version}-%{release} %description webapps The ROOT web application for Apache Tomcat. -%package user-instance -Summary: Apache Tomcat - Servlet and JSP engine -- tools to create user instances -Requires: %{name}-common = %{epoch}:%{version}-%{release} -Suggests: %{name} = %{epoch}:%{version}-%{release} -Suggests: %{name}-admin-webapps = %{epoch}:%{version}-%{release} -Suggests: %{name}-docs-webapp = %{epoch}:%{version}-%{release} -Suggests: %{name}-webapps = %{epoch}:%{version}-%{release} - -%description user-instance -Apache Tomcat - Servlet and JSP engine -- tools to create user instances - %prep %setup -q -n %{packdname} # remove pre-built binaries and windows files @@ -232,6 +215,7 @@ touch HACK %install # build initial path structure +# %{__install} -d ${RPM_BUILD_ROOT}%{_bindir} %{__install} -d ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d %{__install} -d ${RPM_BUILD_ROOT}%{appdir} %{__install} -d ${RPM_BUILD_ROOT}%{bindir} @@ -255,12 +239,6 @@ touch HACK %{__install} -D tomcat.sysusers.conf ${RPM_BUILD_ROOT}%{_sysusersdir}/tomcat.conf -%{__install} -d ${RPM_BUILD_ROOT}%{userinstancedir}/conf -%{__install} -D %{SOURCE7} ${RPM_BUILD_ROOT}%{_bindir}/tomcat-user-instance-create.sh -%{__install} -D %{SOURCE8} ${RPM_BUILD_ROOT}%{userinstancedir}/bin/setenv.sh - -asciidoctor -b manpage -D ${RPM_BUILD_ROOT}%{_mandir}/man1 -o tomcat-user-instance-create.1 %{SOURCE9} - for jar in output/build/lib/*.jar; do # Skip Jar if empty, applies to tomcat-coyote-ffm.jar atm jar tf ${jar} | grep -E -q '.*\.class' || continue @@ -319,7 +297,6 @@ jar ufm ${RPM_BUILD_ROOT}%{libdir}/servlet-api.jar <(echo "JavaPackages-GroupId: pushd output/build %{__cp} -a bin/* ${RPM_BUILD_ROOT}%{bindir} %{__cp} -a conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{confdir} - %{__cp} -a conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{userinstancedir}/conf %{__cp} -a webapps/* ${RPM_BUILD_ROOT}%{appdir} popd @@ -407,11 +384,5 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %defattr(0644,tomcat,tomcat,0755) %{appdir}/ROOT -%files user-instance -%license LICENSE -%{userinstancedir} -%{_bindir}/tomcat-user-instance-create.sh -%{_mandir}/man1/tomcat-user-instance-create.1* - %changelog %autochangelog From 33955ca6394eb5a62b83c5941007eca8c6c98243 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:06 +0300 Subject: [PATCH 105/124] Revert "Add Suggests: sections in tomcat package" This reverts commit c76067efd85d5106aa517461e25d286d63898ece. --- tomcat.spec | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 1bdc3c9..a50a7d6 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -68,13 +68,8 @@ BuildRequires: tomcat-jakartaee-migration BuildRequires: systemd Requires: %{name}-common = %{epoch}:%{version}-%{release} -Requires: systemd - Recommends: tomcat-native >= %{native_version} - -Suggests: %{name}-admin-webapps = %{epoch}:%{version}-%{release} -Suggests: %{name}-docs-webapp = %{epoch}:%{version}-%{release} -Suggests: %{name}-webapps = %{epoch}:%{version}-%{release} +Requires: systemd %description Tomcat is the servlet container that is used in the official Reference From 987625859ec450c28b8e4fd19e90ecb1f36da405 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:07 +0300 Subject: [PATCH 106/124] Revert "Reorganize docs and add RUNNING.txt file in tomcat-common package" This reverts commit e4b70e261a6f8ce13784f4ec086867792000c8d1. --- tomcat-10.1-RUNNING.txt | 133 ---------------------------------------- tomcat-10.1.conf | 4 +- tomcat.spec | 23 ++----- 3 files changed, 6 insertions(+), 154 deletions(-) delete mode 100644 tomcat-10.1-RUNNING.txt diff --git a/tomcat-10.1-RUNNING.txt b/tomcat-10.1-RUNNING.txt deleted file mode 100644 index e114b14..0000000 --- a/tomcat-10.1-RUNNING.txt +++ /dev/null @@ -1,133 +0,0 @@ -================================================================================ - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -================================================================================ - - =================================================== - Running The Apache Tomcat 10.1 Servlet/JSP Container - =================================================== - -Apache Tomcat 10.1 requires a Java Standard Edition Runtime -Environment (JRE) version 11 or later. - -============================= -Running With JRE 11 Or Later -============================= - -(1) Download and Install a Java SE Runtime Environment (JRE) or a full Java Development Kit (JDK), release version 11 or later. - -(2) Configure Environment Variables - -Tomcat is a Java application and does not use environment variables directly. -Environment variables are used by the Tomcat startup scripts. The scripts use -the environment variables to prepare the command that starts Tomcat. - -The CATALINA_HOME (required) environment variable should be set to the location of the -root directory of the "binary" distribution of Tomcat. It defaults to /usr/share/tomcat/ - -The CATALINA_BASE (optional) environment variable specifies location of the root -directory of the "active configuration" of Tomcat. It defaults to /var/lib/tomcat/ - -(3) Set JAVA_HOME (required) - -Variable is used to specify location of a Java Runtime -Environment or of a Java Development Kit that is used to start Tomcat. - -/usr/libexec/tomcat/tomcat-locate-java.sh script is ran by default when starting the tomcat service -and tries to set JAVA_HOME, if empty, without any user interaction. - -(4) Other variables (optional) - -See the comments at the top of /usr/share/tomcat/bin/catalina.sh script for -the list and a description of each of them. - -One frequently used variable is CATALINA_OPTS. It allows specification of -additional options for the java command that starts Tomcat. - -See the Java documentation for the options that affect the Java Runtime -Environment. - -See the "System Properties" page in the Tomcat Configuration Reference for -the system properties that are specific to Tomcat. - -A similar variable is JAVA_OPTS. It is used less frequently. It allows -specification of options that are used both to start and to stop Tomcat as well -as for other commands. - -Note: Do not use JAVA_OPTS to specify memory limits. You do not need much -memory for a small process that is used to stop Tomcat. Those settings -belong to CATALINA_OPTS. - -Another frequently used variable is CATALINA_PID. It -specifies the location of the file where process id of the forked Tomcat -java process will be written. This setting is optional. It will activate -the following features: - - * better protection against duplicate start attempts and - * allows forceful termination of Tomcat process when it does not react to - the standard shutdown command. - -You can assign those variables in /etc/tomcat/tomcat.conf when running Tomcat as a service. - -(4) Start Up Tomcat As A Service - -(4.1) Tomcat can be started by executing: - - $systemctl start tomcat.service - -(4.2) After startup, the default web applications included with tomcat-webapps package will be - available by visiting: - - http://localhost:8080/ - -(4.3) Further information about configuring and running Tomcat can be found in - the documentation included in tomcat-docs-webapp package, as well as on the Tomcat website: - - https://tomcat.apache.org/ - -(5) Check Tomcat Service Status - -$systemctl status tomcat.service - -(6) Shut Down Tomcat Service - -$systemctl stop tomcat.service - -================ -Troubleshooting -================ - -There are only really 2 things likely to go wrong during the stand-alone -Tomcat install: - -(1) The most common hiccup is when another web server (or any process for that - matter) has laid claim to port 8080. This is the default HTTP port that - Tomcat attempts to bind to at startup. To change this, open the file: - - $CATALINA_HOME/conf/server.xml - - and search for '8080'. Change it to a port that isn't in use, and is - greater than 1024, as ports less than or equal to 1024 require superuser - access to bind under UNIX. - - Restart Tomcat and you're in business. Be sure that you replace the "8080" - in the URL you're using to access Tomcat. For example, if you change the - port to 1977, you would request the URL http://localhost:1977/ in your - browser. - -(2) The 'localhost' machine isn't found. This could happen if you're behind a - proxy. If that's the case, make sure the proxy configuration for your - browser knows that you shouldn't be going through the proxy to access the - "localhost". diff --git a/tomcat-10.1.conf b/tomcat-10.1.conf index fbb3951..a698426 100644 --- a/tomcat-10.1.conf +++ b/tomcat-10.1.conf @@ -3,10 +3,10 @@ # Include here and not in JAVA_OPTS all options, that should only be used by Tomcat itself. # Examples are heap size, GC logging, JMX ports etc. -#export CATALINA_OPTS="-Xmx512m -Xms256m" +#export CATALINA_OPTS="-Dcatalina.http.port=8082" # Java runtime options used when any command is executed. -#export JAVA_OPTS="" +#export JAVA_OPTS="-Xmx512m -Xms256m" # To enable remote debugging uncomment the following line. # You will then be able to use a Java debugger on port 8000. diff --git a/tomcat.spec b/tomcat.spec index a50a7d6..f603e54 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -38,7 +38,6 @@ Source2: %{name}-%{major_version}.%{minor_version}.logrotate Source3: %{name}-%{major_version}.%{minor_version}.service Source4: %{name}-%{major_version}.%{minor_version}-locate-java.sh Source5: %{name}-%{major_version}.%{minor_version}-start.sh -Source6: %{name}-%{major_version}.%{minor_version}-RUNNING.txt # https://bugzilla.redhat.com/show_bug.cgi?id=435829 Patch0: %{name}-%{major_version}.%{minor_version}-bootstrap-MANIFEST.MF.patch @@ -167,12 +166,6 @@ find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name " # Remove webservices naming resources as it's generally unused %{__rm} -rf java/org/apache/naming/factory/webservices -sed -i -e "s/@VERSION@/%{version}/g" \ - -e "s/@VERSION_MAJOR_MINOR@/%{major_version}.%{minor_version}/g" \ - -e "s/@VERSION_MAJOR@/%{major_version}/g" \ - -e "s/@MIN_JAVA_VERSION@/%{min_java_version}/g" \ - -e "s/@JDT_VERSION@/x/g" RELEASE-NOTES - # Create a sysusers.d config file cat >tomcat.sysusers.conf < Date: Mon, 28 Jul 2025 16:09:07 +0300 Subject: [PATCH 107/124] Revert "Add min_java_version variable" This reverts commit 6313caf0fda55b4b222de9fbe5a31d7d46c7cf69. --- tomcat.spec | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index f603e54..7ad4bc5 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -6,7 +6,6 @@ %global servletspec 6.0 %global elspec 5.0 %global tcuid 53 -%global min_java_version 11 # Recommended version is specified in java/org/apache/catalina/core/AprLifecycleListener.java %global native_version 2.0.8 @@ -107,7 +106,7 @@ Apache Tomcat JSP API Implementation Classes. %package common Summary: Apache Tomcat - Servlet and JSP engine -- common files -Requires: (java-headless >= %{min_java_version} or java >= %{min_java_version}) +Requires: (java-headless >= 11 or java >= 11) Requires: %{name}-lib = %{epoch}:%{version}-%{release} %description common From 25b0e35ce6b33437ae72311d5e50bd4fa1813a9e Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:07 +0300 Subject: [PATCH 108/124] Revert "Introduce tomcat-common subpackage" This reverts commit da88992d305c75f9c407eeedbd28be0ef038237d. --- tomcat.spec | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 7ad4bc5..e39e9e4 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -65,7 +65,8 @@ BuildRequires: aqute-bnd BuildRequires: tomcat-jakartaee-migration BuildRequires: systemd -Requires: %{name}-common = %{epoch}:%{version}-%{release} +Requires: (java-headless >= 11 or java >= 11) +Requires: %{name}-lib = %{epoch}:%{version}-%{release} Recommends: tomcat-native >= %{native_version} Requires: systemd @@ -104,14 +105,6 @@ Conflicts: tomcat-jsp-2.3-api %description jsp-%{jspspec}-api Apache Tomcat JSP API Implementation Classes. -%package common -Summary: Apache Tomcat - Servlet and JSP engine -- common files -Requires: (java-headless >= 11 or java >= 11) -Requires: %{name}-lib = %{epoch}:%{version}-%{release} - -%description common -Apache Tomcat - Servlet and JSP engine -- common files - %package lib Summary: Libraries needed to run the Tomcat Web container Requires: %{name}-jsp-%{jspspec}-api = %{epoch}:%{version}-%{release} @@ -270,7 +263,6 @@ sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat.pom %mvn_package ":tomcat-el-api" tomcat-el-api %mvn_package ":tomcat-jsp-api" tomcat-jsp-api %mvn_package ":tomcat-servlet-api" tomcat-servlet-api -%mvn_package ":tomcat-bootstrap" tomcat-common %mvn_install @@ -307,9 +299,10 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %files %doc {LICENSE,NOTICE,RELEASE-NOTES,RUNNING.txt} %{_unitdir}/%{name}.service -%{_libexecdir}/%{name}/tomcat-start.sh +%{_libexecdir}/%{name} %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}.disabled %{_sysusersdir}/tomcat.conf +%{homedir} %{baseconfdir} %{baselogdir} %{workdir} @@ -340,12 +333,7 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %files docs-webapp %{appdir}/docs -%files common -f .mfiles-tomcat-common -%{_libexecdir}/%{name}/tomcat-locate-java.sh -%{homedir}/bin - %files lib -f .mfiles -%{homedir}/lib %{libdir}/jakartaee-migration-x.jar %{libdir}/ecj-x.jar %exclude %{libdir}/tomcat-jni.pom From 79945597b972036788be4f873ee038546963e61c Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:08 +0300 Subject: [PATCH 109/124] Revert "- This commit introduces the major change of dropping the custom scripts and using the upstream scripts for tomcat deployment." This reverts commit 0ca450977f6e29b85c371b7cc706b3d61decedd5. --- module-start-up-parameters.conf | 8 ++ tomcat-10.1-digest.script | 45 +++++++++ tomcat-10.1-locate-java.sh | 21 ----- tomcat-10.1-start.sh | 18 ---- ...h => tomcat-10.1-tomcat-users-webapp.patch | 0 tomcat-10.1-tool-wrapper.script | 45 +++++++++ tomcat-10.1.conf | 54 +++++++---- tomcat-10.1.service | 35 ++----- tomcat-10.1.sysconfig | 11 +++ tomcat-10.1.wrapper | 24 +++++ tomcat-10.1-build.patch => tomcat-build.patch | 0 tomcat-functions | 21 +++++ tomcat-named.service | 24 +++++ tomcat-preamble | 52 ++++++++++ tomcat-server | 25 +++++ tomcat.spec | 94 ++++++++++++++----- 16 files changed, 367 insertions(+), 110 deletions(-) create mode 100644 module-start-up-parameters.conf create mode 100644 tomcat-10.1-digest.script delete mode 100644 tomcat-10.1-locate-java.sh delete mode 100644 tomcat-10.1-start.sh rename tomcat-10.1-users-webapp.patch => tomcat-10.1-tomcat-users-webapp.patch (100%) create mode 100644 tomcat-10.1-tool-wrapper.script create mode 100644 tomcat-10.1.sysconfig create mode 100644 tomcat-10.1.wrapper rename tomcat-10.1-build.patch => tomcat-build.patch (100%) create mode 100644 tomcat-functions create mode 100644 tomcat-named.service create mode 100644 tomcat-preamble create mode 100644 tomcat-server diff --git a/module-start-up-parameters.conf b/module-start-up-parameters.conf new file mode 100644 index 0000000..7f8652a --- /dev/null +++ b/module-start-up-parameters.conf @@ -0,0 +1,8 @@ +# Add the module start-up parameters required by Tomcat +JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.lang=ALL-UNNAMED" +JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.io=ALL-UNNAMED" +JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.util=ALL-UNNAMED" +JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/java.util.concurrent=ALL-UNNAMED" +JAVA_OPTS="$JAVA_OPTS --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED" +export JAVA_OPTS + diff --git a/tomcat-10.1-digest.script b/tomcat-10.1-digest.script new file mode 100644 index 0000000..ce4aa0f --- /dev/null +++ b/tomcat-10.1-digest.script @@ -0,0 +1,45 @@ +#!/bin/sh +# +# tomcat-digest script +# JPackage Project + +# Source functions library +if [ -f /usr/share/java-utils/java-functions ] ; then + . /usr/share/java-utils/java-functions +else + echo "Can't find functions library, aborting" + exit 1 +fi + +# Get the tomcat config (use this for environment specific settings) +if [ -z "${TOMCAT_CFG}" ]; then + TOMCAT_CFG="/etc/tomcat/tomcat.conf" +fi + +if [ -r "$TOMCAT_CFG" ]; then + . $TOMCAT_CFG +fi + +set_javacmd + +# CLASSPATH munging +if [ -n "$JSSE_HOME" ]; then + CLASSPATH="${CLASSPATH}:$(build-classpath jcert jnet jsse 2>/dev/null)" +fi +CLASSPATH="${CLASSPATH}:${CATALINA_HOME}/bin/bootstrap.jar" +CLASSPATH="${CLASSPATH}:${CATALINA_HOME}/bin/tomcat-juli.jar" +export CLASSPATH + +# Configuration +MAIN_CLASS="org.apache.catalina.startup.Tool" +BASE_FLAGS="-Dcatalina.home=\"$CATALINA_HOME\"" +BASE_OPTIONS="" +BASE_JARS="commons-daemon tomcat/catalina servlet tomcat/tomcat-util tomcat/tomcat-coyote tomcat/tomcat-api tomcat/tomcat-util-scan" + +# Set parameters +set_classpath $BASE_JARS +set_flags $BASE_FLAGS +set_options $BASE_OPTIONS + +# Let's start +run -server org.apache.catalina.realm.RealmBase "$@" diff --git a/tomcat-10.1-locate-java.sh b/tomcat-10.1-locate-java.sh deleted file mode 100644 index cb272e7..0000000 --- a/tomcat-10.1-locate-java.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/sh -# Script looking for a Java runtime suitable for running Tomcat. -#The Java runtime found is exported in the JAVA_HOME environment variable. -set -e -if [ -z "$JAVA_HOME" ]; then - INSTALLATION_PATH="/usr/lib/jvm/" - for jvmdir in "${INSTALLATION_PATH}"java* "${INSTALLATION_PATH}"jre*; do - if [ -d "${jvmdir}" ] && [ -r "${jvmdir}/bin/java" ]; then - MAJOR_JAVA_VERSION=$("${jvmdir}/bin/java" --version | head -n 1 | sed -E 's/^[^0-9]*1\.([0-9]+).*/\1/; t; s/^[^0-9]*([0-9]+)\..*/\1/') - # Tomcat 10 requires Java >= 11 - if [ "${MAJOR_JAVA_VERSION}" -ge 11 ]; then - export JAVA_HOME="${jvmdir}" - exit 0 - fi - fi - done -fi -if [ -z "$JAVA_HOME" ]; then - echo "No JDK or JRE found - Please set the JAVA_HOME variable." - exit 1 -fi diff --git a/tomcat-10.1-start.sh b/tomcat-10.1-start.sh deleted file mode 100644 index d682610..0000000 --- a/tomcat-10.1-start.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/sh -# Startup script for Apache Tomcat with systemd - -set -e - -# Load the service settings -. /etc/tomcat/tomcat.conf - -# Try to find Java installation and set JAVA_HOME -/bin/sh /usr/libexec/tomcat/tomcat-locate-java.sh - -# Enable the Java security manager? -SECURITY="" -[ "$SECURITY_MANAGER" = "true" ] && SECURITY="-security" - - -# Start Tomcat -cd "$CATALINA_BASE" && "$CATALINA_HOME"/bin/catalina.sh run $SECURITY \ No newline at end of file diff --git a/tomcat-10.1-users-webapp.patch b/tomcat-10.1-tomcat-users-webapp.patch similarity index 100% rename from tomcat-10.1-users-webapp.patch rename to tomcat-10.1-tomcat-users-webapp.patch diff --git a/tomcat-10.1-tool-wrapper.script b/tomcat-10.1-tool-wrapper.script new file mode 100644 index 0000000..949d46d --- /dev/null +++ b/tomcat-10.1-tool-wrapper.script @@ -0,0 +1,45 @@ +#!/bin/sh +# +# tomcat-digest script +# JPackage Project + +# Source functions library +if [ -f /usr/share/java-utils/java-functions ] ; then + . /usr/share/java-utils/java-functions +else + echo "Can't find functions library, aborting" + exit 1 +fi + +# Get the tomcat config (use this for environment specific settings) +if [ -z "${TOMCAT_CFG}" ]; then + TOMCAT_CFG="/etc/tomcat/tomcat.conf" +fi + +if [ -r "$TOMCAT_CFG" ]; then + . $TOMCAT_CFG +fi + +set_javacmd + +# CLASSPATH munging +if [ -n "$JSSE_HOME" ]; then + CLASSPATH="${CLASSPATH}:$(build-classpath jcert jnet jsse 2>/dev/null)" +fi +CLASSPATH="${CLASSPATH}:${CATALINA_HOME}/bin/bootstrap.jar" +CLASSPATH="${CLASSPATH}:${CATALINA_HOME}/bin/tomcat-juli.jar" +export CLASSPATH + +# Configuration +MAIN_CLASS="org.apache.catalina.startup.Tool" +BASE_OPTIONS="" +BASE_FLAGS="-Dcatalina.home=\"$CATALINA_HOME\"" +BASE_JARS="commons-daemon tomcat/catalina servlet tomcat/tomcat-util tomcat/tomcat-coyote tomcat/tomcat-api tomcat/tomcat-util-scan" + +# Set parameters +set_classpath $BASE_JARS +set_flags $BASE_FLAGS +set_options $BASE_OPTIONS + +# Let's start +run "$@" diff --git a/tomcat-10.1.conf b/tomcat-10.1.conf index a698426..c83305a 100644 --- a/tomcat-10.1.conf +++ b/tomcat-10.1.conf @@ -1,24 +1,42 @@ -# Minimum required Java version is 11. -#export JAVA_HOME=/usr/lib/jvm/java-11 +# System-wide configuration file for tomcat services +# This will be loaded by systemd as an environment file, +# so please keep the syntax. For shell expansion support +# place your custom files as /etc/tomcat/conf.d/*.conf +# +# There are 2 "classes" of startup behavior in this package. +# The old one, the default service named tomcat.service. +# The new named instances are called tomcat@instance.service. +# +# Use this file to change default values for all services. +# Change the service specific ones to affect only one service. +# For tomcat.service it's /etc/sysconfig/tomcat, for +# tomcat@instance it's /etc/sysconfig/tomcat@instance. -# Include here and not in JAVA_OPTS all options, that should only be used by Tomcat itself. -# Examples are heap size, GC logging, JMX ports etc. -#export CATALINA_OPTS="-Dcatalina.http.port=8082" +# This variable is used to figure out if config is loaded or not. +TOMCAT_CFG_LOADED="1" -# Java runtime options used when any command is executed. -#export JAVA_OPTS="-Xmx512m -Xms256m" +# In new-style instances, if CATALINA_BASE isn't specified, it will +# be constructed by joining TOMCATS_BASE and NAME. +TOMCATS_BASE="/var/lib/tomcats/" -# To enable remote debugging uncomment the following line. -# You will then be able to use a Java debugger on port 8000. -#export JAVA_OPTS="${JAVA_OPTS} -agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n" +# Where your java installation lives +JAVA_HOME="/usr/lib/jvm/jre" -# Java compiler to use for translating JavaServer Pages (JSPs). You can use all -# compilers that are accepted by Ant's build.compiler property. -#export JSP_COMPILER=javac -#export JAVA_OPTS="$JAVA_OPTS -Dbuild.compiler=$JSP_COMPILER" +# Where your tomcat installation lives +CATALINA_HOME="@@@TCHOME@@@" -# Enable the Java security manager? (true/false, default: false) -#export SECURITY_MANAGER=true +# System-wide tmp +CATALINA_TMPDIR="/var/cache/tomcat/temp" -# Whether to compress logfiles older than today's -#export LOGFILE_COMPRESS=1 \ No newline at end of file +# You can change your tomcat locale here +#LANG="en_US" + +# Run tomcat under the Java Security Manager +SECURITY_MANAGER="false" + +# If you wish to further customize your tomcat environment, +# put your own definitions here +# (i.e. LD_LIBRARY_PATH for some jdbc drivers) + +# You can also pass parameters to Java here by defining JAVA_OPTS variable +# (e.g. JAVA_OPTS="-Xminf0.1 -Xmaxf0.3") diff --git a/tomcat-10.1.service b/tomcat-10.1.service index 55639b2..832e7c6 100644 --- a/tomcat-10.1.service +++ b/tomcat-10.1.service @@ -1,39 +1,20 @@ -# Systemd unit file for for Apache Tomcat +# Systemd unit file for default tomcat +# +# To create clones of this service: +# DO NOTHING, use tomcat@.service instead. [Unit] Description=Apache Tomcat Web Application Container -Documentation=https://tomcat.apache.org/tomcat-10.1-doc/index.html After=syslog.target network.target -RequiresMountsFor=/var/log/tomcat /var/lib/tomcat [Service] -# Configuration -Environment="CATALINA_HOME=/usr/share/tomcat" -Environment="CATALINA_BASE=/var/lib/tomcat" -Environment="CATALINA_TMPDIR=/tmp" -Environment="JAVA_OPTS=-Djava.awt.headless=true" - -# Lifecycle Type=simple -ExecStart=/bin/sh /usr/libexec/tomcat/tomcat-start.sh +EnvironmentFile=/etc/tomcat/tomcat.conf +Environment="NAME=" +EnvironmentFile=-/etc/sysconfig/tomcat +ExecStart=/usr/libexec/tomcat/server start SuccessExitStatus=143 -Restart=on-abort - -# Logging -SyslogIdentifier=tomcat - -# Security User=tomcat -Group=tomcat -PrivateTmp=yes -AmbientCapabilities=CAP_NET_BIND_SERVICE -NoNewPrivileges=true -CacheDirectory=tomcat -CacheDirectoryMode=750 -ProtectSystem=strict -ReadWritePaths=/etc/tomcat/Catalina/ -ReadWritePaths=/var/lib/tomcat/webapps/ -ReadWritePaths=/var/log/tomcat/ [Install] WantedBy=multi-user.target diff --git a/tomcat-10.1.sysconfig b/tomcat-10.1.sysconfig new file mode 100644 index 0000000..3117bf7 --- /dev/null +++ b/tomcat-10.1.sysconfig @@ -0,0 +1,11 @@ +# Service-specific configuration file for tomcat. This will be sourced by +# systemd for the default service (tomcat.service) +# If you want to customize named instance, make a similar file +# and name it tomcat@instancename. + +# You will not need to set this, usually. For default service it equals +# CATALINA_HOME. For named service, it equals ${TOMCATS_BASE}${NAME} +#CATALINA_BASE="@@@TCHOME@@@" + +# Please take a look at /etc/tomcat/tomcat.conf to have an idea what you +# can override. diff --git a/tomcat-10.1.wrapper b/tomcat-10.1.wrapper new file mode 100644 index 0000000..c97cb85 --- /dev/null +++ b/tomcat-10.1.wrapper @@ -0,0 +1,24 @@ +#!/bin/bash + +if [ "$1" = "version" ]; then + . /usr/libexec/tomcat/preamble + exec ${JAVACMD} -classpath ${CATALINA_HOME}/lib/catalina.jar \ + org.apache.catalina.util.ServerInfo +fi + +SRV="tomcat" +if [ -n "$2" ]; then + SRV="tomcat@$2" +fi + +if [ "$1" = "start" ]; then + systemctl start ${SRV}.service +elif [ "$1" = "stop" ]; then + systemctl stop ${SRV}.service +elif [ "$1" = "version" ]; then + ${JAVACMD} -classpath ${CATALINA_HOME}/lib/catalina.jar \ + org.apache.catalina.util.ServerInfo +else + echo "Usage: $0 {start|stop|version} [server-id]" + exit 1 +fi diff --git a/tomcat-10.1-build.patch b/tomcat-build.patch similarity index 100% rename from tomcat-10.1-build.patch rename to tomcat-build.patch diff --git a/tomcat-functions b/tomcat-functions new file mode 100644 index 0000000..1187653 --- /dev/null +++ b/tomcat-functions @@ -0,0 +1,21 @@ +#!/bin/bash + +if [ -r /usr/share/java-utils/java-functions ]; then + . /usr/share/java-utils/java-functions +else + echo "Can't read Java functions library, aborting" + exit 1 +fi + +_save_function() { + local ORIG_FUNC=$(declare -f $1) + local NEWNAME_FUNC="$2${ORIG_FUNC#$1}" + eval "$NEWNAME_FUNC" +} + +_save_function run run_java + +run() { + run_java $@ +} + diff --git a/tomcat-named.service b/tomcat-named.service new file mode 100644 index 0000000..b6cd8bd --- /dev/null +++ b/tomcat-named.service @@ -0,0 +1,24 @@ +# Systemd unit file for tomcat instances. +# +# To create clones of this service: +# 0. systemctl enable tomcat@name.service +# 1. create catalina.base directory structure in +# /var/lib/tomcats/name +# 2. profit. + +[Unit] +Description=Apache Tomcat Web Application Container +After=syslog.target network.target + +[Service] +Type=simple +EnvironmentFile=/etc/tomcat/tomcat.conf +Environment="NAME=%i" +EnvironmentFile=-/etc/sysconfig/tomcat@%i +ExecStart=/usr/libexec/tomcat/server start +ExecStop=/usr/libexec/tomcat/server stop +SuccessExitStatus=143 +User=tomcat + +[Install] +WantedBy=multi-user.target diff --git a/tomcat-preamble b/tomcat-preamble new file mode 100644 index 0000000..1271dca --- /dev/null +++ b/tomcat-preamble @@ -0,0 +1,52 @@ +#!/bin/bash + +. /usr/libexec/tomcat/functions + +# Get the tomcat config (use this for environment specific settings) + +if [ -z "${TOMCAT_CFG_LOADED}" ]; then + if [ -z "${TOMCAT_CFG}" ]; then + TOMCAT_CFG="/etc/tomcat/tomcat.conf" + fi + . $TOMCAT_CFG +fi + +if [ -d "${TOMCAT_CONFD=/etc/tomcat/conf.d}" ]; then + for file in ${TOMCAT_CONFD}/*.conf ; do + if [ -f "$file" ] ; then + . "$file" + fi + done +fi + +if [ -z "$CATALINA_BASE" ]; then + if [ -n "$NAME" ]; then + if [ -z "$TOMCATS_BASE" ]; then + TOMCATS_BASE="/var/lib/tomcats/" + fi + CATALINA_BASE="${TOMCATS_BASE}${NAME}" + else + CATALINA_BASE="${CATALINA_HOME}" + fi +fi +VERBOSE=1 +set_javacmd +cd ${CATALINA_HOME} +# CLASSPATH munging +if [ ! -z "$CLASSPATH" ] ; then + CLASSPATH="$CLASSPATH": +fi + +if [ -n "$JSSE_HOME" ]; then + CLASSPATH="${CLASSPATH}$(build-classpath jcert jnet jsse 2>/dev/null):" +fi +CLASSPATH="${CLASSPATH}${CATALINA_HOME}/bin/bootstrap.jar" +CLASSPATH="${CLASSPATH}:${CATALINA_HOME}/bin/tomcat-juli.jar" +CLASSPATH="${CLASSPATH}:$(build-classpath commons-daemon 2>/dev/null)" + +if [ -z "$LOGGING_PROPERTIES" ] ; then + LOGGING_PROPERTIES="${CATALINA_BASE}/conf/logging.properties" + if [ ! -f "${LOGGING_PROPERTIES}" ] ; then + LOGGING_PROPERTIES="${CATALINA_HOME}/conf/logging.properties" + fi +fi diff --git a/tomcat-server b/tomcat-server new file mode 100644 index 0000000..17ae385 --- /dev/null +++ b/tomcat-server @@ -0,0 +1,25 @@ +#!/bin/bash + +. /usr/libexec/tomcat/preamble + +MAIN_CLASS=org.apache.catalina.startup.Bootstrap + +FLAGS="$JAVA_OPTS" +OPTIONS="-Dcatalina.base=$CATALINA_BASE \ +-Dcatalina.home=$CATALINA_HOME \ +-Djava.endorsed.dirs=$JAVA_ENDORSED_DIRS \ +-Djava.io.tmpdir=$CATALINA_TMPDIR \ +-Djava.util.logging.config.file=${LOGGING_PROPERTIES} \ +-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager" + +if [ "$1" = "start" ] ; then + FLAGS="${FLAGS} $CATALINA_OPTS" + if [ "${SECURITY_MANAGER}" = "true" ] ; then + OPTIONS="${OPTIONS} \ + -Djava.security.manager \ + -Djava.security.policy==${CATALINA_BASE}/conf/catalina.policy" + fi + run start +elif [ "$1" = "stop" ] ; then + run stop +fi diff --git a/tomcat.spec b/tomcat.spec index e39e9e4..6b5787b 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -20,6 +20,7 @@ %global libdir %{_javadir}/%{name} %global logdir %{_var}/log/%{name} %global cachedir %{_var}/cache/%{name} +%global tempdir %{cachedir}/temp %global workdir %{basedir}/work Name: tomcat @@ -33,15 +34,22 @@ License: Apache-2.0 URL: http://tomcat.apache.org/ Source0: http://www.apache.org/dist/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz Source1: %{name}-%{major_version}.%{minor_version}.conf -Source2: %{name}-%{major_version}.%{minor_version}.logrotate -Source3: %{name}-%{major_version}.%{minor_version}.service -Source4: %{name}-%{major_version}.%{minor_version}-locate-java.sh -Source5: %{name}-%{major_version}.%{minor_version}-start.sh +Source2: %{name}-%{major_version}.%{minor_version}.sysconfig +Source3: %{name}-%{major_version}.%{minor_version}.wrapper +Source4: %{name}-%{major_version}.%{minor_version}.logrotate +Source5: %{name}-%{major_version}.%{minor_version}-digest.script +Source6: %{name}-%{major_version}.%{minor_version}-tool-wrapper.script +Source7: %{name}-%{major_version}.%{minor_version}.service +Source8: %{name}-functions +Source9: %{name}-preamble +Source10: %{name}-server +Source11: %{name}-named.service +Source12: module-start-up-parameters.conf # https://bugzilla.redhat.com/show_bug.cgi?id=435829 Patch0: %{name}-%{major_version}.%{minor_version}-bootstrap-MANIFEST.MF.patch -Patch1: %{name}-%{major_version}.%{minor_version}-users-webapp.patch -Patch2: %{name}-%{major_version}.%{minor_version}-build.patch +Patch1: %{name}-%{major_version}.%{minor_version}-tomcat-users-webapp.patch +Patch2: %{name}-build.patch # catalina.policy patch to allow ECJ usage under the Security Manager Patch3: %{name}-%{major_version}.%{minor_version}-catalina-policy.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1857043 @@ -52,9 +60,7 @@ Patch5: %{name}-%{major_version}.%{minor_version}-JDTCompiler.patch Patch6: rhbz-1857043.patch BuildArch: noarch -# Can't use noarch since we are packaging tomcat-jni.jar. -# See: https://docs.fedoraproject.org/en-US/packaging-guidelines/Java/#_architecture_support -ExclusiveArch: %{java_arches} +ExclusiveArch: %{java_arches} noarch BuildRequires: ant BuildRequires: ecj @@ -63,9 +69,9 @@ BuildRequires: java-devel BuildRequires: javapackages-local BuildRequires: aqute-bnd BuildRequires: tomcat-jakartaee-migration -BuildRequires: systemd Requires: (java-headless >= 11 or java >= 11) +Requires: javapackages-tools Requires: %{name}-lib = %{epoch}:%{version}-%{release} Recommends: tomcat-native >= %{native_version} Requires: systemd @@ -112,6 +118,7 @@ Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} Requires: ecj >= 4.20 Recommends: tomcat-jakartaee-migration +Requires(preun): coreutils %description lib Libraries needed to run the Tomcat Web container. @@ -195,8 +202,10 @@ touch HACK %install # build initial path structure -# %{__install} -d ${RPM_BUILD_ROOT}%{_bindir} +%{__install} -d ${RPM_BUILD_ROOT}%{_bindir} +%{__install} -d ${RPM_BUILD_ROOT}%{_sbindir} %{__install} -d ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d +%{__install} -d ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig %{__install} -d ${RPM_BUILD_ROOT}%{appdir} %{__install} -d ${RPM_BUILD_ROOT}%{bindir} %{__install} -d ${RPM_BUILD_ROOT}%{confdir} @@ -205,19 +214,12 @@ touch HACK /bin/echo "Place your custom *.conf files here. Shell expansion is supported." > ${RPM_BUILD_ROOT}%{confdir}/conf.d/README %{__install} -d ${RPM_BUILD_ROOT}%{libdir} %{__install} -d ${RPM_BUILD_ROOT}%{logdir} +%{__install} -d ${RPM_BUILD_ROOT}%{_localstatedir}/lib/tomcats %{__install} -d ${RPM_BUILD_ROOT}%{homedir} -%{__install} -d ${RPM_BUILD_ROOT}%{cachedir} +%{__install} -d ${RPM_BUILD_ROOT}%{tempdir} %{__install} -d ${RPM_BUILD_ROOT}%{_unitdir} %{__install} -d ${RPM_BUILD_ROOT}%{_libexecdir}/%{name} -%{__install} %{SOURCE1} ${RPM_BUILD_ROOT}%{confdir}/%{name}.conf -%{__sed} -e "s|\@\@\@TCLOG\@\@\@|%{logdir}|g" %{SOURCE2} > ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{name}.disabled -%{__install} %{SOURCE3} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service -%{__install} %{SOURCE4} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-locate-java.sh -%{__install} %{SOURCE5} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-start.sh - -%{__install} -D tomcat.sysusers.conf ${RPM_BUILD_ROOT}%{_sysusersdir}/tomcat.conf - for jar in output/build/lib/*.jar; do # Skip Jar if empty, applies to tomcat-coyote-ffm.jar atm jar tf ${jar} | grep -E -q '.*\.class' || continue @@ -235,7 +237,7 @@ for jar in output/build/lib/*.jar; do sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" ${pom} case "${jarname}" in - tomcat-jni) %mvn_file org.apache.tomcat:tomcat-jni tomcat/tomcat-jni %{libdir}/tomcat-jni ;; + tomcat-jni) %mvn_file org.apache.tomcat:tomcat-jni tomcat/tomcat-jni ${RPM_BUILD_ROOT}%{libdir}/tomcat-jni ;; jsp-api) %mvn_file org.apache.tomcat:tomcat-jsp-api tomcat/jsp-api tomcat/%{name}-jsp-%{jspspec}-api %{name}-jsp-%{jspspec}-api %{name}-jsp-api ;; servlet-api) %mvn_file org.apache.tomcat:tomcat-servlet-api tomcat/servlet-api tomcat/%{name}-servlet-%{servletspec}-api %{name}-servlet-%{servletspec}-api %{name}-servlet-api ;; el-api) %mvn_file org.apache.tomcat:tomcat-el-api tomcat/el-api tomcat/%{name}-el-%{servletspec}-api %{name}-el-%{servletspec}-api %{name}-el-api ;; @@ -253,8 +255,9 @@ sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat-juli.pom # bootstrap does not have a pom, generate one %mvn_artifact 'org.apache.tomcat:tomcat-bootstrap:%{version}' output/build/bin/bootstrap.jar -%mvn_file org.apache.tomcat:tomcat-bootstrap tomcat/tomcat-bootstrap -%mvn_file org.apache.tomcat:tomcat-juli tomcat/tomcat-juli +#Create symlinks to bindir +%mvn_file :tomcat-bootstrap tomcat/tomcat-bootstrap ${RPM_BUILD_ROOT}%{bindir}/bootstrap.jar +%mvn_file :tomcat-juli tomcat/tomcat-juli ${RPM_BUILD_ROOT}%{bindir}/tomcat-juli.jar # tomcat-parent pom sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat.pom @@ -273,24 +276,56 @@ jar ufm ${RPM_BUILD_ROOT}%{libdir}/servlet-api.jar <(echo "JavaPackages-GroupId: # move things into place pushd output/build - %{__cp} -a bin/* ${RPM_BUILD_ROOT}%{bindir} + %{__cp} -a bin/*.xml ${RPM_BUILD_ROOT}%{bindir} %{__cp} -a conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{confdir} %{__cp} -a webapps/* ${RPM_BUILD_ROOT}%{appdir} popd +%{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ + -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ + -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE1} \ + > ${RPM_BUILD_ROOT}%{confdir}/%{name}.conf +%{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ + -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ + -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE2} \ + > ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/%{name} +%{__install} %{SOURCE3} \ + ${RPM_BUILD_ROOT}%{_sbindir}/%{name} +%{__install} %{SOURCE7} \ + ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service +%{__sed} -e "s|\@\@\@TCLOG\@\@\@|%{logdir}|g" %{SOURCE4} \ + > ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{name}.disabled +%{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ + -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ + -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE5} \ + > ${RPM_BUILD_ROOT}%{_bindir}/%{name}-digest +%{__sed} -e "s|\@\@\@TCHOME\@\@\@|%{homedir}|g" \ + -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ + -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE6} \ + > ${RPM_BUILD_ROOT}%{_bindir}/%{name}-tool-wrapper + +%{__install} %{SOURCE8} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/functions +%{__install} %{SOURCE9} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/preamble +%{__install} %{SOURCE10} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/server +%{__install} %{SOURCE11} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}@.service +%{__install} %{SOURCE12} ${RPM_BUILD_ROOT}%{confdir}/conf.d/ + ln -sr $(build-classpath ecj/ecj) ${RPM_BUILD_ROOT}%{libdir}/ecj-x.jar ln -sr $(build-classpath tomcat-jakartaee-migration/jakartaee-migration) ${RPM_BUILD_ROOT}%{libdir}/jakartaee-migration-x.jar ln -sr %{confdir} ${RPM_BUILD_ROOT}%{baseconfdir} ln -sr %{cachedir} ${RPM_BUILD_ROOT}%{workdir} ln -sr %{logdir} ${RPM_BUILD_ROOT}%{baselogdir} -ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib + +install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf %post # install but don't activate %systemd_post %{name}.service %preun +# clean tempdir and workdir on removal or upgrade +%{__rm} -rf %{workdir}/* %{tempdir}/* %systemd_preun %{name}.service %postun @@ -298,8 +333,14 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %files %doc {LICENSE,NOTICE,RELEASE-NOTES,RUNNING.txt} +%{_bindir}/%{name}-digest +%{_bindir}/%{name}-tool-wrapper +%{_sbindir}/%{name} %{_unitdir}/%{name}.service +%{_unitdir}/%{name}@.service %{_libexecdir}/%{name} +%{_localstatedir}/lib/tomcats +%config(noreplace) %{_sysconfdir}/sysconfig/%{name} %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}.disabled %{_sysusersdir}/tomcat.conf %{homedir} @@ -308,6 +349,7 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %{workdir} %attr(2770,tomcat,adm) %dir %{logdir} %attr(750,tomcat,tomcat) %dir %{cachedir} +%attr(0770,root,tomcat) %{tempdir} %attr(2775,tomcat,tomcat) %dir %{appdir} %{confdir}/conf.d @@ -334,9 +376,9 @@ ln -sr %{libdir} ${RPM_BUILD_ROOT}%{homedir}/lib %{appdir}/docs %files lib -f .mfiles +%defattr(644, root, tomcat, 2775) %{libdir}/jakartaee-migration-x.jar %{libdir}/ecj-x.jar -%exclude %{libdir}/tomcat-jni.pom %files jsp-%{jspspec}-api -f .mfiles-tomcat-jsp-api %doc LICENSE From 3b3d4720d719fb08bdf88edab78a047a778e073f Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:08 +0300 Subject: [PATCH 110/124] Revert "Remove javapackages test case rule from gating" This reverts commit 2c9c3acaccc5eb73509a13d07e1115c005448592. --- gating.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/gating.yaml b/gating.yaml index e49f5a7..b81b8c4 100644 --- a/gating.yaml +++ b/gating.yaml @@ -9,4 +9,5 @@ rules: - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional} - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis} - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/javapackages.functional} - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/smoke.functional} From 3c60e9fb09464f4d385e536bdc12d234589f3896 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:08 +0300 Subject: [PATCH 111/124] Revert "Use ecj and jakartaee-migration jars from the installed system rather than distributing the jars in tomcat-lib package." This reverts commit 727c3d6f657ad7d523dbf99c662d7e1bbcacc36f. --- tomcat.spec | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 6b5787b..b25b959 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -191,7 +191,7 @@ touch HACK -Dbnd-annotation.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ -Dversion="%{version}" \ -Dversion.build="%{micro_version}" \ - -Dmigration-lib.jar="$(build-classpath tomcat-jakartaee-migration/jakartaee-migration)" \ + -Dmigration-lib.jar="$(build-classpath tomcat-jakartaee-migration/jakartaee-migration.jar)" \ deploy # remove some jars that we'll replace with symlinks later @@ -310,8 +310,15 @@ popd %{__install} %{SOURCE11} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}@.service %{__install} %{SOURCE12} ${RPM_BUILD_ROOT}%{confdir}/conf.d/ -ln -sr $(build-classpath ecj/ecj) ${RPM_BUILD_ROOT}%{libdir}/ecj-x.jar -ln -sr $(build-classpath tomcat-jakartaee-migration/jakartaee-migration) ${RPM_BUILD_ROOT}%{libdir}/jakartaee-migration-x.jar +pushd output/build + %{_bindir}/build-jar-repository lib ecj 2>&1 + %{_bindir}/build-jar-repository lib tomcat-jakartaee-migration 2>&1 +popd + +pushd ${RPM_BUILD_ROOT}%{libdir} + %{__cp} $(build-classpath ecj/ecj) ecj-x.jar + %{__cp} $(build-classpath tomcat-jakartaee-migration/jakartaee-migration) jakartaee-migration-x.jar +popd ln -sr %{confdir} ${RPM_BUILD_ROOT}%{baseconfdir} ln -sr %{cachedir} ${RPM_BUILD_ROOT}%{workdir} From 397fdf2e2e4ee04a6933417dc8850278f59dba1d Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:09:09 +0300 Subject: [PATCH 112/124] Revert "General tweaks, fixes and enhancements" This reverts commit a7d2bc1fe90786612fc38330fc1903c42f7e7f8b. --- changelog | 643 ------------------------------- tomcat.spec | 1050 ++++++++++++++++++++++++++++++++++++++++++++------- 2 files changed, 905 insertions(+), 788 deletions(-) delete mode 100644 changelog diff --git a/changelog b/changelog deleted file mode 100644 index 7d2f562..0000000 --- a/changelog +++ /dev/null @@ -1,643 +0,0 @@ -* Fri Jan 10 2025 Dimitris Soumis - 1:10.1.34-1 -- Update to version 10.1.34 - -* Mon Dec 09 2024 Packit - 1:9.0.98-1 -- Update to version 9.0.98 -- Resolves: rhbz#2331168 - -* Mon Dec 02 2024 Dimitris Soumis - 1:9.0.97-1 -- Update to version 9.0.97 -- Resolves: rhbz#2327090 - -* Tue Oct 08 2024 Packit - 1:9.0.96-1 -- Update to version 9.0.96 -- Resolves: rhbz#2317237 - -* Tue Sep 17 2024 Packit - 1:9.0.95-1 -- Update to version 9.0.95 -- Resolves: rhbz#2312858 - -* Tue Sep 10 2024 Packit - 1:9.0.94-1 -- Update to version 9.0.94 -- Resolves: rhbz#2311320 - -* Tue Aug 06 2024 Packit - 1:9.0.93-1 -- Update to version 9.0.93 -- Resolves: rhbz#2303026 - -* Wed Jul 24 2024 Miroslav Suchý - 1:9.0.91-1 -- convert license to SPDX - -* Thu Jul 11 2024 Dimitris Soumis - 1:9.0.91-1 -- Update to 9.0.91 - -* Thu Jun 20 2024 Dimitris Soumis - 1:9.0.90-1 -- Update to 9.0.90 - -* Fri Jun 7 2024 Dimitris Soumis - 1:9.0.89-1 -- Update to 9.0.89 - -* Thu Feb 29 2024 Adam Williamson - 1:9.0.83-4 -- Accept java-21-headless as one of the alternatives for java - -* Tue Feb 27 2024 Jiri Vanek - 1:9.0.83-3 -- Rebuilt for java-21-openjdk as system jdk - -* Sat Jan 27 2024 Fedora Release Engineering - 1:9.0.83-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Fri Dec 01 2023 Hui Wang - 1:9.0.83-1 -- Update to 9.0.83 - -* Mon Oct 16 2023 Hui Wang - 1:9.0.82-1 -- Update to 9.0.82 -- Resolves: rhbz#2244333 Wrong dbcp class in tomcat 9 - -* Wed Sep 13 2023 Hui Wang - 1:9.0.80-1 -- Update to 9.0.80 -- Fix java version - -* Fri Aug 04 2023 Hui Wang - 1:9.0.78-4 -- Fix files permission - -* Wed Jul 26 2023 Hui Wang - 1:9.0.78-3 -- Exclude jnidir in the lib subpackage - -* Tue Jul 25 2023 Hui Wang - 1:9.0.78-2 -- Resolves: rhbz#2224318 There are duplicated jars in the tomcat lib subpackage - -* Tue Jul 25 2023 Hui Wang - 1:9.0.78-1 -- Resolves: rhbz#2224318 There are duplicated jars in the tomcat lib-subpackage -- Update to 9.0.78 - -* Sat Jul 22 2023 Fedora Release Engineering - 1:9.0.76-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Tue Jun 20 2023 Hui Wang - 1:9.0.76-2 -- Resolves: rhbz#2189672 Missing Tomcat POM files in Fedora Rawhide -- Remove JDTCompiler patch because ecj has been update -- Update to 9.0.76 -- Resolves: rhbz#2188218 Link bin/tomcat-juli.jar to /usr/share/java -- Move tomcat-jsp-2.3-api.jar,tomcat-servlet-4.0-api.jar and tomcat-el-api.jar to the subpackages - -* Thu Jun 08 2023 Hui Wang - 1:9.0.75-1 -- Update to 9.0.75 - -* Fri Mar 17 2023 Hui Wang - 1:9.0.73-1 -- Update to 9.0.73 - -* Sun Jan 29 2023 Hui Wang - 1:9.0.71-1 -- Update to 9.0.71 -- Remove osgi-annotations patch -- Add bnd-annotation dependency which is in bndlib package - -* Sat Jan 21 2023 Fedora Release Engineering - 1:9.0.70-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Fri Jan 13 2023 Hui Wang - 1:9.0.70-1 -- Update to 9.0.70 - -* Thu Nov 03 2022 Hui Wang - 1:9.0.68-1 -- Update to 9.0.68 - -* Thu Jul 21 2022 Hui Wang - 1:9.0.65-1 -- Update to 9.0.65 - -* Fri Jul 08 2022 Jiri Vanek - 1:9.0.64-2 -- Rebuilt for Drop i686 JDKs - -* Tue Jun 21 2022 Hui Wang - 1:9.0.64-1 -- Update to 9.0.64 -- Add osgi-annotations dependency back - -* Thu Mar 10 2022 Coty Sutherland - 1:9.0.59-3 -- Related: rhbz#2061424 Adjust fix so that it uses the proper env var - -* Tue Mar 08 2022 Coty Sutherland - 1:9.0.59-2 -- Resolves: rhbz#2061424 Add Java 9 start-up parameters to allow reflection - -* Wed Mar 02 2022 Sonia Xu - 1:9.0.59-1 -- Update to 9.0.59 -- Resolves: rhbz#2047419 - CVE-2022-23181 tomcat: local privilege escalation vulnerability - -* Sat Feb 05 2022 Jiri Vanek - 1:9.0.56-3 -- Rebuilt for java-17-openjdk as system jdk - -* Sat Jan 22 2022 Fedora Release Engineering - 1:9.0.56-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Thu Dec 09 2021 Hui Wang - 1:9.0.56-1 -- Update to 9.0.56 - -* Tue Oct 12 2021 Hui Wang - 1:9.0.55-1 -- Update to 9.0.55 - -* Tue Oct 12 2021 Hui Wang - 1:9.0.54-1 -- Update to 9.0.54 - -* Thu Sep 16 2021 Hui Wang - 1:9.0.53-1 -- Update to 9.0.53 - -* Wed Aug 18 2021 Hui Wang - 1:9.0.52-1 -- Update to 9.0.52 - -* Fri Jul 23 2021 Fedora Release Engineering - 1:9.0.50-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Tue Jul 06 2021 Hui Wang - 1:9.0.50-1 -- Update to 9.0.50 - -* Sat Jun 05 2021 Coty Sutherland - 1:9.0.45-4 -- Add back logrotate config file per devel list request -- Add mvn virtual provides back for the servlet, el, and jsp spec impls - -* Fri Jun 04 2021 Coty Sutherland - 1:9.0.45-3 -- Drop geronimo-jaxrpc, which provided the webservices naming factory resources that are generally unused - -* Thu Jun 03 2021 Coty Sutherland - 1:9.0.45-2 -- Remove examples webapps from subpackage -- Updates to javapackages-local removed %%add_maven_depmap which broke the build, - so I removed the maven artifacts as they aren't very useful anyway -- Drop JSVC support as it's not very useful these days -- Drop geronimo-saaj as it's no longer required - -* Thu Apr 22 2021 Hui Wang - 1:9.0.45-1 -- Update to 9.0.45 - -* Thu Mar 18 2021 Hui Wang - 1:9.0.44-1 -- Update to 9.0.44 - -* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 1:9.0.43-2 -- Rebuilt for updated systemd-rpm-macros - See https://pagure.io/fesco/issue/2583. - -* Wed Feb 03 2021 Hui Wang - 1:9.0.43-1 -- Update to 9.0.43 - -* Wed Jan 27 2021 Fedora Release Engineering - 1:9.0.41-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Wed Dec 09 2020 Hui Wang - 1:9.0.41-1 -- Update to 9.0.41 - -* Wed Nov 18 2020 Hui Wang - 1:9.0.40-1 -- Update to 9.0.40 - -* Mon Oct 12 2020 Hui Wang - 1:9.0.39-1 -- Update to 9.0.39 - -* Wed Sep 16 2020 Hui Wang - 1:9.0.38-1 -- Update to 9.0.38 - -* Wed Jul 29 2020 Fedora Release Engineering - 1:9.0.37-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Fri Jul 24 2020 Coty Sutherland - 1:9.0.37-3 -- Related: rhbz#1857043 Temporarily remove OSGi metadata from tomcat jars - -* Mon Jul 20 2020 Coty Sutherland - 1:9.0.37-2 -- Resolves: rhbz#1857043 Add patch to reinclude o.a.t.util.net.jsse and o.a.t.util.moduler.modules in tomcat-coyote.jar - -* Mon Jul 13 2020 Coty Sutherland - 1:9.0.37-1 -- Update to 9.0.37 - -* Sat Jul 11 2020 Jiri Vanek - 1:9.0.36-2 -- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 - -* Wed Jun 10 2020 Hui Wang - 1:9.0.36-1 -- Upgrade to 9.0.36 - -* Sun May 31 2020 Hui Wang - 1:9.0.35-2 -- Upgrade to 9.0.35 - -* Wed Apr 22 2020 Coty Sutherland - 1:9.0.34-2 -- Add updated catalina.policy patch to allow ECJ usage under the Security Manager - -* Tue Apr 21 2020 Coty Sutherland - 1:9.0.34-1 -- Update to 9.0.34 - -* Thu Mar 05 2020 Coty Sutherland - 1:9.0.31-1 -- Update to 9.0.31 -- Resolves: rhbz#1806398 - CVE-2020-1938 tomcat: Apache Tomcat AJP File Read/Inclusion Vulnerability - -* Fri Jan 31 2020 Fedora Release Engineering - 1:9.0.30-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Fri Dec 20 2019 Coty Sutherland - 1:9.0.30-1 -- Update to 9.0.30 - -* Thu Sep 26 2019 Coty Sutherland - 1:9.0.26-2 -- Resolves: rhbz#1510522 man page uid and gid mismatch for service accounts - -* Thu Sep 26 2019 Coty Sutherland - 1:9.0.26-1 -- Update to 9.0.26 -- Resolves: rhbz#1523112 tomcat systemd does not cope with - in service names -- Resolves: rhbz#1510896 Problem to start tomcat with a user whose group has a name different to the user - -* Sat Jul 27 2019 Fedora Release Engineering - 1:9.0.21-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Wed Jul 17 2019 Coty Sutherland - 1:9.0.21-2 -- Update build-classpath calls to ECJ to specify the JAR we want to use - -* Tue Jun 18 2019 Coty Sutherland - 1:9.0.21-1 -- Update to 9.0.21 - -* Tue Apr 02 2019 Coty Sutherland - 1:9.0.13-4 -- Remove javadoc subpackage to drop the jpackage-utils dependency - -* Wed Feb 20 2019 Coty Sutherland - 1:9.0.13-3 -- Remove OSGi MANIFEST files, these are now included in the upstream Tomcat distribution (as of 9.0.10) -- Remove unused dependencies, apache-commons-collections, apache-commons-daemon, apache-commons-pool, junit - -* Sun Feb 03 2019 Fedora Release Engineering - 1:9.0.13-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Thu Dec 13 2018 Coty Sutherland - 1:9.0.13-1 -- Update to 9.0.13 -- Resolves: rhbz#1636513 - CVE-2018-11784 tomcat: Open redirect in default servlet - -* Sun Oct 14 2018 Peter Robinson 1:9.0.10-2 -- Drop legcy sys-v bits - -* Tue Jul 31 2018 Coty Sutherland - 1:9.0.10-1 -- Update to 9.0.10 -- Resolves: rhbz#1624929 - CVE-2018-1336 tomcat: A bug in the UTF-8 decoder can lead to DoS -- Resolves: rhbz#1579612 - CVE-2018-8014 tomcat: Insecure defaults in CORS filter enable 'supportsCredentials' for all origins -- Resolves: rhbz#1607586 - CVE-2018-8034 tomcat: host name verification missing in WebSocket client -- Resolves: rhbz#1607584 - CVE-2018-8037 tomcat: Due to a mishandling of close in NIO/NIO2 connectors user sessions can get mixed up - -* Sat Jul 14 2018 Fedora Release Engineering - 1:9.0.7-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Tue May 01 2018 Coty Sutherland - 1:9.0.7-1 -- Update to 9.0.7 - -* Thu Mar 15 2018 Coty Sutherland - 1:8.5.29-1 -- Update to 8.5.29 -- Resolves: rhbz#1548290 CVE-2018-1304 tomcat: Incorrect handling of empty string URL in security constraints can lead to unitended exposure of resources -- Resolves: rhbz#1548284 CVE-2018-1305 tomcat: Late application of security constraints can lead to resource exposure for unauthorised users - -* Fri Feb 09 2018 Igor Gnatenko - 1:8.0.49-2 -- Escape macros in %%changelog - -* Thu Feb 01 2018 Coty Sutherland - 1:8.0.49-1 -- Update to 8.0.49 - -* Tue Dec 12 2017 Merlin Mathesius - 1:8.0.47-3 -- Cleanup spec file conditionals - -* Tue Oct 24 2017 Troy Dawson - 1:8.0.47-2 -- Change "zip -u" to "zip" -- Resolves: rhbz#1495241 [tomcat] zip -u in spec file causes race condition - -* Wed Oct 04 2017 Coty Sutherland - 1:8.0.47-1 -- Update to 8.0.47 -- Resolves: rhbz#1497682 CVE-2017-12617 tomcat: Remote Code Execution bypass for CVE-2017-12615 - -* Mon Aug 21 2017 Coty Sutherland - 1:8.0.46-1 -- Update to 8.0.46 -- Resolves: rhbz#1480620 CVE-2017-7674 tomcat: Cache Poisoning - -* Thu Jul 27 2017 Fedora Release Engineering - 1:8.0.44-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Fri Jun 09 2017 Coty Sutherland - 1:8.0.44-1 -- Resolves: rhbz#1459160 CVE-2017-5664 tomcat: Security constrained bypass in error page mechanism - -* Tue Apr 11 2017 Coty Sutherland - 1:8.0.43-1 -- Update to 8.0.43 - -* Fri Mar 31 2017 Coty Sutherland - 1:8.0.42-1 -- Update to 8.0.42 - -* Thu Feb 16 2017 Coty Sutherland - 1:8.0.41-1 -- Update to 8.0.41 -- Resolves: rhbz#1403825 CVE-2016-8745 tomcat: information disclosure due to incorrect Processor sharing - -* Sat Feb 11 2017 Fedora Release Engineering - 1:8.0.39-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Tue Nov 29 2016 Coty Sutherland - 1:8.0.39-1 -- Update to 8.0.39 -- Resolves: rhbz#1397493 CVE-2016-6816 CVE-2016-6817 CVE-2016-8735 tomcat: various flaws - -* Tue Oct 25 2016 Coty Sutherland - 1:8.0.38-1 -- Update to 8.0.38 - -* Sun Oct 23 2016 Coty Sutherland - 1:8.0.37-3 -- Resolves: rhbz#1383216 CVE-2016-6325 tomcat: tomcat writable config files allow privilege escalation -- Resolves: rhbz#1382310 CVE-2016-5425 tomcat: Local privilege escalation via systemd-tmpfiles service - -* Tue Sep 13 2016 Coty Sutherland - 1:8.0.37-1 -- Rebase to 8.0.37 -- Resolves: rhbz#1375581 CVE-2016-5388 CGI sets environmental variable based on user supplied Proxy request header -- Resolves: rhbz#1370262 catalina.out is no longer in use in the main package, but still gets rotated - -* Thu Aug 11 2016 Coty Sutherland - 1:8.0.36-2 -- Related: rhbz#1349469 Correct typo in changelog entry - -* Mon Aug 08 2016 Coty Sutherland - 1:8.0.36-1 -- Resolves: rhbz#1349469 CVE-2016-3092 tomcat: Usage of vulnerable FileUpload package can result in denial of service (updates to 8.0.36) -- Resolves: rhbz#1364056 The command tomcat-digest doesn't work -- Resolves: rhbz#1363884 The tomcat-tool-wrapper script is broken -- Resolves: rhbz#1347864 The systemd service unit does not allow tomcat to shut down gracefully -- Resolves: rhbz#1347835 The security manager doesn't work correctly (JSPs cannot be compiled) -- Resolves: rhbz#1341853 rpm -V tomcat fails on /var/log/tomcat/catalina.out -- Resolves: rhbz#1341850 tomcat-jsvc.service has TOMCAT_USER value hard-coded -- Resolves: rhbz#1359737 Missing maven depmap for the following artifacts: org.apache.tomcat:tomcat-websocket, org.apache.tomcat:tomcat-websocket-api -- Resolves: asfbz#59960 Building javadocs with java8 fails - -* Wed Mar 2 2016 Ivan Afonichev - 1:8.0.32-4 -- Revert sysconfig migration changes, resolves: rhbz#1311771, rhbz#1311905 -- Add /etc/tomcat/conf.d/ with shell expansion support, resolves rhbz#1293636 - -* Sat Feb 27 2016 Ivan Afonichev - 1:8.0.32-3 -- Load sysconfig from tomcat.conf, resolves: rhbz#1311771, rhbz#1311905 -- Set default javax.sql.DataSource factory to apache commons one, resolves rhbz#1214381 - -* Sun Feb 21 2016 Ivan Afonichev - 1:8.0.32-2 -- Fix symlinks from $CATALINA_HOME/lib perspective, resolves: rhbz#1308685 - -* Thu Feb 11 2016 Ivan Afonichev - 1:8.0.32-1 -- Updated to 8.0.32 -- Remove log4j support. It has never been working actually. See rhbz#1236297 -- Move shipped config to /etc/sysconfig/tomcat. /etc/tomcat/tomcat.conf can now be used to override it with shell expansion, resolves rhbz#1293636 -- Recommend tomcat-native, resolves: rhbz#1243132 - -* Wed Feb 10 2016 Coty Sutherland 1:8.0.26-4 -- Resolves: rhbz#1286800 Failed to start component due to wrong allowLinking="true" in context.xml -- Program /bin/nologin does not exist (#1302718) - -* Fri Feb 05 2016 Fedora Release Engineering - 1:8.0.26-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Wed Nov 11 2015 Robert Scheck 1:8.0.26-2 -- CATALINA_OPTS are only read when SECURITY_MANAGER is true (#1147105) - -* Thu Aug 27 2015 Alexander Kurtakov 1:8.0.26-1 -- Update to 8.0.26. - -* Fri Jul 10 2015 Alexander Kurtakov 1:8.0.24-2 -- Update to 8.0.24. - -* Fri Jun 19 2015 Alexander Kurtakov 1:8.0.23-2 -- Drop javax.el:el-api alias. - -* Thu Jun 18 2015 Alexander Kurtakov 1:8.0.23-1 -- Update to 8.0.23. - -* Thu Jun 18 2015 Alexander Kurtakov 1:8.0.20-3 -- Drop jetty alias for servlet. - -* Tue Jun 09 2015 Michal Srb - 1:8.0.20-2 -- Fix metadata for org.apache.tomcat:{tomcat-jni,tomcat-util-scan} - -* Thu Mar 5 2015 Alexander Kurtakov 1:8.0.18-5 -- Rebuild against tomcat-taglibs-standard. - -* Wed Mar 4 2015 Alexander Kurtakov 1:8.0.18-4 -- Fix epoch bumped el_1_0_api that would override all other glassfish/jboss/etc. due to wrong epoch. -- Drop old provides. - -* Tue Mar 03 2015 Stephen Gallagher 1:8.0.18-3 -- Bump epoch to maintain upgrade path from Fedora 22 - -* Mon Feb 16 2015 Michal Srb - 0:8.0.18-2 -- Install POM files for org.apache.tomcat:{tomcat-jni,tomcat-util-scan} - -* Sun Feb 15 2015 Ivan Afonichev 0:8.0.18-1 -- Updated to 8.0.18 - -* Sat Sep 20 2014 Ivan Afonichev 0:8.0.12-1 -- Updated to 8.0.12 -- Substitute libnames in catalina-tasks.xml, resolves: rhbz#1126439 -- Use CATALINA_OPTS only on start, resolves: rhbz#1051194 - -* Mon Jun 16 2014 Michal Srb - 0:7.0.54-3 -- jsp-api requires el-api - -* Sun Jun 08 2014 Fedora Release Engineering - 0:7.0.54-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Thu Jun 5 2014 Alexander Kurtakov 0:7.0.54-1 -- Update to upstream 7.0.54 - fixes compile with Java 8. - -* Wed May 21 2014 Alexander Kurtakov 0:7.0.52-3 -- Drop servlet/el api provides to reduce user machines ending with both. - -* Sun Mar 30 2014 Ivan Afonichev 0:7.0.52-2 -- Don't provide maven javax.jsp:jsp-api and javax.servlet.jsp:javax.servlet.jsp-api resolves: rhbz#1076949 -- Move log4j support into subpackage, resolves: rhbz#1027716 - -* Wed Mar 26 2014 Ivan Afonichev 0:7.0.52-1 -- Updated to 7.0.52 -- Rewrite jsvc implementation, resolves: rhbz#1051743 -- Switch to java-headless R, resolves: rhbz#1068566 -- Create and own %%{_localstatedir}/lib/tomcats, resolves: rhbz#1026741 -- Add pom for tomcat-jdbc, resolves: rhbz#1011003 - -* Tue Jan 21 2014 Mikolaj Izdebski - 0:7.0.47-3 -- Fix installation of Maven metadata for tomcat-juli.jar -- Resolves: rhbz#1033664 - -* Wed Jan 15 2014 Stanislav Ochotnicky - 0:7.0.47-2 -- Rebuild for bug #1033664 - -* Sun Nov 03 2013 Ivan Afonichev 0:7.0.47-1 -- Updated to 7.0.47 -- Fix java.security.policy - -* Sun Aug 04 2013 Fedora Release Engineering - 0:7.0.42-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Fri Jul 12 2013 Ivan Afonichev 0:7.0.42-2 -- Remove jpackage-utils R - -* Thu Jul 11 2013 Dmitry Tikhonov 0:7.0.42-1 -- Updated to 7.0.42 - -* Tue Jun 11 2013 Paul Komkoff 0:7.0.40-3 -- Dropped systemv inits. Bye-bye. -- Updated the systemd wrappers to allow running multiple instances. - Added wrapper scripts to do that, ported the original non-named - service file to work with the same wrappers, updated - /usr/sbin/tomcat to call systemctl. - -* Sat May 11 2013 Ivan Afonichev 0:7.0.40-1 -- Updated to 7.0.40 -- Resolves: rhbz 956569 added missing commons-pool link -- Remove ant-nodeps BR - -* Mon Mar 4 2013 Mikolaj Izdebski - 0:7.0.37-2 -- Add depmaps for org.eclipse.jetty.orbit -- Resolves: rhbz#917626 - -* Wed Feb 20 2013 Ivan Afonichev 0:7.0.39-1 -- Updated to 7.0.39 - -* Wed Feb 20 2013 Ivan Afonichev 0:7.0.37-1 -- Updated to 7.0.37 - -* Mon Feb 4 2013 Ivan Afonichev 0:7.0.35-1 -- Updated to 7.0.35 -- systemd SuccessExitStatus=143 for proper stop exit code processing - -* Mon Dec 24 2012 Ivan Afonichev 0:7.0.34-1 -- Updated to 7.0.34 -- ecj >= 4.2.1 now required -- Resolves: rhbz 889395 concat classpath correctly; chdir to $CATALINA_HOME - -* Fri Dec 7 2012 Ivan Afonichev 0:7.0.33-2 -- Resolves: rhbz 883806 refix logdir ownership - -* Sun Dec 2 2012 Ivan Afonichev 0:7.0.33-1 -- Updated to 7.0.33 -- Resolves: rhbz 873620 need chkconfig for update-alternatives - -* Wed Oct 17 2012 Ivan Afonichev 0:7.0.32-1 -- Updated to 7.0.32 -- Resolves: rhbz 842620 symlinks to taglibs - -* Fri Aug 24 2012 Ivan Afonichev 0:7.0.29-1 -- Updated to 7.0.29 -- Add pidfile as tmpfile -- Use systemd for running as unprivileged user -- Resolves: rhbz 847751 upgrade path was broken -- Resolves: rhbz 850343 use new systemd-rpm macros - -* Sat Jul 21 2012 Fedora Release Engineering - 0:7.0.28-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Mon Jul 2 2012 Ivan Afonichev 0:7.0.28-1 -- Updated to 7.0.28 -- Resolves: rhbz 820119 Remove bundled apache-commons-dbcp -- Resolves: rhbz 814900 Added tomcat-coyote POM -- Resolves: rhbz 810775 Remove systemv stuff from %%post scriptlet -- Remove redhat-lsb R - -* Mon Apr 9 2012 Ivan Afonichev 0:7.0.27-2 -- Fixed native download hack - -* Sat Apr 7 2012 Ivan Afonichev 0:7.0.27-1 -- Updated to 7.0.27 -- Fixed jakarta-taglibs-standard BR and R - -* Wed Mar 21 2012 Stanislav Ochotnicky - 0:7.0.26-2 -- Add more depmaps to J2EE apis to help jetty/glassfish updates - -* Wed Mar 14 2012 Juan Hernandez 0:7.0.26-2 -- Added the POM files for tomcat-api and tomcat-util (#803495) - -* Wed Feb 22 2012 Ivan Afonichev 0:7.0.26-1 -- Updated to 7.0.26 -- Bug 790334: Change ownership of logdir for logrotate - -* Thu Feb 16 2012 Krzysztof Daniel 0:7.0.25-4 -- Bug 790694: Priorities of jsp, servlet and el packages updated. - -* Wed Feb 8 2012 Krzysztof Daniel 0:7.0.25-3 -- Dropped indirect dependecy to tomcat 5 - -* Sun Jan 22 2012 Ivan Afonichev 0:7.0.25-2 -- Added hack for maven depmap of tomcat-juli absolute link [ -f ] pass correctly - -* Sat Jan 21 2012 Ivan Afonichev 0:7.0.25-1 -- Updated to 7.0.25 -- Removed EntityResolver patch (changes already in upstream sources) -- Place poms and depmaps in the same package as jars -- Added javax.servlet.descriptor to export-package of servlet-api -- Move several chkconfig actions and reqs to systemv subpackage -- New maven depmaps generation method -- Add patch to support java7. (patch sent upstream). -- Require java >= 1:1.6.0 - -* Fri Jan 13 2012 Krzysztof Daniel 0:7.0.23-5 -- Exported javax.servlet.* packages in version 3.0 as 2.6 to make - servlet-api compatible with Eclipse. - -* Thu Jan 12 2012 Ivan Afonichev 0:7.0.23-4 -- Move jsvc support to subpackage - -* Wed Jan 11 2012 Alexander Kurtakov 0:7.0.23-2 -- Add EntityResolver setter patch to jasper for jetty's need. (patch sent upstream). - -* Mon Dec 12 2011 Joseph D. Wagner 0:7.0.23-3 -- Added support to /usr/sbin/tomcat-sysd and /usr/sbin/tomcat for - starting tomcat with jsvc, which allows tomcat to perform some - privileged operations (e.g. bind to a port < 1024) and then switch - identity to a non-privileged user. Must add USE_JSVC="true" to - /etc/tomcat/tomcat.conf or /etc/sysconfig/tomcat. - -* Mon Nov 28 2011 Ivan Afonichev 0:7.0.23-1 -- Updated to 7.0.23 - -* Fri Nov 11 2011 Ivan Afonichev 0:7.0.22-2 -- Move tomcat-juli.jar to lib package -- Drop %%update_maven_depmap as in tomcat6 -- Provide native systemd unit file ported from tomcat6 - -* Thu Oct 6 2011 Ivan Afonichev 0:7.0.22-1 -- Updated to 7.0.22 - -* Mon Oct 03 2011 Rex Dieter - 0:7.0.21-3.1 -- rebuild (java), rel-eng#4932 - -* Mon Sep 26 2011 Ivan Afonichev 0:7.0.21-3 -- Fix basedir mode - -* Tue Sep 20 2011 Roland Grunberg 0:7.0.21-2 -- Add manifests for el-api, jasper-el, jasper, tomcat, and tomcat-juli. - -* Thu Sep 8 2011 Ivan Afonichev 0:7.0.21-1 -- Updated to 7.0.21 - -* Mon Aug 15 2011 Ivan Afonichev 0:7.0.20-3 -- Require java = 1:1.6.0 - -* Mon Aug 15 2011 Ivan Afonichev 0:7.0.20-2 -- Require java < 1.7.0 - -* Mon Aug 15 2011 Ivan Afonichev 0:7.0.20-1 -- Updated to 7.0.20 - -* Tue Jul 26 2011 Ivan Afonichev 0:7.0.19-1 -- Updated to 7.0.19 - -* Tue Jun 21 2011 Ivan Afonichev 0:7.0.16-1 -- Updated to 7.0.16 - -* Mon Jun 6 2011 Ivan Afonichev 0:7.0.14-3 -- Added initial systemd service -- Fix some paths - -* Sat May 21 2011 Ivan Afonichev 0:7.0.14-2 -- Fixed http source link -- Securify some permissions -- Added licenses for el-api and servlet-api -- Added dependency on jpackage-utils for the javadoc subpackage - -* Sat May 14 2011 Ivan Afonichev 0:7.0.14-1 -- Updated to 7.0.14 - -* Thu May 5 2011 Ivan Afonichev 0:7.0.12-4 -- Provided local paths for libs -- Fixed dependencies -- Fixed update temp/work cleanup - -* Mon May 2 2011 Ivan Afonichev 0:7.0.12-3 -- Fixed package groups -- Fixed some permissions -- Fixed some links -- Removed old tomcat6 crap - -* Thu Apr 28 2011 Ivan Afonichev 0:7.0.12-2 -- Package now named just tomcat instead of tomcat7 -- Removed Provides: %%{name}-log4j -- Switched to apache-commons-* names instead of jakarta-commons-* . -- Remove the old changelog -- BR/R java >= 1:1.6.0 , same for java-devel -- Removed old tomcat6 crap - -* Wed Apr 27 2011 Ivan Afonichev 0:7.0.12-1 -- Tomcat7 \ No newline at end of file diff --git a/tomcat.spec b/tomcat.spec index b25b959..8689ef0 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -1,3 +1,33 @@ +# Copyright (c) 2000-2008, JPackage Project +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the +# distribution. +# 3. Neither the name of the JPackage Project nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + %global jspspec 3.1 %global major_version 10 %global minor_version 1 @@ -9,10 +39,9 @@ # Recommended version is specified in java/org/apache/catalina/core/AprLifecycleListener.java %global native_version 2.0.8 + # FHS 3.0 compliant tree structure - http://refspecs.linuxfoundation.org/FHS_3.0/fhs/index.html %global basedir %{_var}/lib/%{name} -%global baseconfdir %{basedir}/conf -%global baselogdir %{basedir}/logs %global appdir %{basedir}/webapps %global homedir %{_datadir}/%{name} %global bindir %{homedir}/bin @@ -21,7 +50,7 @@ %global logdir %{_var}/log/%{name} %global cachedir %{_var}/cache/%{name} %global tempdir %{cachedir}/temp -%global workdir %{basedir}/work +%global workdir %{cachedir}/work Name: tomcat Epoch: 1 @@ -46,35 +75,39 @@ Source10: %{name}-server Source11: %{name}-named.service Source12: module-start-up-parameters.conf -# https://bugzilla.redhat.com/show_bug.cgi?id=435829 Patch0: %{name}-%{major_version}.%{minor_version}-bootstrap-MANIFEST.MF.patch Patch1: %{name}-%{major_version}.%{minor_version}-tomcat-users-webapp.patch Patch2: %{name}-build.patch -# catalina.policy patch to allow ECJ usage under the Security Manager Patch3: %{name}-%{major_version}.%{minor_version}-catalina-policy.patch -# https://bugzilla.redhat.com/show_bug.cgi?id=1857043 Patch4: %{name}-%{major_version}.%{minor_version}-bnd-annotation.patch -# Fixes not available constants in ECJ Patch5: %{name}-%{major_version}.%{minor_version}-JDTCompiler.patch -# https://bugzilla.redhat.com/show_bug.cgi?id=1857043 Patch6: rhbz-1857043.patch BuildArch: noarch ExclusiveArch: %{java_arches} noarch -BuildRequires: ant -BuildRequires: ecj +BuildRequires: ant >= 1.10.2 +BuildRequires: ecj >= 4.20 BuildRequires: findutils -BuildRequires: java-devel +BuildRequires: java-devel >= 17 BuildRequires: javapackages-local BuildRequires: aqute-bnd +BuildRequires: aqute-bndlib +BuildRequires: systemd BuildRequires: tomcat-jakartaee-migration -Requires: (java-headless >= 11 or java >= 11) -Requires: javapackages-tools -Requires: %{name}-lib = %{epoch}:%{version}-%{release} -Recommends: tomcat-native >= %{native_version} -Requires: systemd +Requires: (java-headless >= 11 or java >= 11) +Requires: javapackages-tools +Requires: %{name}-lib = %{epoch}:%{version}-%{release} +%if 0%{?fedora} || 0%{?rhel} > 7 +Recommends: tomcat-native >= %{native_version} +%endif +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd + +# added after log4j sub-package was removed +Provides: %{name}-log4j = %{epoch}:%{version}-%{release} %description Tomcat is the servlet container that is used in the official Reference @@ -103,10 +136,9 @@ The docs web application for Apache Tomcat. %package jsp-%{jspspec}-api Summary: Apache Tomcat JavaServer Pages v%{jspspec} API Implementation Classes Provides: jsp = %{jspspec} -Obsoletes: jsp < %{jspspec} +Obsoletes: %{name}-jsp-api < %{jspspec} Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} -Conflicts: tomcat-jsp-2.3-api %description jsp-%{jspspec}-api Apache Tomcat JSP API Implementation Classes. @@ -126,8 +158,7 @@ Libraries needed to run the Tomcat Web container. %package servlet-%{servletspec}-api Summary: Apache Tomcat Java Servlet v%{servletspec} API Implementation Classes Provides: servlet = %{servletspec} -Obsoletes: servlet < %{servletspec} -Conflicts: tomcat-servlet-4.0-api +Obsoletes: %{name}-servlet-api < %{servletspec} %description servlet-%{servletspec}-api Apache Tomcat Servlet API Implementation Classes. @@ -135,8 +166,7 @@ Apache Tomcat Servlet API Implementation Classes. %package el-%{elspec}-api Summary: Apache Tomcat Expression Language v%{elspec} API Implementation Classes Provides: el_api = %{elspec} -Obsoletes: el_api < %{elspec} -Conflicts: tomcat-el-3.0-api +Obsoletes: %{name}-el-api < %{elspec} %description el-%{elspec}-api Apache Tomcat EL API Implementation Classes. @@ -165,11 +195,19 @@ find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name " # Remove webservices naming resources as it's generally unused %{__rm} -rf java/org/apache/naming/factory/webservices +# Configure maven files +%mvn_package ":tomcat-el-api" tomcat-el-api +%mvn_alias "org.apache.tomcat:tomcat-el-api" "jakarta.servlet:jakarta.servlet-api" +%mvn_package ":tomcat-jsp-api" tomcat-jsp-api +%mvn_alias "org.apache.tomcat:tomcat-jsp-api" "jakarta.servlet:jakarta.servlet.jsp" +%mvn_package ":tomcat-servlet-api" tomcat-servlet-api + # Create a sysusers.d config file cat >tomcat.sysusers.conf < ${RPM_BUILD_ROOT}%{confdir}/conf.d/README -%{__install} -d ${RPM_BUILD_ROOT}%{libdir} -%{__install} -d ${RPM_BUILD_ROOT}%{logdir} -%{__install} -d ${RPM_BUILD_ROOT}%{_localstatedir}/lib/tomcats -%{__install} -d ${RPM_BUILD_ROOT}%{homedir} -%{__install} -d ${RPM_BUILD_ROOT}%{tempdir} -%{__install} -d ${RPM_BUILD_ROOT}%{_unitdir} -%{__install} -d ${RPM_BUILD_ROOT}%{_libexecdir}/%{name} - -for jar in output/build/lib/*.jar; do - # Skip Jar if empty, applies to tomcat-coyote-ffm.jar atm - jar tf ${jar} | grep -E -q '.*\.class' || continue - - jarname=$(basename $jar .jar) - - case "${jarname}" in - jasper) pom="res/maven/tomcat-jasper.pom" ;; - catalina-tribes) pom="res/maven/tomcat-tribes.pom" ;; - catalina-ssi) pom="res/maven/tomcat-ssi.pom" ;; - catalina-storeconfig) pom="res/maven/tomcat-storeconfig.pom" ;; - *) pom=$(ls res/maven/*"${jarname}".pom 2>/dev/null) ;; - esac - - sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" ${pom} - - case "${jarname}" in - tomcat-jni) %mvn_file org.apache.tomcat:tomcat-jni tomcat/tomcat-jni ${RPM_BUILD_ROOT}%{libdir}/tomcat-jni ;; - jsp-api) %mvn_file org.apache.tomcat:tomcat-jsp-api tomcat/jsp-api tomcat/%{name}-jsp-%{jspspec}-api %{name}-jsp-%{jspspec}-api %{name}-jsp-api ;; - servlet-api) %mvn_file org.apache.tomcat:tomcat-servlet-api tomcat/servlet-api tomcat/%{name}-servlet-%{servletspec}-api %{name}-servlet-%{servletspec}-api %{name}-servlet-api ;; - el-api) %mvn_file org.apache.tomcat:tomcat-el-api tomcat/el-api tomcat/%{name}-el-%{servletspec}-api %{name}-el-%{servletspec}-api %{name}-el-api ;; - catalina-tribes) %mvn_file org.apache.tomcat:tomcat-tribes tomcat/catalina-tribes ;; - catalina-ssi) %mvn_file org.apache.tomcat:tomcat-ssi tomcat/catalina-ssi ;; - catalina-storeconfig) %mvn_file org.apache.tomcat:tomcat-storeconfig tomcat/catalina-storeconfig ;; - *) %mvn_file org.apache.tomcat:$(sed -n "/.*${jarname}.*<\/artifactId>/ { s/.*\(.*${jarname}.*\)<\/artifactId>.*/\1/; p; q; }" "${pom}" 2>/dev/null) tomcat/${jarname} ;; - esac - - %mvn_artifact ${pom} ${jar} -done - -sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat-juli.pom -%mvn_artifact res/maven/tomcat-juli.pom output/build/bin/tomcat-juli.jar -# bootstrap does not have a pom, generate one -%mvn_artifact 'org.apache.tomcat:tomcat-bootstrap:%{version}' output/build/bin/bootstrap.jar - -#Create symlinks to bindir -%mvn_file :tomcat-bootstrap tomcat/tomcat-bootstrap ${RPM_BUILD_ROOT}%{bindir}/bootstrap.jar -%mvn_file :tomcat-juli tomcat/tomcat-juli ${RPM_BUILD_ROOT}%{bindir}/tomcat-juli.jar - -# tomcat-parent pom -sed -i "s/@MAVEN.DEPLOY.VERSION@/%{version}/g" res/maven/tomcat.pom -%mvn_artifact res/maven/tomcat.pom - -%mvn_package ":tomcat-el-api" tomcat-el-api -%mvn_package ":tomcat-jsp-api" tomcat-jsp-api -%mvn_package ":tomcat-servlet-api" tomcat-servlet-api - -%mvn_install - -# Fixes JAR must have Javapackages-GroupId manifest attribute error -jar ufm ${RPM_BUILD_ROOT}%{libdir}/el-api.jar <(echo "JavaPackages-GroupId: org.apache.tomcat") -jar ufm ${RPM_BUILD_ROOT}%{libdir}/jsp-api.jar <(echo "JavaPackages-GroupId: org.apache.tomcat") -jar ufm ${RPM_BUILD_ROOT}%{libdir}/servlet-api.jar <(echo "JavaPackages-GroupId: org.apache.tomcat") +%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{libdir} +%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{logdir} +%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{_localstatedir}/lib/tomcats +%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{homedir} +%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{tempdir} +%{__install} -d -m 0775 ${RPM_BUILD_ROOT}%{workdir} +%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_unitdir} +%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_libexecdir}/%{name} # move things into place +# First copy supporting libs to tomcat lib pushd output/build - %{__cp} -a bin/*.xml ${RPM_BUILD_ROOT}%{bindir} - %{__cp} -a conf/*.{policy,properties,xml} ${RPM_BUILD_ROOT}%{confdir} + %{__cp} -a bin/*.{jar,xml} ${RPM_BUILD_ROOT}%{bindir} + %{__cp} -a conf/*.{policy,properties,xml,xsd} ${RPM_BUILD_ROOT}%{confdir} + %{__cp} -a lib/*.jar ${RPM_BUILD_ROOT}%{libdir} %{__cp} -a webapps/* ${RPM_BUILD_ROOT}%{appdir} popd @@ -289,9 +277,9 @@ popd -e "s|\@\@\@TCTEMP\@\@\@|%{tempdir}|g" \ -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE2} \ > ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/%{name} -%{__install} %{SOURCE3} \ +%{__install} -m 0755 %{SOURCE3} \ ${RPM_BUILD_ROOT}%{_sbindir}/%{name} -%{__install} %{SOURCE7} \ +%{__install} -m 0644 %{SOURCE7} \ ${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service %{__sed} -e "s|\@\@\@TCLOG\@\@\@|%{logdir}|g" %{SOURCE4} \ > ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{name}.disabled @@ -304,11 +292,33 @@ popd -e "s|\@\@\@LIBDIR\@\@\@|%{_libdir}|g" %{SOURCE6} \ > ${RPM_BUILD_ROOT}%{_bindir}/%{name}-tool-wrapper -%{__install} %{SOURCE8} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/functions -%{__install} %{SOURCE9} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/preamble -%{__install} %{SOURCE10} ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/server -%{__install} %{SOURCE11} ${RPM_BUILD_ROOT}%{_unitdir}/%{name}@.service -%{__install} %{SOURCE12} ${RPM_BUILD_ROOT}%{confdir}/conf.d/ +%{__install} -m 0644 %{SOURCE8} \ + ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/functions +%{__install} -m 0755 %{SOURCE9} \ + ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/preamble +%{__install} -m 0755 %{SOURCE10} \ + ${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/server +%{__install} -m 0644 %{SOURCE11} \ + ${RPM_BUILD_ROOT}%{_unitdir}/%{name}@.service + +%{__install} -m 0644 %{SOURCE12} ${RPM_BUILD_ROOT}%{confdir}/conf.d/ + +# Substitute libnames in catalina-tasks.xml +sed -i \ + "s,el-api.jar,%{name}-el-%{elspec}-api.jar,; + s,servlet-api.jar,%{name}-servlet-%{servletspec}-api.jar,; + s,jsp-api.jar,%{name}-jsp-%{jspspec}-api.jar,;" \ + ${RPM_BUILD_ROOT}%{bindir}/catalina-tasks.xml + +# create jsp and servlet API symlinks +pushd ${RPM_BUILD_ROOT}%{_javadir} + %{__mv} %{name}/jsp-api.jar %{name}-jsp-%{jspspec}-api.jar + %{__ln_s} %{name}-jsp-%{jspspec}-api.jar %{name}-jsp-api.jar + %{__mv} %{name}/servlet-api.jar %{name}-servlet-%{servletspec}-api.jar + %{__ln_s} %{name}-servlet-%{servletspec}-api.jar %{name}-servlet-api.jar + %{__mv} %{name}/el-api.jar %{name}-el-%{elspec}-api.jar + %{__ln_s} %{name}-el-%{elspec}-api.jar %{name}-el-api.jar +popd pushd output/build %{_bindir}/build-jar-repository lib ecj 2>&1 @@ -316,13 +326,84 @@ pushd output/build popd pushd ${RPM_BUILD_ROOT}%{libdir} - %{__cp} $(build-classpath ecj/ecj) ecj-x.jar - %{__cp} $(build-classpath tomcat-jakartaee-migration/jakartaee-migration) jakartaee-migration-x.jar + # symlink JSP and servlet API jars + %{__ln_s} ../../java/%{name}-jsp-%{jspspec}-api.jar . + %{__ln_s} ../../java/%{name}-servlet-%{servletspec}-api.jar . + %{__ln_s} ../../java/%{name}-el-%{elspec}-api.jar . + %{__ln_s} $(build-classpath ecj/ecj) jasper-jdt.jar + %{__ln_s} $(build-classpath tomcat-jakartaee-migration/jakartaee-migration) jakartaee-migration.jar + + cp ../../%{name}/bin/tomcat-juli.jar . popd -ln -sr %{confdir} ${RPM_BUILD_ROOT}%{baseconfdir} -ln -sr %{cachedir} ${RPM_BUILD_ROOT}%{workdir} -ln -sr %{logdir} ${RPM_BUILD_ROOT}%{baselogdir} +# symlink to the FHS locations where we've installed things +pushd ${RPM_BUILD_ROOT}%{homedir} + %{__ln_s} %{appdir} webapps + %{__ln_s} %{confdir} conf + %{__ln_s} %{libdir} lib + %{__ln_s} %{logdir} logs + %{__ln_s} %{tempdir} temp + %{__ln_s} %{workdir} work +popd + +# Install the maven metadata for the spec impl artifacts as other projects use them +#%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_mavenpomdir} +pushd res/maven + for pom in *.pom; do + # fix-up version in all pom files + sed -i 's/@MAVEN.DEPLOY.VERSION@/%{version}/g' $pom + done +popd + +# Configure and install maven artifacts +%mvn_artifact res/maven/tomcat-el-api.pom output/build/lib/el-api.jar +%mvn_artifact res/maven/tomcat-jsp-api.pom output/build/lib/jsp-api.jar +%mvn_artifact res/maven/tomcat-servlet-api.pom output/build/lib/servlet-api.jar + +%mvn_file org.apache.tomcat:tomcat-annotations-api tomcat/annotations-api +%mvn_artifact res/maven/tomcat-annotations-api.pom ${RPM_BUILD_ROOT}%{libdir}/annotations-api.jar +%mvn_artifact res/maven/tomcat-api.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-api.jar +%mvn_file org.apache.tomcat:tomcat-catalina-ant tomcat/catalina-ant +%mvn_artifact res/maven/tomcat-catalina-ant.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-ant.jar +%mvn_file org.apache.tomcat:tomcat-catalina-ha tomcat/catalina-ha +%mvn_artifact res/maven/tomcat-catalina-ha.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-ha.jar +%mvn_file org.apache.tomcat:tomcat-catalina tomcat/catalina +%mvn_artifact res/maven/tomcat-catalina.pom ${RPM_BUILD_ROOT}%{libdir}/catalina.jar +%mvn_artifact res/maven/tomcat-coyote.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-coyote.jar +%mvn_artifact res/maven/tomcat-dbcp.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-dbcp.jar +%mvn_artifact res/maven/tomcat-i18n-cs.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-cs.jar +%mvn_artifact res/maven/tomcat-i18n-de.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-de.jar +%mvn_artifact res/maven/tomcat-i18n-es.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-es.jar +%mvn_artifact res/maven/tomcat-i18n-fr.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-fr.jar +%mvn_artifact res/maven/tomcat-i18n-ja.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-ja.jar +%mvn_artifact res/maven/tomcat-i18n-ko.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-ko.jar +%mvn_artifact res/maven/tomcat-i18n-pt-BR.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-pt-BR.jar +%mvn_artifact res/maven/tomcat-i18n-ru.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-ru.jar +%mvn_artifact res/maven/tomcat-i18n-zh-CN.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-i18n-zh-CN.jar +%mvn_file org.apache.tomcat:tomcat-jasper-el tomcat/jasper-el +%mvn_artifact res/maven/tomcat-jasper-el.pom ${RPM_BUILD_ROOT}%{libdir}/jasper-el.jar +%mvn_file org.apache.tomcat:tomcat-jasper tomcat/jasper +%mvn_artifact res/maven/tomcat-jasper.pom ${RPM_BUILD_ROOT}%{libdir}/jasper.jar +%mvn_file org.apache.tomcat:tomcat-jaspic-api tomcat/jaspic-api +%mvn_artifact res/maven/tomcat-jaspic-api.pom ${RPM_BUILD_ROOT}%{libdir}/jaspic-api.jar +%mvn_artifact res/maven/tomcat-jdbc.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-jdbc.jar +%mvn_artifact res/maven/tomcat-jni.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-jni.jar +%mvn_artifact res/maven/tomcat-juli.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-juli.jar +%mvn_file org.apache.tomcat:tomcat-ssi tomcat/catalina-ssi +%mvn_artifact res/maven/tomcat-ssi.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-ssi.jar +%mvn_file org.apache.tomcat:tomcat-storeconfig tomcat/catalina-storeconfig +%mvn_artifact res/maven/tomcat-storeconfig.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-storeconfig.jar +%mvn_file org.apache.tomcat:tomcat-tribes tomcat/catalina-tribes +%mvn_artifact res/maven/tomcat-tribes.pom ${RPM_BUILD_ROOT}%{libdir}/catalina-tribes.jar +%mvn_artifact res/maven/tomcat-util-scan.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-util-scan.jar +%mvn_artifact res/maven/tomcat-util.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-util.jar +%mvn_file org.apache.tomcat:tomcat-websocket-api tomcat/websocket-api +%mvn_artifact res/maven/tomcat-websocket-api.pom ${RPM_BUILD_ROOT}%{libdir}/websocket-api.jar +%mvn_artifact res/maven/tomcat-websocket.pom ${RPM_BUILD_ROOT}%{libdir}/tomcat-websocket.jar +%mvn_artifact res/maven/tomcat-websocket-client-api.pom ${RPM_BUILD_ROOT}%{libdir}/websocket-client-api.jar +%mvn_artifact res/maven/tomcat.pom + +%mvn_install install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf @@ -338,44 +419,62 @@ install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf %postun %systemd_postun_with_restart %{name}.service -%files -%doc {LICENSE,NOTICE,RELEASE-NOTES,RUNNING.txt} -%{_bindir}/%{name}-digest -%{_bindir}/%{name}-tool-wrapper -%{_sbindir}/%{name} -%{_unitdir}/%{name}.service -%{_unitdir}/%{name}@.service -%{_libexecdir}/%{name} -%{_localstatedir}/lib/tomcats -%config(noreplace) %{_sysconfdir}/sysconfig/%{name} -%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}.disabled -%{_sysusersdir}/tomcat.conf -%{homedir} -%{baseconfdir} -%{baselogdir} -%{workdir} -%attr(2770,tomcat,adm) %dir %{logdir} -%attr(750,tomcat,tomcat) %dir %{cachedir} -%attr(0770,root,tomcat) %{tempdir} -%attr(2775,tomcat,tomcat) %dir %{appdir} +%files +%defattr(0664,root,tomcat,0755) +%doc {LICENSE,NOTICE,RELEASE*} +%attr(0755,root,root) %{_bindir}/%{name}-digest +%attr(0755,root,root) %{_bindir}/%{name}-tool-wrapper +%attr(0755,root,root) %{_sbindir}/%{name} +%attr(0644,root,root) %{_unitdir}/%{name}.service +%attr(0644,root,root) %{_unitdir}/%{name}@.service +%attr(0755,root,root) %dir %{_libexecdir}/%{name} +%attr(0755,root,root) %dir %{_localstatedir}/lib/tomcats +%attr(0644,root,root) %{_libexecdir}/%{name}/functions +%attr(0755,root,root) %{_libexecdir}/%{name}/preamble +%attr(0755,root,root) %{_libexecdir}/%{name}/server +%attr(0644,root,root) %config(noreplace) %{_sysconfdir}/sysconfig/%{name} +%attr(0644,root,root) %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}.disabled +%attr(0755,root,tomcat) %dir %{basedir} +%attr(0755,root,tomcat) %dir %{confdir} -%{confdir}/conf.d +%defattr(0664,tomcat,root,0770) +%attr(0770,tomcat,root) %dir %{logdir} + +%defattr(0664,root,tomcat,0770) +%attr(0770,root,tomcat) %dir %{cachedir} +%attr(0770,root,tomcat) %dir %{tempdir} +%attr(0770,root,tomcat) %dir %{workdir} + +%defattr(0644,root,tomcat,0775) +%attr(0775,root,tomcat) %dir %{appdir} +%attr(0775,root,tomcat) %dir %{confdir}/Catalina +%attr(0775,root,tomcat) %dir %{confdir}/Catalina/localhost +%attr(0755,root,tomcat) %dir %{confdir}/conf.d +%{confdir}/conf.d/README +%{confdir}/conf.d/module-start-up-parameters.conf %config(noreplace) %{confdir}/%{name}.conf -# Configuration files should not be modifiable by the tomcat user, as this can be -# a security issue (an attacker may insert code in a webapp and rewrite the tomcat -# configuration) but those files should be readable by tomcat, so we set the group to tomcat. -%attr(640,root,tomcat) %config(noreplace) %{confdir}/tomcat-users.xml -%attr(640,root,tomcat) %config(noreplace) %{confdir}/web.xml -%attr(640,root,tomcat) %config(noreplace) %{confdir}/server.xml -%attr(640,root,tomcat) %config(noreplace) %{confdir}/logging.properties -%attr(640,root,tomcat) %config(noreplace) %{confdir}/catalina.properties -%attr(640,root,tomcat) %config(noreplace) %{confdir}/context.xml -%attr(640,root,tomcat) %config(noreplace) %{confdir}/jaspic-providers.xml -%attr(640,root,tomcat) %config(noreplace) %{confdir}/catalina.policy -%attr(2775,root,tomcat) %dir %{confdir}/Catalina -%attr(2775,root,tomcat) %dir %{confdir}/Catalina/localhost +%config(noreplace) %{confdir}/*.policy +%config(noreplace) %{confdir}/*.properties +%config(noreplace) %{confdir}/context.xml +%config(noreplace) %{confdir}/server.xml +%attr(0640,root,tomcat) %config(noreplace) %{confdir}/tomcat-users.xml +%attr(0664,root,tomcat) %{confdir}/tomcat-users.xsd +%attr(0664,root,tomcat) %config(noreplace) %{confdir}/jaspic-providers.xml +%attr(0664,root,tomcat) %{confdir}/jaspic-providers.xsd +%config(noreplace) %{confdir}/web.xml +%dir %{homedir} +%{bindir}/bootstrap.jar +%{bindir}/catalina-tasks.xml +%{homedir}/lib +%{homedir}/temp +%{homedir}/webapps +%{homedir}/work +%{homedir}/logs +%{homedir}/conf +%{_sysusersdir}/tomcat.conf %files admin-webapps +%defattr(0664,root,tomcat,0755) %{appdir}/host-manager %{appdir}/manager @@ -383,22 +482,683 @@ install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf %{appdir}/docs %files lib -f .mfiles -%defattr(644, root, tomcat, 2775) -%{libdir}/jakartaee-migration-x.jar -%{libdir}/ecj-x.jar +%dir %{libdir} +%{libdir}/*.jar +%{_javadir}/*.jar +%{bindir}/tomcat-juli.jar +%exclude %{libdir}/%{name}-el-%{elspec}-api.jar +%exclude %{libdir}/%{name}-servlet-%{servletspec}*.jar +%exclude %{libdir}/%{name}-jsp-%{jspspec}*.jar +%exclude %{_javadir}/%{name}-servlet-%{servletspec}*.jar +%exclude %{_javadir}/%{name}-el-%{elspec}-api.jar +%exclude %{_javadir}/%{name}-jsp-%{jspspec}*.jar +%exclude %{_javadir}/%{name}-servlet-api.jar +%exclude %{_javadir}/%{name}-el-api.jar +%exclude %{_javadir}/%{name}-jsp-api.jar +%exclude %{_jnidir}/* %files jsp-%{jspspec}-api -f .mfiles-tomcat-jsp-api -%doc LICENSE +%{_javadir}/%{name}-jsp-%{jspspec}*.jar +%{libdir}/%{name}-jsp-%{jspspec}*.jar +%{_javadir}/%{name}-jsp-api.jar %files servlet-%{servletspec}-api -f .mfiles-tomcat-servlet-api %doc LICENSE +%{_javadir}/%{name}-servlet-%{servletspec}*.jar +%{libdir}/%{name}-servlet-%{servletspec}*.jar +%{_javadir}/%{name}-servlet-api.jar %files el-%{elspec}-api -f .mfiles-tomcat-el-api %doc LICENSE +%{_javadir}/%{name}-el-%{elspec}-api.jar +%{libdir}/%{name}-el-%{elspec}-api.jar +%{_javadir}/%{name}-el-api.jar %files webapps %defattr(0644,tomcat,tomcat,0755) %{appdir}/ROOT %changelog -%autochangelog +* Fri Jan 10 2025 Dimitris Soumis - 1:10.1.34-1 +- Update to version 10.1.34 + +* Mon Dec 09 2024 Packit - 1:9.0.98-1 +- Update to version 9.0.98 +- Resolves: rhbz#2331168 + +* Mon Dec 02 2024 Dimitris Soumis - 1:9.0.97-1 +- Update to version 9.0.97 +- Resolves: rhbz#2327090 + +* Tue Oct 08 2024 Packit - 1:9.0.96-1 +- Update to version 9.0.96 +- Resolves: rhbz#2317237 + +* Tue Sep 17 2024 Packit - 1:9.0.95-1 +- Update to version 9.0.95 +- Resolves: rhbz#2312858 + +* Tue Sep 10 2024 Packit - 1:9.0.94-1 +- Update to version 9.0.94 +- Resolves: rhbz#2311320 + +* Tue Aug 06 2024 Packit - 1:9.0.93-1 +- Update to version 9.0.93 +- Resolves: rhbz#2303026 + +* Wed Jul 24 2024 Miroslav Suchý - 1:9.0.91-1 +- convert license to SPDX + +* Thu Jul 11 2024 Dimitris Soumis - 1:9.0.91-1 +- Update to 9.0.91 + +* Thu Jun 20 2024 Dimitris Soumis - 1:9.0.90-1 +- Update to 9.0.90 + +* Fri Jun 7 2024 Dimitris Soumis - 1:9.0.89-1 +- Update to 9.0.89 + +* Thu Feb 29 2024 Adam Williamson - 1:9.0.83-4 +- Accept java-21-headless as one of the alternatives for java + +* Tue Feb 27 2024 Jiri Vanek - 1:9.0.83-3 +- Rebuilt for java-21-openjdk as system jdk + +* Sat Jan 27 2024 Fedora Release Engineering - 1:9.0.83-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Dec 01 2023 Hui Wang - 1:9.0.83-1 +- Update to 9.0.83 + +* Mon Oct 16 2023 Hui Wang - 1:9.0.82-1 +- Update to 9.0.82 +- Resolves: rhbz#2244333 Wrong dbcp class in tomcat 9 + +* Wed Sep 13 2023 Hui Wang - 1:9.0.80-1 +- Update to 9.0.80 +- Fix java version + +* Fri Aug 04 2023 Hui Wang - 1:9.0.78-4 +- Fix files permission + +* Wed Jul 26 2023 Hui Wang - 1:9.0.78-3 +- Exclude jnidir in the lib subpackage + +* Tue Jul 25 2023 Hui Wang - 1:9.0.78-2 +- Resolves: rhbz#2224318 There are duplicated jars in the tomcat lib subpackage + +* Tue Jul 25 2023 Hui Wang - 1:9.0.78-1 +- Resolves: rhbz#2224318 There are duplicated jars in the tomcat lib-subpackage +- Update to 9.0.78 + +* Sat Jul 22 2023 Fedora Release Engineering - 1:9.0.76-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Tue Jun 20 2023 Hui Wang - 1:9.0.76-2 +- Resolves: rhbz#2189672 Missing Tomcat POM files in Fedora Rawhide +- Remove JDTCompiler patch because ecj has been update +- Update to 9.0.76 +- Resolves: rhbz#2188218 Link bin/tomcat-juli.jar to /usr/share/java +- Move tomcat-jsp-2.3-api.jar,tomcat-servlet-4.0-api.jar and tomcat-el-api.jar to the subpackages + +* Thu Jun 08 2023 Hui Wang - 1:9.0.75-1 +- Update to 9.0.75 + +* Fri Mar 17 2023 Hui Wang - 1:9.0.73-1 +- Update to 9.0.73 + +* Sun Jan 29 2023 Hui Wang - 1:9.0.71-1 +- Update to 9.0.71 +- Remove osgi-annotations patch +- Add bnd-annotation dependency which is in bndlib package + +* Sat Jan 21 2023 Fedora Release Engineering - 1:9.0.70-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Fri Jan 13 2023 Hui Wang - 1:9.0.70-1 +- Update to 9.0.70 + +* Thu Nov 03 2022 Hui Wang - 1:9.0.68-1 +- Update to 9.0.68 + +* Thu Jul 21 2022 Hui Wang - 1:9.0.65-1 +- Update to 9.0.65 + +* Fri Jul 08 2022 Jiri Vanek - 1:9.0.64-2 +- Rebuilt for Drop i686 JDKs + +* Tue Jun 21 2022 Hui Wang - 1:9.0.64-1 +- Update to 9.0.64 +- Add osgi-annotations dependency back + +* Thu Mar 10 2022 Coty Sutherland - 1:9.0.59-3 +- Related: rhbz#2061424 Adjust fix so that it uses the proper env var + +* Tue Mar 08 2022 Coty Sutherland - 1:9.0.59-2 +- Resolves: rhbz#2061424 Add Java 9 start-up parameters to allow reflection + +* Wed Mar 02 2022 Sonia Xu - 1:9.0.59-1 +- Update to 9.0.59 +- Resolves: rhbz#2047419 - CVE-2022-23181 tomcat: local privilege escalation vulnerability + +* Sat Feb 05 2022 Jiri Vanek - 1:9.0.56-3 +- Rebuilt for java-17-openjdk as system jdk + +* Sat Jan 22 2022 Fedora Release Engineering - 1:9.0.56-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Thu Dec 09 2021 Hui Wang - 1:9.0.56-1 +- Update to 9.0.56 + +* Tue Oct 12 2021 Hui Wang - 1:9.0.55-1 +- Update to 9.0.55 + +* Tue Oct 12 2021 Hui Wang - 1:9.0.54-1 +- Update to 9.0.54 + +* Thu Sep 16 2021 Hui Wang - 1:9.0.53-1 +- Update to 9.0.53 + +* Wed Aug 18 2021 Hui Wang - 1:9.0.52-1 +- Update to 9.0.52 + +* Fri Jul 23 2021 Fedora Release Engineering - 1:9.0.50-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Tue Jul 06 2021 Hui Wang - 1:9.0.50-1 +- Update to 9.0.50 + +* Sat Jun 05 2021 Coty Sutherland - 1:9.0.45-4 +- Add back logrotate config file per devel list request +- Add mvn virtual provides back for the servlet, el, and jsp spec impls + +* Fri Jun 04 2021 Coty Sutherland - 1:9.0.45-3 +- Drop geronimo-jaxrpc, which provided the webservices naming factory resources that are generally unused + +* Thu Jun 03 2021 Coty Sutherland - 1:9.0.45-2 +- Remove examples webapps from subpackage +- Updates to javapackages-local removed %%add_maven_depmap which broke the build, + so I removed the maven artifacts as they aren't very useful anyway +- Drop JSVC support as it's not very useful these days +- Drop geronimo-saaj as it's no longer required + +* Thu Apr 22 2021 Hui Wang - 1:9.0.45-1 +- Update to 9.0.45 + +* Thu Mar 18 2021 Hui Wang - 1:9.0.44-1 +- Update to 9.0.44 + +* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 1:9.0.43-2 +- Rebuilt for updated systemd-rpm-macros + See https://pagure.io/fesco/issue/2583. + +* Wed Feb 03 2021 Hui Wang - 1:9.0.43-1 +- Update to 9.0.43 + +* Wed Jan 27 2021 Fedora Release Engineering - 1:9.0.41-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Wed Dec 09 2020 Hui Wang - 1:9.0.41-1 +- Update to 9.0.41 + +* Wed Nov 18 2020 Hui Wang - 1:9.0.40-1 +- Update to 9.0.40 + +* Mon Oct 12 2020 Hui Wang - 1:9.0.39-1 +- Update to 9.0.39 + +* Wed Sep 16 2020 Hui Wang - 1:9.0.38-1 +- Update to 9.0.38 + +* Wed Jul 29 2020 Fedora Release Engineering - 1:9.0.37-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Fri Jul 24 2020 Coty Sutherland - 1:9.0.37-3 +- Related: rhbz#1857043 Temporarily remove OSGi metadata from tomcat jars + +* Mon Jul 20 2020 Coty Sutherland - 1:9.0.37-2 +- Resolves: rhbz#1857043 Add patch to reinclude o.a.t.util.net.jsse and o.a.t.util.moduler.modules in tomcat-coyote.jar + +* Mon Jul 13 2020 Coty Sutherland - 1:9.0.37-1 +- Update to 9.0.37 + +* Sat Jul 11 2020 Jiri Vanek - 1:9.0.36-2 +- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 + +* Wed Jun 10 2020 Hui Wang - 1:9.0.36-1 +- Upgrade to 9.0.36 + +* Sun May 31 2020 Hui Wang - 1:9.0.35-2 +- Upgrade to 9.0.35 + +* Wed Apr 22 2020 Coty Sutherland - 1:9.0.34-2 +- Add updated catalina.policy patch to allow ECJ usage under the Security Manager + +* Tue Apr 21 2020 Coty Sutherland - 1:9.0.34-1 +- Update to 9.0.34 + +* Thu Mar 05 2020 Coty Sutherland - 1:9.0.31-1 +- Update to 9.0.31 +- Resolves: rhbz#1806398 - CVE-2020-1938 tomcat: Apache Tomcat AJP File Read/Inclusion Vulnerability + +* Fri Jan 31 2020 Fedora Release Engineering - 1:9.0.30-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Fri Dec 20 2019 Coty Sutherland - 1:9.0.30-1 +- Update to 9.0.30 + +* Thu Sep 26 2019 Coty Sutherland - 1:9.0.26-2 +- Resolves: rhbz#1510522 man page uid and gid mismatch for service accounts + +* Thu Sep 26 2019 Coty Sutherland - 1:9.0.26-1 +- Update to 9.0.26 +- Resolves: rhbz#1523112 tomcat systemd does not cope with - in service names +- Resolves: rhbz#1510896 Problem to start tomcat with a user whose group has a name different to the user + +* Sat Jul 27 2019 Fedora Release Engineering - 1:9.0.21-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Wed Jul 17 2019 Coty Sutherland - 1:9.0.21-2 +- Update build-classpath calls to ECJ to specify the JAR we want to use + +* Tue Jun 18 2019 Coty Sutherland - 1:9.0.21-1 +- Update to 9.0.21 + +* Tue Apr 02 2019 Coty Sutherland - 1:9.0.13-4 +- Remove javadoc subpackage to drop the jpackage-utils dependency + +* Wed Feb 20 2019 Coty Sutherland - 1:9.0.13-3 +- Remove OSGi MANIFEST files, these are now included in the upstream Tomcat distribution (as of 9.0.10) +- Remove unused dependencies, apache-commons-collections, apache-commons-daemon, apache-commons-pool, junit + +* Sun Feb 03 2019 Fedora Release Engineering - 1:9.0.13-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Thu Dec 13 2018 Coty Sutherland - 1:9.0.13-1 +- Update to 9.0.13 +- Resolves: rhbz#1636513 - CVE-2018-11784 tomcat: Open redirect in default servlet + +* Sun Oct 14 2018 Peter Robinson 1:9.0.10-2 +- Drop legcy sys-v bits + +* Tue Jul 31 2018 Coty Sutherland - 1:9.0.10-1 +- Update to 9.0.10 +- Resolves: rhbz#1624929 - CVE-2018-1336 tomcat: A bug in the UTF-8 decoder can lead to DoS +- Resolves: rhbz#1579612 - CVE-2018-8014 tomcat: Insecure defaults in CORS filter enable 'supportsCredentials' for all origins +- Resolves: rhbz#1607586 - CVE-2018-8034 tomcat: host name verification missing in WebSocket client +- Resolves: rhbz#1607584 - CVE-2018-8037 tomcat: Due to a mishandling of close in NIO/NIO2 connectors user sessions can get mixed up + +* Sat Jul 14 2018 Fedora Release Engineering - 1:9.0.7-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Tue May 01 2018 Coty Sutherland - 1:9.0.7-1 +- Update to 9.0.7 + +* Thu Mar 15 2018 Coty Sutherland - 1:8.5.29-1 +- Update to 8.5.29 +- Resolves: rhbz#1548290 CVE-2018-1304 tomcat: Incorrect handling of empty string URL in security constraints can lead to unitended exposure of resources +- Resolves: rhbz#1548284 CVE-2018-1305 tomcat: Late application of security constraints can lead to resource exposure for unauthorised users + +* Fri Feb 09 2018 Igor Gnatenko - 1:8.0.49-2 +- Escape macros in %%changelog + +* Thu Feb 01 2018 Coty Sutherland - 1:8.0.49-1 +- Update to 8.0.49 + +* Tue Dec 12 2017 Merlin Mathesius - 1:8.0.47-3 +- Cleanup spec file conditionals + +* Tue Oct 24 2017 Troy Dawson - 1:8.0.47-2 +- Change "zip -u" to "zip" +- Resolves: rhbz#1495241 [tomcat] zip -u in spec file causes race condition + +* Wed Oct 04 2017 Coty Sutherland - 1:8.0.47-1 +- Update to 8.0.47 +- Resolves: rhbz#1497682 CVE-2017-12617 tomcat: Remote Code Execution bypass for CVE-2017-12615 + +* Mon Aug 21 2017 Coty Sutherland - 1:8.0.46-1 +- Update to 8.0.46 +- Resolves: rhbz#1480620 CVE-2017-7674 tomcat: Cache Poisoning + +* Thu Jul 27 2017 Fedora Release Engineering - 1:8.0.44-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Fri Jun 09 2017 Coty Sutherland - 1:8.0.44-1 +- Resolves: rhbz#1459160 CVE-2017-5664 tomcat: Security constrained bypass in error page mechanism + +* Tue Apr 11 2017 Coty Sutherland - 1:8.0.43-1 +- Update to 8.0.43 + +* Fri Mar 31 2017 Coty Sutherland - 1:8.0.42-1 +- Update to 8.0.42 + +* Thu Feb 16 2017 Coty Sutherland - 1:8.0.41-1 +- Update to 8.0.41 +- Resolves: rhbz#1403825 CVE-2016-8745 tomcat: information disclosure due to incorrect Processor sharing + +* Sat Feb 11 2017 Fedora Release Engineering - 1:8.0.39-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Tue Nov 29 2016 Coty Sutherland - 1:8.0.39-1 +- Update to 8.0.39 +- Resolves: rhbz#1397493 CVE-2016-6816 CVE-2016-6817 CVE-2016-8735 tomcat: various flaws + +* Tue Oct 25 2016 Coty Sutherland - 1:8.0.38-1 +- Update to 8.0.38 + +* Sun Oct 23 2016 Coty Sutherland - 1:8.0.37-3 +- Resolves: rhbz#1383216 CVE-2016-6325 tomcat: tomcat writable config files allow privilege escalation +- Resolves: rhbz#1382310 CVE-2016-5425 tomcat: Local privilege escalation via systemd-tmpfiles service + +* Tue Sep 13 2016 Coty Sutherland - 1:8.0.37-1 +- Rebase to 8.0.37 +- Resolves: rhbz#1375581 CVE-2016-5388 CGI sets environmental variable based on user supplied Proxy request header +- Resolves: rhbz#1370262 catalina.out is no longer in use in the main package, but still gets rotated + +* Thu Aug 11 2016 Coty Sutherland - 1:8.0.36-2 +- Related: rhbz#1349469 Correct typo in changelog entry + +* Mon Aug 08 2016 Coty Sutherland - 1:8.0.36-1 +- Resolves: rhbz#1349469 CVE-2016-3092 tomcat: Usage of vulnerable FileUpload package can result in denial of service (updates to 8.0.36) +- Resolves: rhbz#1364056 The command tomcat-digest doesn't work +- Resolves: rhbz#1363884 The tomcat-tool-wrapper script is broken +- Resolves: rhbz#1347864 The systemd service unit does not allow tomcat to shut down gracefully +- Resolves: rhbz#1347835 The security manager doesn't work correctly (JSPs cannot be compiled) +- Resolves: rhbz#1341853 rpm -V tomcat fails on /var/log/tomcat/catalina.out +- Resolves: rhbz#1341850 tomcat-jsvc.service has TOMCAT_USER value hard-coded +- Resolves: rhbz#1359737 Missing maven depmap for the following artifacts: org.apache.tomcat:tomcat-websocket, org.apache.tomcat:tomcat-websocket-api +- Resolves: asfbz#59960 Building javadocs with java8 fails + +* Wed Mar 2 2016 Ivan Afonichev - 1:8.0.32-4 +- Revert sysconfig migration changes, resolves: rhbz#1311771, rhbz#1311905 +- Add /etc/tomcat/conf.d/ with shell expansion support, resolves rhbz#1293636 + +* Sat Feb 27 2016 Ivan Afonichev - 1:8.0.32-3 +- Load sysconfig from tomcat.conf, resolves: rhbz#1311771, rhbz#1311905 +- Set default javax.sql.DataSource factory to apache commons one, resolves rhbz#1214381 + +* Sun Feb 21 2016 Ivan Afonichev - 1:8.0.32-2 +- Fix symlinks from $CATALINA_HOME/lib perspective, resolves: rhbz#1308685 + +* Thu Feb 11 2016 Ivan Afonichev - 1:8.0.32-1 +- Updated to 8.0.32 +- Remove log4j support. It has never been working actually. See rhbz#1236297 +- Move shipped config to /etc/sysconfig/tomcat. /etc/tomcat/tomcat.conf can now be used to override it with shell expansion, resolves rhbz#1293636 +- Recommend tomcat-native, resolves: rhbz#1243132 + +* Wed Feb 10 2016 Coty Sutherland 1:8.0.26-4 +- Resolves: rhbz#1286800 Failed to start component due to wrong allowLinking="true" in context.xml +- Program /bin/nologin does not exist (#1302718) + +* Fri Feb 05 2016 Fedora Release Engineering - 1:8.0.26-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Nov 11 2015 Robert Scheck 1:8.0.26-2 +- CATALINA_OPTS are only read when SECURITY_MANAGER is true (#1147105) + +* Thu Aug 27 2015 Alexander Kurtakov 1:8.0.26-1 +- Update to 8.0.26. + +* Fri Jul 10 2015 Alexander Kurtakov 1:8.0.24-2 +- Update to 8.0.24. + +* Fri Jun 19 2015 Alexander Kurtakov 1:8.0.23-2 +- Drop javax.el:el-api alias. + +* Thu Jun 18 2015 Alexander Kurtakov 1:8.0.23-1 +- Update to 8.0.23. + +* Thu Jun 18 2015 Alexander Kurtakov 1:8.0.20-3 +- Drop jetty alias for servlet. + +* Tue Jun 09 2015 Michal Srb - 1:8.0.20-2 +- Fix metadata for org.apache.tomcat:{tomcat-jni,tomcat-util-scan} + +* Thu Mar 5 2015 Alexander Kurtakov 1:8.0.18-5 +- Rebuild against tomcat-taglibs-standard. + +* Wed Mar 4 2015 Alexander Kurtakov 1:8.0.18-4 +- Fix epoch bumped el_1_0_api that would override all other glassfish/jboss/etc. due to wrong epoch. +- Drop old provides. + +* Tue Mar 03 2015 Stephen Gallagher 1:8.0.18-3 +- Bump epoch to maintain upgrade path from Fedora 22 + +* Mon Feb 16 2015 Michal Srb - 0:8.0.18-2 +- Install POM files for org.apache.tomcat:{tomcat-jni,tomcat-util-scan} + +* Sun Feb 15 2015 Ivan Afonichev 0:8.0.18-1 +- Updated to 8.0.18 + +* Sat Sep 20 2014 Ivan Afonichev 0:8.0.12-1 +- Updated to 8.0.12 +- Substitute libnames in catalina-tasks.xml, resolves: rhbz#1126439 +- Use CATALINA_OPTS only on start, resolves: rhbz#1051194 + +* Mon Jun 16 2014 Michal Srb - 0:7.0.54-3 +- jsp-api requires el-api + +* Sun Jun 08 2014 Fedora Release Engineering - 0:7.0.54-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Thu Jun 5 2014 Alexander Kurtakov 0:7.0.54-1 +- Update to upstream 7.0.54 - fixes compile with Java 8. + +* Wed May 21 2014 Alexander Kurtakov 0:7.0.52-3 +- Drop servlet/el api provides to reduce user machines ending with both. + +* Sun Mar 30 2014 Ivan Afonichev 0:7.0.52-2 +- Don't provide maven javax.jsp:jsp-api and javax.servlet.jsp:javax.servlet.jsp-api resolves: rhbz#1076949 +- Move log4j support into subpackage, resolves: rhbz#1027716 + +* Wed Mar 26 2014 Ivan Afonichev 0:7.0.52-1 +- Updated to 7.0.52 +- Rewrite jsvc implementation, resolves: rhbz#1051743 +- Switch to java-headless R, resolves: rhbz#1068566 +- Create and own %%{_localstatedir}/lib/tomcats, resolves: rhbz#1026741 +- Add pom for tomcat-jdbc, resolves: rhbz#1011003 + +* Tue Jan 21 2014 Mikolaj Izdebski - 0:7.0.47-3 +- Fix installation of Maven metadata for tomcat-juli.jar +- Resolves: rhbz#1033664 + +* Wed Jan 15 2014 Stanislav Ochotnicky - 0:7.0.47-2 +- Rebuild for bug #1033664 + +* Sun Nov 03 2013 Ivan Afonichev 0:7.0.47-1 +- Updated to 7.0.47 +- Fix java.security.policy + +* Sun Aug 04 2013 Fedora Release Engineering - 0:7.0.42-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Fri Jul 12 2013 Ivan Afonichev 0:7.0.42-2 +- Remove jpackage-utils R + +* Thu Jul 11 2013 Dmitry Tikhonov 0:7.0.42-1 +- Updated to 7.0.42 + +* Tue Jun 11 2013 Paul Komkoff 0:7.0.40-3 +- Dropped systemv inits. Bye-bye. +- Updated the systemd wrappers to allow running multiple instances. + Added wrapper scripts to do that, ported the original non-named + service file to work with the same wrappers, updated + /usr/sbin/tomcat to call systemctl. + +* Sat May 11 2013 Ivan Afonichev 0:7.0.40-1 +- Updated to 7.0.40 +- Resolves: rhbz 956569 added missing commons-pool link +- Remove ant-nodeps BR + +* Mon Mar 4 2013 Mikolaj Izdebski - 0:7.0.37-2 +- Add depmaps for org.eclipse.jetty.orbit +- Resolves: rhbz#917626 + +* Wed Feb 20 2013 Ivan Afonichev 0:7.0.39-1 +- Updated to 7.0.39 + +* Wed Feb 20 2013 Ivan Afonichev 0:7.0.37-1 +- Updated to 7.0.37 + +* Mon Feb 4 2013 Ivan Afonichev 0:7.0.35-1 +- Updated to 7.0.35 +- systemd SuccessExitStatus=143 for proper stop exit code processing + +* Mon Dec 24 2012 Ivan Afonichev 0:7.0.34-1 +- Updated to 7.0.34 +- ecj >= 4.2.1 now required +- Resolves: rhbz 889395 concat classpath correctly; chdir to $CATALINA_HOME + +* Fri Dec 7 2012 Ivan Afonichev 0:7.0.33-2 +- Resolves: rhbz 883806 refix logdir ownership + +* Sun Dec 2 2012 Ivan Afonichev 0:7.0.33-1 +- Updated to 7.0.33 +- Resolves: rhbz 873620 need chkconfig for update-alternatives + +* Wed Oct 17 2012 Ivan Afonichev 0:7.0.32-1 +- Updated to 7.0.32 +- Resolves: rhbz 842620 symlinks to taglibs + +* Fri Aug 24 2012 Ivan Afonichev 0:7.0.29-1 +- Updated to 7.0.29 +- Add pidfile as tmpfile +- Use systemd for running as unprivileged user +- Resolves: rhbz 847751 upgrade path was broken +- Resolves: rhbz 850343 use new systemd-rpm macros + +* Sat Jul 21 2012 Fedora Release Engineering - 0:7.0.28-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Mon Jul 2 2012 Ivan Afonichev 0:7.0.28-1 +- Updated to 7.0.28 +- Resolves: rhbz 820119 Remove bundled apache-commons-dbcp +- Resolves: rhbz 814900 Added tomcat-coyote POM +- Resolves: rhbz 810775 Remove systemv stuff from %%post scriptlet +- Remove redhat-lsb R + +* Mon Apr 9 2012 Ivan Afonichev 0:7.0.27-2 +- Fixed native download hack + +* Sat Apr 7 2012 Ivan Afonichev 0:7.0.27-1 +- Updated to 7.0.27 +- Fixed jakarta-taglibs-standard BR and R + +* Wed Mar 21 2012 Stanislav Ochotnicky - 0:7.0.26-2 +- Add more depmaps to J2EE apis to help jetty/glassfish updates + +* Wed Mar 14 2012 Juan Hernandez 0:7.0.26-2 +- Added the POM files for tomcat-api and tomcat-util (#803495) + +* Wed Feb 22 2012 Ivan Afonichev 0:7.0.26-1 +- Updated to 7.0.26 +- Bug 790334: Change ownership of logdir for logrotate + +* Thu Feb 16 2012 Krzysztof Daniel 0:7.0.25-4 +- Bug 790694: Priorities of jsp, servlet and el packages updated. + +* Wed Feb 8 2012 Krzysztof Daniel 0:7.0.25-3 +- Dropped indirect dependecy to tomcat 5 + +* Sun Jan 22 2012 Ivan Afonichev 0:7.0.25-2 +- Added hack for maven depmap of tomcat-juli absolute link [ -f ] pass correctly + +* Sat Jan 21 2012 Ivan Afonichev 0:7.0.25-1 +- Updated to 7.0.25 +- Removed EntityResolver patch (changes already in upstream sources) +- Place poms and depmaps in the same package as jars +- Added javax.servlet.descriptor to export-package of servlet-api +- Move several chkconfig actions and reqs to systemv subpackage +- New maven depmaps generation method +- Add patch to support java7. (patch sent upstream). +- Require java >= 1:1.6.0 + +* Fri Jan 13 2012 Krzysztof Daniel 0:7.0.23-5 +- Exported javax.servlet.* packages in version 3.0 as 2.6 to make + servlet-api compatible with Eclipse. + +* Thu Jan 12 2012 Ivan Afonichev 0:7.0.23-4 +- Move jsvc support to subpackage + +* Wed Jan 11 2012 Alexander Kurtakov 0:7.0.23-2 +- Add EntityResolver setter patch to jasper for jetty's need. (patch sent upstream). + +* Mon Dec 12 2011 Joseph D. Wagner 0:7.0.23-3 +- Added support to /usr/sbin/tomcat-sysd and /usr/sbin/tomcat for + starting tomcat with jsvc, which allows tomcat to perform some + privileged operations (e.g. bind to a port < 1024) and then switch + identity to a non-privileged user. Must add USE_JSVC="true" to + /etc/tomcat/tomcat.conf or /etc/sysconfig/tomcat. + +* Mon Nov 28 2011 Ivan Afonichev 0:7.0.23-1 +- Updated to 7.0.23 + +* Fri Nov 11 2011 Ivan Afonichev 0:7.0.22-2 +- Move tomcat-juli.jar to lib package +- Drop %%update_maven_depmap as in tomcat6 +- Provide native systemd unit file ported from tomcat6 + +* Thu Oct 6 2011 Ivan Afonichev 0:7.0.22-1 +- Updated to 7.0.22 + +* Mon Oct 03 2011 Rex Dieter - 0:7.0.21-3.1 +- rebuild (java), rel-eng#4932 + +* Mon Sep 26 2011 Ivan Afonichev 0:7.0.21-3 +- Fix basedir mode + +* Tue Sep 20 2011 Roland Grunberg 0:7.0.21-2 +- Add manifests for el-api, jasper-el, jasper, tomcat, and tomcat-juli. + +* Thu Sep 8 2011 Ivan Afonichev 0:7.0.21-1 +- Updated to 7.0.21 + +* Mon Aug 15 2011 Ivan Afonichev 0:7.0.20-3 +- Require java = 1:1.6.0 + +* Mon Aug 15 2011 Ivan Afonichev 0:7.0.20-2 +- Require java < 1.7.0 + +* Mon Aug 15 2011 Ivan Afonichev 0:7.0.20-1 +- Updated to 7.0.20 + +* Tue Jul 26 2011 Ivan Afonichev 0:7.0.19-1 +- Updated to 7.0.19 + +* Tue Jun 21 2011 Ivan Afonichev 0:7.0.16-1 +- Updated to 7.0.16 + +* Mon Jun 6 2011 Ivan Afonichev 0:7.0.14-3 +- Added initial systemd service +- Fix some paths + +* Sat May 21 2011 Ivan Afonichev 0:7.0.14-2 +- Fixed http source link +- Securify some permissions +- Added licenses for el-api and servlet-api +- Added dependency on jpackage-utils for the javadoc subpackage + +* Sat May 14 2011 Ivan Afonichev 0:7.0.14-1 +- Updated to 7.0.14 + +* Thu May 5 2011 Ivan Afonichev 0:7.0.12-4 +- Provided local paths for libs +- Fixed dependencies +- Fixed update temp/work cleanup + +* Mon May 2 2011 Ivan Afonichev 0:7.0.12-3 +- Fixed package groups +- Fixed some permissions +- Fixed some links +- Removed old tomcat6 crap + +* Thu Apr 28 2011 Ivan Afonichev 0:7.0.12-2 +- Package now named just tomcat instead of tomcat7 +- Removed Provides: %%{name}-log4j +- Switched to apache-commons-* names instead of jakarta-commons-* . +- Remove the old changelog +- BR/R java >= 1:1.6.0 , same for java-devel +- Removed old tomcat6 crap + +* Wed Apr 27 2011 Ivan Afonichev 0:7.0.12-1 +- Tomcat7 From cdf316a2f007364db95a2b1f3dd8f037583442e9 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:12:51 +0300 Subject: [PATCH 113/124] Add obsoletes as temporary solution --- tomcat.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tomcat.spec b/tomcat.spec index 8689ef0..6941f04 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -137,6 +137,7 @@ The docs web application for Apache Tomcat. Summary: Apache Tomcat JavaServer Pages v%{jspspec} API Implementation Classes Provides: jsp = %{jspspec} Obsoletes: %{name}-jsp-api < %{jspspec} +Obsoletes: %{name}-jsp-2.3-api < %{version} Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} @@ -159,6 +160,7 @@ Libraries needed to run the Tomcat Web container. Summary: Apache Tomcat Java Servlet v%{servletspec} API Implementation Classes Provides: servlet = %{servletspec} Obsoletes: %{name}-servlet-api < %{servletspec} +Obsoletes: %{name}-servlet-4.0-api < %{version} %description servlet-%{servletspec}-api Apache Tomcat Servlet API Implementation Classes. @@ -167,6 +169,7 @@ Apache Tomcat Servlet API Implementation Classes. Summary: Apache Tomcat Expression Language v%{elspec} API Implementation Classes Provides: el_api = %{elspec} Obsoletes: %{name}-el-api < %{elspec} +Obsoletes: %{name}-el-3.0-api < %{version} %description el-%{elspec}-api Apache Tomcat EL API Implementation Classes. From 55ffac79411b689bd9beb683dc25ef1953b48e06 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:13:52 +0300 Subject: [PATCH 114/124] Update to 10.1.43 --- tomcat.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tomcat.spec b/tomcat.spec index 6941f04..fe2e2ca 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 3.1 %global major_version 10 %global minor_version 1 -%global micro_version 34 +%global micro_version 43 %global packdname apache-tomcat-%{version}-src %global servletspec 6.0 %global elspec 5.0 From 9eae7c317a7c170fa614ba426dadd836fcb4f39b Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:16:04 +0300 Subject: [PATCH 115/124] Update to 10.1.43 --- sources | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources b/sources index 1bac248..6eba8ed 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-10.1.34-src.tar.gz) = 0124d92eb1d184bdce1a50d5934958a0c796460a7157a8622aeee2b21060f5377198939a0260285bcdaa25cea42b880cb97575469a63f7b33ec22d532927e6ca +SHA512 (apache-tomcat-10.1.43-src.tar.gz) = 24672a4ea4d6e0bfd5e7dbb8694f260216bea47f21c347dd549d3e0851915aa7616695356cbf6714780ff1527f346ad2119f7f52f66779c4d0510ad0f83e9978 From 2dc58c1b4a0919d6ee5044eb5168b41c00d16d64 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Mon, 28 Jul 2025 16:37:19 +0300 Subject: [PATCH 116/124] Add required conflicts --- tomcat.spec | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tomcat.spec b/tomcat.spec index fe2e2ca..0941de7 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -140,6 +140,7 @@ Obsoletes: %{name}-jsp-api < %{jspspec} Obsoletes: %{name}-jsp-2.3-api < %{version} Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} +Conflicts: tomcat-jsp-2.3-api %description jsp-%{jspspec}-api Apache Tomcat JSP API Implementation Classes. @@ -152,6 +153,10 @@ Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} Requires: ecj >= 4.20 Recommends: tomcat-jakartaee-migration Requires(preun): coreutils +Conflicts: tomcat-jsp-2.3-api +Conflicts: tomcat-servlet-4.0-api +Conflicts: tomcat-el-3.0-api + %description lib Libraries needed to run the Tomcat Web container. @@ -161,6 +166,7 @@ Summary: Apache Tomcat Java Servlet v%{servletspec} API Implementation Classes Provides: servlet = %{servletspec} Obsoletes: %{name}-servlet-api < %{servletspec} Obsoletes: %{name}-servlet-4.0-api < %{version} +Conflicts: tomcat-servlet-4.0-api %description servlet-%{servletspec}-api Apache Tomcat Servlet API Implementation Classes. @@ -170,6 +176,7 @@ Summary: Apache Tomcat Expression Language v%{elspec} API Implementation Classes Provides: el_api = %{elspec} Obsoletes: %{name}-el-api < %{elspec} Obsoletes: %{name}-el-3.0-api < %{version} +Conflicts: tomcat-el-3.0-api %description el-%{elspec}-api Apache Tomcat EL API Implementation Classes. From f7115aee66d086719cdc0bcccf7ce3f8aaddda93 Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Mon, 28 Jul 2025 19:25:32 +0200 Subject: [PATCH 117/124] Rebuilt for java-25-openjdk as preffered jdk https://fedoraproject.org/wiki/Changes/Java25AndNoMoreSystemJdk Note, that since f43, you should be always explicit on what jdk to use. This commit should do exactly that. --- tomcat.spec | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 0941de7..2eac613 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -86,17 +86,17 @@ Patch6: rhbz-1857043.patch BuildArch: noarch ExclusiveArch: %{java_arches} noarch -BuildRequires: ant >= 1.10.2 +BuildRequires: ant-openjdk25 >= 1.10.2 BuildRequires: ecj >= 4.20 BuildRequires: findutils -BuildRequires: java-devel >= 17 -BuildRequires: javapackages-local +BuildRequires: java-25-devel >= 17 +BuildRequires: javapackages-local-openjdk25 BuildRequires: aqute-bnd BuildRequires: aqute-bndlib BuildRequires: systemd BuildRequires: tomcat-jakartaee-migration -Requires: (java-headless >= 11 or java >= 11) +Requires: (java-headless >= 11 or java-25 >= 11) Requires: javapackages-tools Requires: %{name}-lib = %{epoch}:%{version}-%{release} %if 0%{?fedora} || 0%{?rhel} > 7 From 6a5dffd2aa984970586bf059f6a02dbaeea1408b Mon Sep 17 00:00:00 2001 From: dsoumis Date: Tue, 29 Jul 2025 11:59:45 +0300 Subject: [PATCH 118/124] Rebuilt for the side tag f43-build-side-114811 --- tomcat.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tomcat.spec b/tomcat.spec index 2eac613..5ec5a3b 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -529,6 +529,9 @@ install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf %{appdir}/ROOT %changelog +* Tue Jul 29 2025 Dimitris Soumis - 1:10.1.43-5 +- Rebuilt for the side tag f43-build-side-114811 + * Fri Jan 10 2025 Dimitris Soumis - 1:10.1.34-1 - Update to version 10.1.34 From 6015a7ef86bf72d2e583f408812248235173ccca Mon Sep 17 00:00:00 2001 From: dsoumis Date: Thu, 14 Aug 2025 11:43:33 +0300 Subject: [PATCH 119/124] Rebuilt for the side tag f43-build-side-116701 --- tomcat.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tomcat.spec b/tomcat.spec index 5ec5a3b..9c82f7c 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -529,6 +529,9 @@ install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf %{appdir}/ROOT %changelog +* Wed Aug 14 2025 Dimitris Soumis - 1:10.1.43-6 +- Rebuilt for the side tag f43-build-side-116701 + * Tue Jul 29 2025 Dimitris Soumis - 1:10.1.43-5 - Rebuilt for the side tag f43-build-side-114811 From 35f2755fd19a0883cf048b8052d685fecba90311 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Tue, 19 Aug 2025 14:57:56 +0300 Subject: [PATCH 120/124] Add virtual provides to resolve installability issues --- tomcat.spec | 25 +++++++++++-------------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 9c82f7c..c79da3b 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -136,11 +136,11 @@ The docs web application for Apache Tomcat. %package jsp-%{jspspec}-api Summary: Apache Tomcat JavaServer Pages v%{jspspec} API Implementation Classes Provides: jsp = %{jspspec} -Obsoletes: %{name}-jsp-api < %{jspspec} -Obsoletes: %{name}-jsp-2.3-api < %{version} Requires: %{name}-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} -Conflicts: tomcat-jsp-2.3-api +Obsoletes: %{name}-jsp-2.3-api < 1:9.1 +Provides: %{name}-jsp-2.3-api = %{?epoch:%{epoch}:}%{version}-%{release} + %description jsp-%{jspspec}-api Apache Tomcat JSP API Implementation Classes. @@ -153,10 +153,6 @@ Requires: %{name}-el-%{elspec}-api = %{epoch}:%{version}-%{release} Requires: ecj >= 4.20 Recommends: tomcat-jakartaee-migration Requires(preun): coreutils -Conflicts: tomcat-jsp-2.3-api -Conflicts: tomcat-servlet-4.0-api -Conflicts: tomcat-el-3.0-api - %description lib Libraries needed to run the Tomcat Web container. @@ -164,9 +160,8 @@ Libraries needed to run the Tomcat Web container. %package servlet-%{servletspec}-api Summary: Apache Tomcat Java Servlet v%{servletspec} API Implementation Classes Provides: servlet = %{servletspec} -Obsoletes: %{name}-servlet-api < %{servletspec} -Obsoletes: %{name}-servlet-4.0-api < %{version} -Conflicts: tomcat-servlet-4.0-api +Obsoletes: %{name}-servlet-4.0-api < 1:9.1 +Provides: %{name}-servlet-4.0-api = %{?epoch:%{epoch}:}%{version}-%{release} %description servlet-%{servletspec}-api Apache Tomcat Servlet API Implementation Classes. @@ -174,9 +169,8 @@ Apache Tomcat Servlet API Implementation Classes. %package el-%{elspec}-api Summary: Apache Tomcat Expression Language v%{elspec} API Implementation Classes Provides: el_api = %{elspec} -Obsoletes: %{name}-el-api < %{elspec} -Obsoletes: %{name}-el-3.0-api < %{version} -Conflicts: tomcat-el-3.0-api +Obsoletes: %{name}-el-3.0-api < 1:9.1 +Provides: %{name}-el-3.0-api = %{?epoch:%{epoch}:}%{version}-%{release} %description el-%{elspec}-api Apache Tomcat EL API Implementation Classes. @@ -529,7 +523,10 @@ install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf %{appdir}/ROOT %changelog -* Wed Aug 14 2025 Dimitris Soumis - 1:10.1.43-6 +* Tue Aug 19 2025 Dimitris Soumis - 1:10.1.43-7 +- Add virtual provides to resolve installability issues + +* Thu Aug 14 2025 Dimitris Soumis - 1:10.1.43-6 - Rebuilt for the side tag f43-build-side-116701 * Tue Jul 29 2025 Dimitris Soumis - 1:10.1.43-5 From cfa0ed06cc95236e1a10cb8fc43c34827c5a4a13 Mon Sep 17 00:00:00 2001 From: Adam Williamson Date: Wed, 20 Aug 2025 17:18:34 -0700 Subject: [PATCH 121/124] Fix gating policy, again I don't know why the previous changes were reverted. We cannot gate on rpmdeplint for non-Rawhide releases because it only runs on Rawhide: https://pagure.io/fedora-ci/general/issue/471 Also, the bodhi_update_push_testing context doesn't really work. It's only very partially hooked up in Bodhi, so defining it does nothing useful but only potentially causes weird things like https://github.com/fedora-infra/bodhi/issues/5660 . --- gating.yaml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/gating.yaml b/gating.yaml index b81b8c4..524dba5 100644 --- a/gating.yaml +++ b/gating.yaml @@ -1,12 +1,17 @@ --- !Policy product_versions: - - fedora-* + - fedora-rawhide decision_contexts: - - bodhi_update_push_testing - bodhi_update_push_stable subject_type: koji_build rules: - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional} +product_versions: + - fedora-* +decision_contexts: + - bodhi_update_push_stable +subject_type: koji_build +rules: - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis} - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional} - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/javapackages.functional} From e1a22bc2bfe269fa70f12aa06ee9528eaea2504b Mon Sep 17 00:00:00 2001 From: Adam Williamson Date: Wed, 20 Aug 2025 17:43:44 -0700 Subject: [PATCH 122/124] On second thought, let's keep bodhi_update_push_testing It doesn't really work, but without it, we may have a short time early in an update's life when no gating policy applies for stable push...let's not do that. As long as the policies for stable and testing are the same, things should work right. --- gating.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gating.yaml b/gating.yaml index 524dba5..0553cb6 100644 --- a/gating.yaml +++ b/gating.yaml @@ -3,6 +3,7 @@ product_versions: - fedora-rawhide decision_contexts: - bodhi_update_push_stable + - bodhi_update_push_testing subject_type: koji_build rules: - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional} @@ -10,6 +11,7 @@ product_versions: - fedora-* decision_contexts: - bodhi_update_push_stable + - bodhi_update_push_testing subject_type: koji_build rules: - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis} From 1b2f8ef6d9758b5c17b1196d8fe7dc9a61e24e77 Mon Sep 17 00:00:00 2001 From: dsoumis Date: Fri, 12 Sep 2025 17:29:22 +0300 Subject: [PATCH 123/124] Update to 10.1.46 upstream release --- sources | 2 +- tomcat.spec | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/sources b/sources index 6eba8ed..4027ead 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (apache-tomcat-10.1.43-src.tar.gz) = 24672a4ea4d6e0bfd5e7dbb8694f260216bea47f21c347dd549d3e0851915aa7616695356cbf6714780ff1527f346ad2119f7f52f66779c4d0510ad0f83e9978 +SHA512 (apache-tomcat-10.1.46-src.tar.gz) = 4abb5a5fad013135c4107508e4530673e4af623658b6aff5c4fc18fd557dfca37b58a9c5c0479e52e240b53d469ad91a34225a80b718aa2f91b8d385d16d9682 diff --git a/tomcat.spec b/tomcat.spec index c79da3b..6a1425a 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -31,7 +31,7 @@ %global jspspec 3.1 %global major_version 10 %global minor_version 1 -%global micro_version 43 +%global micro_version 46 %global packdname apache-tomcat-%{version}-src %global servletspec 6.0 %global elspec 5.0 @@ -523,6 +523,9 @@ install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf %{appdir}/ROOT %changelog +* Fri Sep 12 2025 Dimitris Soumis - 1:10.1.46-1 +- Update to version 10.1.46 + * Tue Aug 19 2025 Dimitris Soumis - 1:10.1.43-7 - Add virtual provides to resolve installability issues From b6246accae8953d404005d1bb81b8e67a79dabd1 Mon Sep 17 00:00:00 2001 From: Adam Williamson Date: Thu, 25 Sep 2025 11:10:06 -0700 Subject: [PATCH 124/124] Fix java requirements (#2398212) With java-latest now being 25, but only java-25 providing the generic 'java' and 'java-headless' etc., we get file conflicts if a transaction includes both things that want 'java-25' or 'java-25-headless' and things that want 'java' or 'java-headless'. This is because dnf prefers java-latest as a provider of the java-25-* provides (it's versioned higher than the java-25 packages), but only the java-25 packages provide the generic requirements. To avoid this making FreeIPA uninstallable, let's get rid of the generic 'java-headless' requirement. I think f7115aee was meant to do this already, but missed it. Also get rid of the now-useless version bounds on requirements where the java version is included in the requirement name. --- tomcat.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 6a1425a..77901bc 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -89,14 +89,14 @@ ExclusiveArch: %{java_arches} noarch BuildRequires: ant-openjdk25 >= 1.10.2 BuildRequires: ecj >= 4.20 BuildRequires: findutils -BuildRequires: java-25-devel >= 17 +BuildRequires: java-25-devel BuildRequires: javapackages-local-openjdk25 BuildRequires: aqute-bnd BuildRequires: aqute-bndlib BuildRequires: systemd BuildRequires: tomcat-jakartaee-migration -Requires: (java-headless >= 11 or java-25 >= 11) +Requires: (java-25-headless or java-25) Requires: javapackages-tools Requires: %{name}-lib = %{epoch}:%{version}-%{release} %if 0%{?fedora} || 0%{?rhel} > 7 @@ -523,6 +523,10 @@ install -m0644 -D tomcat.sysusers.conf %{buildroot}%{_sysusersdir}/tomcat.conf %{appdir}/ROOT %changelog +* Thu Sep 25 2025 Adam Williamson - 1:10.1.46-2 +- Drop now-unnecessary version bounds in java requirements +- Specify java-25-headless, not java-headless (#2398212) + * Fri Sep 12 2025 Dimitris Soumis - 1:10.1.46-1 - Update to version 10.1.46