From f9d0cbb90c6877c3a3ade9b532e6ea1521130783 Mon Sep 17 00:00:00 2001 From: Coty Sutherland Date: Thu, 8 Jul 2021 21:23:53 -0400 Subject: [PATCH] Resolves: rhbz#1977948 Drop jakarta-saaj dependency from pki-servlet-engine --- 0002-ascheel-Add-javax.xml.soap.patch | 30 --- exclude-OSGi-metadata.patch | 208 +++++++++++++++++++++ pki-servlet-engine.spec | 143 ++++---------- sources | 2 +- tomcat-9.0.30-CompilerOptionsRemoval.patch | 63 ------- 5 files changed, 245 insertions(+), 201 deletions(-) delete mode 100644 0002-ascheel-Add-javax.xml.soap.patch create mode 100644 exclude-OSGi-metadata.patch delete mode 100644 tomcat-9.0.30-CompilerOptionsRemoval.patch diff --git a/0002-ascheel-Add-javax.xml.soap.patch b/0002-ascheel-Add-javax.xml.soap.patch deleted file mode 100644 index f324ef4..0000000 --- a/0002-ascheel-Add-javax.xml.soap.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 03ed73f56fdbb934ed3c9d6315a797835ae4cea9 Mon Sep 17 00:00:00 2001 -From: Alexander Scheel -Date: Thu, 25 Feb 2021 09:49:54 -0500 -Subject: [PATCH] Add javax.xml.soap? - -Signed-off-by: Alexander Scheel ---- - build.xml | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/build.xml b/build.xml -index 6664b7a..44888b1 100644 ---- a/build.xml -+++ b/build.xml -@@ -220,10 +220,12 @@ - - - -+ - - - - -+ - - - --- -2.29.2 - diff --git a/exclude-OSGi-metadata.patch b/exclude-OSGi-metadata.patch new file mode 100644 index 0000000..5c04cee --- /dev/null +++ b/exclude-OSGi-metadata.patch @@ -0,0 +1,208 @@ +diff -up ./build.xml.orig ./build.xml +--- ./build.xml.orig 2021-07-08 15:58:39.817466224 -0400 ++++ ./build.xml 2021-07-08 21:10:00.185752235 -0400 +@@ -1022,7 +1022,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" /> + + + + + ++ + + + diff --git a/pki-servlet-engine.spec b/pki-servlet-engine.spec index 8f8e1c3..e9bcf4a 100644 --- a/pki-servlet-engine.spec +++ b/pki-servlet-engine.spec @@ -30,8 +30,8 @@ %global major_version 9 %global minor_version 0 -%global micro_version 30 -%global redhat_version 4 +%global micro_version 43 +%global redhat_version 00011 %global packdname apache-tomcat-%{version}.redhat-%{redhat_version}-src # Specification versions @@ -58,7 +58,7 @@ Name: pki-servlet-engine 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 Group: System Environment/Daemons License: ASL 2.0 @@ -79,10 +79,8 @@ Source32: tomcat-named.service Patch0: tomcat-%{major_version}.%{minor_version}-bootstrap-MANIFEST.MF.patch Patch1: tomcat-%{major_version}.%{minor_version}-tomcat-users-webapp.patch -Patch2: tomcat-9.0.30-CompilerOptionsRemoval.patch -Patch3: tomcat-%{major_version}.%{minor_version}-catalina-policy.patch -Patch4: removeUnusedDependencies.patch -Patch6: 0002-ascheel-Add-javax.xml.soap.patch +Patch2: tomcat-%{major_version}.%{minor_version}-catalina-policy.patch +Patch3: exclude-OSGi-metadata.patch BuildArch: noarch @@ -90,16 +88,15 @@ BuildRequires: ant BuildRequires: findutils BuildRequires: java-11-devel BuildRequires: javapackages-tools -BuildRequires: maven-local -BuildRequires: jakarta-saaj +BuildRequires: javapackages-local BuildRequires: systemd BuildRequires: systemd-rpm-macros +BuildRequires: aqute-bnd +BuildRequires: aqute-bndlib -Requires: ant Requires: java-11-devel Requires: javapackages-tools Requires: procps -Requires: jakarta-saaj Requires(pre): shadow-utils Requires(post): chkconfig Requires(postun): chkconfig @@ -111,7 +108,7 @@ Requires(preun): coreutils Requires: pki-servlet-%{servletspec}-api = %{epoch}:%{version}-%{release} # Add bundled so that everyone knows this is Tomcat. -Provides: bundled(tomcat) = 9.0.30.redhat-%{redhat_version} +Provides: bundled(tomcat) = %{version}.redhat-%{redhat_version} Obsoletes: pki-servlet-container @@ -145,11 +142,15 @@ find . -type f \( -name "*.bat" -o -name "*.class" -o -name Thumbs.db -o -name " %patch1 -p0 %patch2 -p0 %patch3 -p0 -%patch4 -p0 -%patch6 -p1 # Since we don't support ECJ in RHEL anymore, remove the class that requires it %{__rm} -f java/org/apache/jasper/compiler/JDTCompiler.java +# Also remove webservices naming factory as it's unused and causes unnecessary dependencies to be required +%{__rm} -rf java/org/apache/naming/factory/webservices + +# Configure maven files +%mvn_package ":tomcat-servlet-api" tomcat-servlet-api + %build export OPT_JAR_LIST="xalan-j2-serializer" @@ -163,11 +164,16 @@ touch HACK -Dcommons-daemon.jar="HACK" \ -Dcommons-daemon.native.src.tgz="HACK" \ -Djdt.jar="HACK" \ - -Djakarta-saaj.jar="/usr/share/java/jakarta-saaj/jakarta.xml.soap-api.jar" \ -Dtomcat-native.tar.gz="HACK" \ -Dtomcat-native.home="." \ -Dcommons-daemon.native.win.mgr.exe="HACK" \ -Dnsis.exe="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)" \ + -Dosgi-cmpn.jar="$(build-classpath osgi-compendium/osgi.cmpn)" \ deploy dist-prepare dist-source # remove some jars that we don't need @@ -271,77 +277,15 @@ pushd ${RPM_BUILD_ROOT}%{homedir} popd # Install the maven metadata -%{__install} -d -m 0755 ${RPM_BUILD_ROOT}%{_mavenpomdir} -pushd output/dist/src/res/maven -for pom in *.pom; do - # fix-up version in all pom files - sed -i 's/@MAVEN.DEPLOY.VERSION@/%{version}/g' $pom -done +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 -# we won't install dbcp, juli-adapters and juli-extras pom files -for libname in annotations-api catalina jasper-el jasper catalina-ha; do - %{__cp} -a tomcat-$libname.pom ${RPM_BUILD_ROOT}%{_mavenpomdir}/JPP.tomcat-$libname.pom - %add_maven_depmap JPP.tomcat-$libname.pom tomcat/$libname.jar -done - -# tomcat-util-scan -%{__cp} -a tomcat-util-scan.pom ${RPM_BUILD_ROOT}%{_mavenpomdir}/JPP.tomcat-util-scan.pom -%add_maven_depmap JPP.tomcat-util-scan.pom tomcat/tomcat-util-scan.jar - -# tomcat-jni -%{__cp} -a tomcat-jni.pom ${RPM_BUILD_ROOT}%{_mavenpomdir}/JPP.tomcat-jni.pom -%add_maven_depmap JPP.tomcat-jni.pom tomcat/tomcat-jni.jar - -# servlet-api jsp-api and el-api are not in tomcat subdir, since they are widely re-used elsewhere -%{__cp} -a tomcat-jsp-api.pom ${RPM_BUILD_ROOT}%{_mavenpomdir}/JPP-tomcat-jsp-api.pom -%add_maven_depmap JPP-tomcat-jsp-api.pom tomcat-jsp-api.jar -a "org.eclipse.jetty.orbit:javax.servlet.jsp" - -%{__cp} -a tomcat-el-api.pom ${RPM_BUILD_ROOT}%{_mavenpomdir}/JPP-tomcat-el-api.pom -%add_maven_depmap JPP-tomcat-el-api.pom tomcat-el-api.jar -a "org.eclipse.jetty.orbit:javax.el" - -%{__cp} -a tomcat-servlet-api.pom ${RPM_BUILD_ROOT}%{_mavenpomdir}/JPP-tomcat-servlet-api.pom -# Generate a depmap fragment javax.servlet:servlet-api pointing to -# tomcat-servlet-3.0-api for backwards compatibility -# also provide jetty depmap (originally in jetty package, but it's cleaner to have it here -%add_maven_depmap JPP-tomcat-servlet-api.pom tomcat-servlet-%{servletspec}-api.jar -f "tomcat-servlet-api" - -# replace temporary copy with link -%{__ln_s} -f $(abs2rel %{bindir}/tomcat-juli.jar %{libdir}) ${RPM_BUILD_ROOT}%{libdir}/ - -# two special pom where jar files have different names -%{__cp} -a tomcat-tribes.pom ${RPM_BUILD_ROOT}%{_mavenpomdir}/JPP.tomcat-catalina-tribes.pom -%add_maven_depmap JPP.tomcat-catalina-tribes.pom tomcat/catalina-tribes.jar - -%{__cp} -a tomcat-coyote.pom ${RPM_BUILD_ROOT}%{_mavenpomdir}/JPP.tomcat-tomcat-coyote.pom -%add_maven_depmap JPP.tomcat-tomcat-coyote.pom tomcat/tomcat-coyote.jar - -%{__cp} -a tomcat-juli.pom ${RPM_BUILD_ROOT}%{_mavenpomdir}/JPP.tomcat-tomcat-juli.pom -%add_maven_depmap JPP.tomcat-tomcat-juli.pom tomcat/tomcat-juli.jar - -%{__cp} -a tomcat-api.pom ${RPM_BUILD_ROOT}%{_mavenpomdir}/JPP.tomcat-tomcat-api.pom -%add_maven_depmap JPP.tomcat-tomcat-api.pom tomcat/tomcat-api.jar - -%{__cp} -a tomcat-util.pom ${RPM_BUILD_ROOT}%{_mavenpomdir}/JPP.tomcat-tomcat-util.pom -%add_maven_depmap JPP.tomcat-tomcat-util.pom tomcat/tomcat-util.jar - -%{__cp} -a tomcat-jdbc.pom ${RPM_BUILD_ROOT}%{_mavenpomdir}/JPP.tomcat-tomcat-jdbc.pom -%add_maven_depmap JPP.tomcat-tomcat-jdbc.pom tomcat/tomcat-jdbc.jar - -# tomcat-websocket-api -%{__cp} -a tomcat-websocket-api.pom ${RPM_BUILD_ROOT}%{_mavenpomdir}/JPP.tomcat-websocket-api.pom -%add_maven_depmap JPP.tomcat-websocket-api.pom tomcat/websocket-api.jar - -# tomcat-tomcat-websocket -%{__cp} -a tomcat-websocket.pom ${RPM_BUILD_ROOT}%{_mavenpomdir}/JPP.tomcat-tomcat-websocket.pom -%add_maven_depmap JPP.tomcat-tomcat-websocket.pom tomcat/tomcat-websocket.jar - -# tomcat-jaspic-api -%{__cp} -a tomcat-jaspic-api.pom ${RPM_BUILD_ROOT}%{_mavenpomdir}/JPP.tomcat-jaspic-api.pom -%add_maven_depmap JPP.tomcat-jaspic-api.pom tomcat/jaspic-api.jar - -# Manually change the metadata filenames -%{__mv} ${RPM_BUILD_ROOT}%{_datadir}/maven-metadata/%{name}.xml ${RPM_BUILD_ROOT}%{_datadir}/maven-metadata/tomcat.xml -%{__mv} ${RPM_BUILD_ROOT}%{_datadir}/maven-metadata/%{name}-tomcat-servlet-api.xml ${RPM_BUILD_ROOT}%{_datadir}/maven-metadata/tomcat-servlet-api.xml +%mvn_artifact res/maven/tomcat-servlet-api.pom output/build/lib/servlet-api.jar +%mvn_install %pre # add the tomcat user and group @@ -435,35 +379,20 @@ fi %{libdir}/*.jar %{_javadir}/*.jar %{bindir}/tomcat-juli.jar -%{_mavenpomdir}/JPP.tomcat-annotations-api.pom -%{_mavenpomdir}/JPP.tomcat-catalina-ha.pom -%{_mavenpomdir}/JPP.tomcat-catalina-tribes.pom -%{_mavenpomdir}/JPP.tomcat-catalina.pom -%{_mavenpomdir}/JPP.tomcat-jasper-el.pom -%{_mavenpomdir}/JPP.tomcat-jasper.pom -%{_mavenpomdir}/JPP.tomcat-tomcat-api.pom -%{_mavenpomdir}/JPP.tomcat-tomcat-juli.pom -%{_mavenpomdir}/JPP.tomcat-tomcat-coyote.pom -%{_mavenpomdir}/JPP.tomcat-tomcat-util.pom -%{_mavenpomdir}/JPP.tomcat-tomcat-jdbc.pom -%{_mavenpomdir}/JPP.tomcat-websocket-api.pom -%{_mavenpomdir}/JPP.tomcat-tomcat-websocket.pom -%{_mavenpomdir}/JPP.tomcat-jaspic-api.pom -%{_mavenpomdir}/JPP.tomcat-jni.pom -%{_mavenpomdir}/JPP.tomcat-util-scan.pom -%{_mavenpomdir}/JPP-tomcat-jsp-api.pom -%{_mavenpomdir}/JPP-tomcat-el-api.pom -%{_datadir}/maven-metadata/tomcat.xml %exclude %{_javadir}/tomcat-servlet-%{servletspec}*.jar -%files -n pki-servlet-%{servletspec}-api +%files -n pki-servlet-%{servletspec}-api -f .mfiles-tomcat-servlet-api %defattr(-,root,root,-) %doc LICENSE %{_javadir}/tomcat-servlet-%{servletspec}*.jar -%{_datadir}/maven-metadata/tomcat-servlet-api.xml -%{_mavenpomdir}/JPP-tomcat-servlet-api.pom %changelog +* Thu Jul 08 2021 Coty Sutherland - 1:9.0.43-1 +- Update to JWS 5.5, and drop jakarta-saaj dependency +- Updates to javapackages-local removed %%add_maven_depmap which broke the build, + so I removed most of the maven artifacts as they aren't very useful anyway +- Cleaned up a few unnecessary patches + * Tue Jun 08 2021 Coty Sutherland - 1:9.0.30-3 - Resolves: rhbz#1963851 CA instance installation fails with error message diff --git a/sources b/sources index 83f40c3..e9e8bc3 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -53d79feeb2f25cee3a0590ee422352ea tomcat-9.0.30.redhat-4-src.zip +SHA512 (tomcat-9.0.43.redhat-00011-src.zip) = fee08905d2f500b885232622715d3bb83f170ff8b612a7c659c90d9d11ab054e629158368662a945063e595690d1009d8b54b0f99f055ed1e23d133f6a340cdb diff --git a/tomcat-9.0.30-CompilerOptionsRemoval.patch b/tomcat-9.0.30-CompilerOptionsRemoval.patch deleted file mode 100644 index 4c477b4..0000000 --- a/tomcat-9.0.30-CompilerOptionsRemoval.patch +++ /dev/null @@ -1,63 +0,0 @@ ---- java/org/apache/jasper/compiler/JDTCompiler.java.orig 2020-04-21 13:14:09.678677327 -0400 -+++ java/org/apache/jasper/compiler/JDTCompiler.java 2020-04-21 13:14:53.044535302 -0400 -@@ -313,25 +313,6 @@ public class JDTCompiler extends org.apa - } else if(opt.equals("1.8")) { - settings.put(CompilerOptions.OPTION_Source, - CompilerOptions.VERSION_1_8); -- // Version format changed from Java 9 onwards. -- // Support old format that was used in EA implementation as well -- } else if(opt.equals("9") || opt.equals("1.9")) { -- settings.put(CompilerOptions.OPTION_Source, -- CompilerOptions.VERSION_9); -- } else if(opt.equals("10")) { -- settings.put(CompilerOptions.OPTION_Source, -- CompilerOptions.VERSION_10); -- } else if(opt.equals("11")) { -- settings.put(CompilerOptions.OPTION_Source, -- CompilerOptions.VERSION_11); -- } else if(opt.equals("12")) { -- settings.put(CompilerOptions.OPTION_Source, -- CompilerOptions.VERSION_12); -- } else if(opt.equals("13")) { -- // Constant not available in latest ECJ version shipped with -- // Tomcat. May be supported in a snapshot build. -- // This is checked against the actual version below. -- settings.put(CompilerOptions.OPTION_Source, "13"); - } else { - log.warn(Localizer.getMessage("jsp.warning.unknown.sourceVM", opt)); - settings.put(CompilerOptions.OPTION_Source, -@@ -378,34 +359,6 @@ public class JDTCompiler extends org.apa - CompilerOptions.VERSION_1_8); - settings.put(CompilerOptions.OPTION_Compliance, - CompilerOptions.VERSION_1_8); -- // Version format changed from Java 9 onwards. -- // Support old format that was used in EA implementation as well -- } else if(opt.equals("9") || opt.equals("1.9")) { -- settings.put(CompilerOptions.OPTION_TargetPlatform, -- CompilerOptions.VERSION_9); -- settings.put(CompilerOptions.OPTION_Compliance, -- CompilerOptions.VERSION_9); -- } else if(opt.equals("10")) { -- settings.put(CompilerOptions.OPTION_TargetPlatform, -- CompilerOptions.VERSION_10); -- settings.put(CompilerOptions.OPTION_Compliance, -- CompilerOptions.VERSION_10); -- } else if(opt.equals("11")) { -- settings.put(CompilerOptions.OPTION_TargetPlatform, -- CompilerOptions.VERSION_11); -- settings.put(CompilerOptions.OPTION_Compliance, -- CompilerOptions.VERSION_11); -- } else if(opt.equals("12")) { -- settings.put(CompilerOptions.OPTION_TargetPlatform, -- CompilerOptions.VERSION_12); -- settings.put(CompilerOptions.OPTION_Compliance, -- CompilerOptions.VERSION_12); -- } else if(opt.equals("13")) { -- // Constant not available in latest ECJ version shipped with -- // Tomcat. May be supported in a snapshot build. -- // This is checked against the actual version below. -- settings.put(CompilerOptions.OPTION_TargetPlatform, "13"); -- settings.put(CompilerOptions.OPTION_Compliance, "13"); - } else { - log.warn(Localizer.getMessage("jsp.warning.unknown.targetVM", opt)); - settings.put(CompilerOptions.OPTION_TargetPlatform,