diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..754e113 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/servlet-api-5.0.0.tar.gz diff --git a/.jakarta-servlet.metadata b/.jakarta-servlet.metadata new file mode 100644 index 0000000..14dbc5c --- /dev/null +++ b/.jakarta-servlet.metadata @@ -0,0 +1 @@ +1326cf8e9252c36acfb0b9c7f7578d720c9bea82 SOURCES/servlet-api-5.0.0.tar.gz diff --git a/SPECS/jakarta-servlet.spec b/SPECS/jakarta-servlet.spec new file mode 100644 index 0000000..f17f320 --- /dev/null +++ b/SPECS/jakarta-servlet.spec @@ -0,0 +1,108 @@ +%bcond_with bootstrap + +Name: jakarta-servlet +Version: 5.0.0 +Release: 10%{?dist} +Summary: Server-side API for handling HTTP requests and responses +# most of the project is EPL-2.0 or GPLv2 w/exceptions, +# but some files still have Apache-2.0 license headers: +# https://github.com/eclipse-ee4j/servlet-api/issues/347 +License: (EPL-2.0 or GPLv2 with exceptions) and ASL 2.0 +URL: https://github.com/eclipse-ee4j/servlet-api +BuildArch: noarch + +Source0: https://github.com/eclipse-ee4j/servlet-api/archive/%{version}-RELEASE/servlet-api-%{version}.tar.gz + +BuildRequires: maven-local +%if %{with bootstrap} +BuildRequires: javapackages-bootstrap +%else +BuildRequires: mvn(org.apache.felix:maven-bundle-plugin) +BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin) +%endif + +Provides: glassfish-servlet-api = %{version}-%{release} + +%description +Jakarta Servlet defines a server-side API for handling HTTP requests +and responses. + +%{?javadoc_package} + +%prep +%setup -q -n servlet-api-%{version}-RELEASE + +# remove unnecessary dependency on parent POM +%pom_remove_parent . api + +# do not build specification documentation +%pom_disable_module spec + +# Copy to old package name +# TODO: Remove when all dependencies are migrated from javax.servlet to jakarta.servlet +cp -pr api/src/main/java/jakarta api/src/main/java/javax +sed -i -e 's/jakarta\./javax./g' $(find api/src/main/java/javax -name *.java) +%pom_xpath_replace pom:instructions/pom:Export-Package \ + 'jakarta.servlet.*,javax.servlet.*;version="4.0.0"' api + +# do not install useless parent POM +%mvn_package jakarta.servlet:servlet-parent __noinstall + +# remove unnecessary maven plugins +%pom_remove_plugin -r :formatter-maven-plugin +%pom_remove_plugin -r :impsort-maven-plugin +%pom_remove_plugin -r :maven-enforcer-plugin +%pom_remove_plugin -r :maven-javadoc-plugin +%pom_remove_plugin -r :maven-source-plugin + +# add maven artifact coordinate aliases for backwards compatibility +%mvn_alias jakarta.servlet:jakarta.servlet-api \ + javax.servlet:javax.servlet-api \ + javax.servlet:servlet-api + +# add compat symlink for packages constructing the classpath manually +%mvn_file :{*} %{name}/@1 glassfish-servlet-api + +%build +%mvn_build + +%install +%mvn_install + +%files -f .mfiles +%license LICENSE.md NOTICE.md +%doc README.md + +%changelog +* Mon Aug 09 2021 Mohan Boddu - 5.0.0-10 +- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags + Related: rhbz#1991688 + +* Wed Jun 09 2021 Mikolaj Izdebski - 5.0.0-9 +- Rebuild to workaround DistroBaker issue + +* Tue Jun 08 2021 Mikolaj Izdebski - 5.0.0-8 +- Bootstrap Maven for CentOS Stream 9 + +* Wed May 26 2021 Mikolaj Izdebski - 5.0.0-7 +- Re-add provides on glassfish-servlet-api + +* Mon May 17 2021 Mikolaj Izdebski - 5.0.0-6 +- Bootstrap build +- Non-bootstrap build + +* Tue Jan 26 2021 Fedora Release Engineering - 5.0.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Thu Aug 20 2020 Mat Booth - 5.0.0-4 +- Correct mvn_file macro invokation + +* Wed Aug 19 2020 Fabio Valentini - 5.0.0-3 +- Add compat symlink for packages constructing the classpath manually. + +* Wed Aug 19 2020 Mat Booth - 5.0.0-2 +- Also ship the API in the old javax namespace to aid transition + +* Thu Aug 13 2020 Fabio Valentini - 5.0.0-1 +- Initial package renamed from glassfish-servlet-api. +