From 4c29dbaf2eb1e7d45087c4cd76ce6525d5e9bce8 Mon Sep 17 00:00:00 2001 From: doriscchao Date: Mon, 20 Apr 2026 14:25:51 +0800 Subject: [PATCH 1/3] Add OC9 support for tomcat 9.0.117 - Add conditional BuildRequires for OC9 (Maven 3.8.6 with aqute-bnd) - Support TS4, OC9, and OCS23 with %{dist} macro - Bump release to 2 - Verified on all three koji systems: - TS4: http://9.135.228.36/koji/taskinfo?taskID=1355315 - OCS23: https://build.stream.opencloudos.tech/koji/taskinfo?taskID=723955 - OC9: https://build.opencloudos.tech/koji/taskinfo?taskID=707986 --- tomcat.spec | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 6173b3c..3182137 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -14,7 +14,7 @@ Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API Name: tomcat Version: 9.0.117 -Release: 1%{?dist} +Release: 2%{?dist} License: ASL 2.0 URL: http://tomcat.apache.org/ Source0: https://dlcdn.apache.org/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz @@ -43,12 +43,12 @@ BuildRequires: ant ecj findutils java-devel javapackages-local systemd BuildRequires: javapackages-common # Conditional BuildRequires based on distribution -%if "%{dist}" == ".tl4" -# TS4 uses Maven 3.8.6 and separate aqute-bnd packages +%if "%{dist}" == ".tl4" || "%{dist}" == ".oc9" +# TS4 and OC9 use Maven 3.8.6 and separate aqute-bnd packages BuildRequires: maven >= 3.8.6 BuildRequires: aqute-bnd aqute-bndlib %else -# OCS uses Maven 3.9.9 with built-in bnd +# OCS23 uses Maven 3.9.9 with built-in bnd BuildRequires: maven >= 3.9.9 BuildRequires: maven-buildrequires >= 3.9.9 %endif @@ -156,7 +156,7 @@ touch HACK -Dnsis.exe="HACK" \ -Djaxrpc-lib.jar="HACK" \ -Dwsdl4j-lib.jar="HACK" \ -%if "%{dist}" == ".tl4" +%if "%{dist}" == ".tl4" || "%{dist}" == ".oc9" -Dbnd.jar="$(build-classpath aqute-bnd/biz.aQute.bnd)" \ -Dbnd-annotation.jar="$(build-classpath aqute-bnd/biz.aQute.bnd.annotation)" \ %else @@ -430,6 +430,10 @@ fi %{_var}/lib/%{name}/webapps/ROOT %changelog +* Mon Apr 20 2026 Doris Chao - 9.0.117-2 +- [Type] sync +- [DESC] Add OC9 support with conditional BuildRequires and bnd configuration + * Fri Apr 17 2026 Doris Chao - 9.0.117-1 - [Type] security - [DESC] Update to version 9.0.117 to fix multiple CVEs: -- Gitee From 417c629f6b612ef01247dd14f01911e4feb18d40 Mon Sep 17 00:00:00 2001 From: doriscchao Date: Wed, 22 Apr 2026 09:27:47 +0800 Subject: [PATCH 2/3] Fix Maven provides metadata generation - Add %mvn_install to generate Maven provides for all platforms - Add maven-metadata XML files to %files sections - Fixes dependency issue: mvn(org.apache.tomcat:tomcat-servlet-api) - Release bumped to 3 --- tomcat.spec | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/tomcat.spec b/tomcat.spec index 3182137..0500e9f 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -14,7 +14,7 @@ Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API Name: tomcat Version: 9.0.117 -Release: 2%{?dist} +Release: 3%{?dist} License: ASL 2.0 URL: http://tomcat.apache.org/ Source0: https://dlcdn.apache.org/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz @@ -270,6 +270,8 @@ 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_install + mkdir -p %{buildroot}/usr/share/maven-poms/tomcat mkdir -p %{buildroot}/usr/share/maven-metadata install -pm 0644 output/build/lib/el-api.jar %{buildroot}/usr/share/java/tomcat/tomcat-el-api.jar @@ -407,6 +409,7 @@ fi %attr(0644,root,root) %_datadir/maven-poms/tomcat/tomcat-jsp-api.pom %attr(0755,root,root) %dir %_datadir/java/tomcat %attr(0644,root,root) %_datadir/java/tomcat/tomcat-jsp-api.jar +%attr(0644,root,root) %_datadir/maven-metadata/tomcat-tomcat-jsp-api.xml %files servlet-%{servletspec}-api %doc LICENSE @@ -415,6 +418,7 @@ fi %attr(0644,root,root) %_datadir/maven-poms/tomcat/tomcat-servlet-api.pom %attr(0755,root,root) %dir %_datadir/java/tomcat %attr(0644,root,root) %_datadir/java/tomcat/tomcat-servlet-api.jar +%attr(0644,root,root) %_datadir/maven-metadata/tomcat-tomcat-servlet-api.xml %files el-%{elspec}-api %doc LICENSE @@ -424,12 +428,17 @@ fi %attr(0644,root,root) %_datadir/maven-poms/tomcat/tomcat-el-api.pom %attr(0755,root,root) %dir %_datadir/java/tomcat %attr(0644,root,root) %_datadir/java/tomcat/tomcat-el-api.jar +%attr(0644,root,root) %_datadir/maven-metadata/tomcat-tomcat-el-api.xml %files webapps %defattr(0644,tomcat,tomcat,0755) %{_var}/lib/%{name}/webapps/ROOT %changelog +* Wed Apr 22 2026 Doris Chao - 9.0.117-3 +- [Type] bugfix +[DESC] Add %mvn_install to generate Maven provides metadata for TS4/OC9 compatibility + * Mon Apr 20 2026 Doris Chao - 9.0.117-2 - [Type] sync - [DESC] Add OC9 support with conditional BuildRequires and bnd configuration -- Gitee From a7c230f6b619a0092bd511889f606377b8bfc4af Mon Sep 17 00:00:00 2001 From: doriscchao Date: Mon, 27 Apr 2026 08:53:50 +0800 Subject: [PATCH 3/3] [Type] bugfix [DESC] Add OC9 support and restore %mvn_install with .mfiles for Maven metadata generation for TS4/OC9 compatibility - Use conditional %mvn_install for TS4/OC9 to generate Maven provides metadata - OCS23 uses manual installation without Maven metadata generation - Add explicit JAR file listings in %files sections for TS4/OC9 - Remove maven-metadata XML references for OCS23 - Unify all conditional blocks to use explicit distribution format - Merge changelog entries for release 9.0.117-2 Tested: - TS4 build: Task 1357081 (successful) - OCS23 build: Task 724423 (successful) - TS4 container installation test passed - File lists match official builds exactly --- tomcat.spec | 38 ++++++++++++++++++++++++++------------ 1 file changed, 26 insertions(+), 12 deletions(-) diff --git a/tomcat.spec b/tomcat.spec index 0500e9f..3ad48d2 100644 --- a/tomcat.spec +++ b/tomcat.spec @@ -14,7 +14,7 @@ Summary: Apache Servlet/JSP Engine, RI for Servlet %{servletspec}/JSP %{jspspec} API Name: tomcat Version: 9.0.117 -Release: 3%{?dist} +Release: 2%{?dist} License: ASL 2.0 URL: http://tomcat.apache.org/ Source0: https://dlcdn.apache.org/tomcat/tomcat-%{major_version}/v%{version}/src/%{packdname}.tar.gz @@ -270,16 +270,19 @@ 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 +%if "%{dist}" == ".tl4" || "%{dist}" == ".oc9" +# TS4/OC9: Use mvn_install to generate Maven provides via .mfiles %mvn_install - +%else +# OCS23: Manual installation only (no Maven provides needed) mkdir -p %{buildroot}/usr/share/maven-poms/tomcat -mkdir -p %{buildroot}/usr/share/maven-metadata install -pm 0644 output/build/lib/el-api.jar %{buildroot}/usr/share/java/tomcat/tomcat-el-api.jar install -pm 0644 res/maven/tomcat-el-api.pom %{buildroot}/usr/share/maven-poms/tomcat install -pm 0644 output/build/lib/jsp-api.jar %{buildroot}/usr/share/java/tomcat/tomcat-jsp-api.jar install -pm 0644 res/maven/tomcat-jsp-api.pom %{buildroot}/usr/share/maven-poms/tomcat install -pm 0644 output/build/lib/servlet-api.jar %{buildroot}/usr/share/java/tomcat/tomcat-servlet-api.jar install -pm 0644 res/maven/tomcat-servlet-api.pom %{buildroot}/usr/share/maven-poms/tomcat +%endif %pre getent group tomcat >/dev/null || %{_sbindir}/groupadd -f -g %{tcuid} -r tomcat @@ -403,14 +406,23 @@ fi %exclude %{_javadir}/%{name}-el-%{elspec}-api.jar %exclude %{_javadir}/%{name}-jsp-%{jspspec}*.jar +%if "%{dist}" == ".tl4" || "%{dist}" == ".oc9" +%files jsp-%{jspspec}-api -f .mfiles-tomcat-jsp-api +%{_javadir}/%{name}-jsp-%{jspspec}*.jar +%else %files jsp-%{jspspec}-api %{_javadir}/%{name}-jsp-%{jspspec}*.jar %attr(0755,root,root) %dir %_datadir/maven-poms/tomcat %attr(0644,root,root) %_datadir/maven-poms/tomcat/tomcat-jsp-api.pom %attr(0755,root,root) %dir %_datadir/java/tomcat %attr(0644,root,root) %_datadir/java/tomcat/tomcat-jsp-api.jar -%attr(0644,root,root) %_datadir/maven-metadata/tomcat-tomcat-jsp-api.xml +%endif +%if "%{dist}" == ".tl4" || "%{dist}" == ".oc9" +%files servlet-%{servletspec}-api -f .mfiles-tomcat-servlet-api +%doc LICENSE +%{_javadir}/%{name}-servlet-%{servletspec}*.jar +%else %files servlet-%{servletspec}-api %doc LICENSE %{_javadir}/%{name}-servlet-%{servletspec}*.jar @@ -418,8 +430,14 @@ fi %attr(0644,root,root) %_datadir/maven-poms/tomcat/tomcat-servlet-api.pom %attr(0755,root,root) %dir %_datadir/java/tomcat %attr(0644,root,root) %_datadir/java/tomcat/tomcat-servlet-api.jar -%attr(0644,root,root) %_datadir/maven-metadata/tomcat-tomcat-servlet-api.xml +%endif +%if "%{dist}" == ".tl4" || "%{dist}" == ".oc9" +%files el-%{elspec}-api -f .mfiles-tomcat-el-api +%doc LICENSE +%{_javadir}/%{name}-el-%{elspec}-api.jar +%{_javadir}/%{name}/%{name}-el-%{elspec}-api.jar +%else %files el-%{elspec}-api %doc LICENSE %{_javadir}/%{name}-el-%{elspec}-api.jar @@ -428,20 +446,16 @@ fi %attr(0644,root,root) %_datadir/maven-poms/tomcat/tomcat-el-api.pom %attr(0755,root,root) %dir %_datadir/java/tomcat %attr(0644,root,root) %_datadir/java/tomcat/tomcat-el-api.jar -%attr(0644,root,root) %_datadir/maven-metadata/tomcat-tomcat-el-api.xml +%endif %files webapps %defattr(0644,tomcat,tomcat,0755) %{_var}/lib/%{name}/webapps/ROOT %changelog -* Wed Apr 22 2026 Doris Chao - 9.0.117-3 +* Wed Apr 22 2026 Doris Chao - 9.0.117-2 - [Type] bugfix -[DESC] Add %mvn_install to generate Maven provides metadata for TS4/OC9 compatibility - -* Mon Apr 20 2026 Doris Chao - 9.0.117-2 -- [Type] sync -- [DESC] Add OC9 support with conditional BuildRequires and bnd configuration +- [DESC] Add OC9 support and restore %mvn_install with .mfiles for Maven metadata generation for TS4/OC9 compatibility * Fri Apr 17 2026 Doris Chao - 9.0.117-1 - [Type] security -- Gitee