Blame SPECS/resteasy-base.spec

07c370
%global namedreltag .Final
07c370
%global namedversion %{version}%{namedreltag}
07c370
%global prodname resteasy
07c370
07c370
Name:           resteasy-base
abf604
Version:        3.0.6
abf604
Release:        1%{?dist}
07c370
Summary:        Framework for RESTful Web services and Java applications
07c370
License:        ASL 2.0 and CDDL
07c370
URL:            http://www.jboss.org/resteasy
07c370
07c370
# git clone git://github.com/resteasy/Resteasy.git
07c370
# cd Resteasy
abf604
# git archive --prefix=resteasy-3.0.6.Final/ --output=resteasy-3.0.6.Final.tar.gz 3.0.6.Final
abf604
Source0:        %{prodname}-%{namedversion}.tar.gz
abf604
Patch0:         0001-Mime4j-0.7.2-support.patch
abf604
Patch1:         0002-bcmail-api-change.patch
abf604
Patch2:		%{prodname}-%{namedversion}-resteasy-1073.patch
07c370
07c370
BuildArch: noarch
07c370
07c370
BuildRequires:  maven-local
07c370
BuildRequires:  mvn(com.sun.xml.bind:jaxb-impl)
07c370
BuildRequires:  mvn(commons-httpclient:commons-httpclient)
07c370
BuildRequires:  mvn(javax.servlet:servlet-api)
07c370
BuildRequires:  mvn(junit:junit)
07c370
BuildRequires:  mvn(log4j:log4j)
07c370
BuildRequires:  mvn(org.apache.httpcomponents:httpclient)
07c370
BuildRequires:  mvn(org.apache.maven.plugins:maven-compiler-plugin)
07c370
BuildRequires:  mvn(org.apache.maven.plugins:maven-deploy-plugin)
07c370
BuildRequires:  mvn(org.apache.maven.plugins:maven-install-plugin)
07c370
BuildRequires:  mvn(org.apache.maven.plugins:maven-javadoc-plugin)
07c370
BuildRequires:  mvn(org.apache.maven.plugins:maven-source-plugin)
07c370
BuildRequires:  mvn(org.codehaus.jackson:jackson-core-asl)
07c370
BuildRequires:  mvn(org.codehaus.jackson:jackson-jaxrs)
07c370
BuildRequires:  mvn(org.codehaus.jackson:jackson-mapper-asl)
07c370
BuildRequires:  mvn(org.codehaus.jackson:jackson-xc)
07c370
BuildRequires:  mvn(org.codehaus.jettison:jettison)
07c370
BuildRequires:  mvn(org.jboss.spec.javax.annotation:jboss-annotations-api_1.1_spec)
07c370
BuildRequires:  mvn(org.jboss.spec.javax.servlet:jboss-servlet-api_2.5_spec)
07c370
BuildRequires:  mvn(org.scannotation:scannotation)
07c370
BuildRequires:  mvn(org.slf4j:slf4j-api)
07c370
BuildRequires:  mvn(org.jboss:jandex)
07c370
07c370
Requires:       resteasy-base-jaxrs-api         = %{version}-%{release}
07c370
Requires:       resteasy-base-providers-pom     = %{version}-%{release}
07c370
Requires:       resteasy-base-atom-provider     = %{version}-%{release}
07c370
Requires:       resteasy-base-jackson-provider  = %{version}-%{release}
07c370
Requires:       resteasy-base-jaxb-provider     = %{version}-%{release}
07c370
Requires:       resteasy-base-jaxrs             = %{version}-%{release}
07c370
Requires:       resteasy-base-jaxrs-all         = %{version}-%{release}
07c370
Requires:       resteasy-base-jettison-provider = %{version}-%{release}
07c370
Requires:       resteasy-base-tjws              = %{version}-%{release}
abf604
Requires:	resteasy-base-client		= %{version}-%{release}
abf604
Requires:	resteasy-base-resteasy-pom	= %{version}-%{release}
07c370
07c370
07c370
%description
07c370
%global desc \
07c370
RESTEasy contains a JBoss project that provides frameworks to help\
07c370
build RESTful Web Services and RESTful Java applications. It is a fully\
07c370
certified and portable implementation of the JAX-RS specification.
07c370
%{desc}
07c370
%global extdesc %{desc}\
07c370
\
07c370
This package contains
07c370
07c370
%package        javadoc
07c370
Summary:        Javadocs for %{name}
07c370
07c370
%description javadoc
07c370
This package contains the API documentation for %{name}.
07c370
07c370
%package        jaxrs-api
07c370
Summary:        Module jaxrs-api for %{name}
07c370
07c370
%description    jaxrs-api
07c370
%{extdesc} %{summary}.
07c370
07c370
%package        providers-pom
07c370
Summary:        Module providers-pom for %{name}
07c370
07c370
%description    providers-pom
07c370
%{extdesc} %{summary}.
07c370
07c370
%package        atom-provider
07c370
Summary:        Module atom-provider for %{name}
07c370
07c370
%description    atom-provider
07c370
%{extdesc} %{summary}.
07c370
07c370
%package        jackson-provider
07c370
Summary:        Module jackson-provider for %{name}
07c370
07c370
%description    jackson-provider
07c370
%{extdesc} %{summary}.
07c370
07c370
%package        jaxb-provider
07c370
Summary:        Module jaxb-provider for %{name}
07c370
07c370
%description    jaxb-provider
07c370
%{extdesc} %{summary}.
07c370
07c370
%package        jaxrs
07c370
Summary:        Module jaxrs for %{name}
07c370
07c370
%description    jaxrs
07c370
%{extdesc} %{summary}.
07c370
07c370
%package        jaxrs-all
07c370
Summary:        Module jaxrs-all for %{name}
07c370
07c370
%description    jaxrs-all
07c370
%{extdesc} %{summary}.
07c370
07c370
%package        jettison-provider
07c370
Summary:        Module jettison-provider for %{name}
07c370
07c370
%description    jettison-provider
07c370
%{extdesc} %{summary}.
07c370
07c370
%package        tjws
07c370
Summary:        Module tjws for %{name}
07c370
07c370
%description    tjws
07c370
%{extdesc} %{summary}.
07c370
abf604
%package	client
abf604
Summary: 	Client for %{name}
07c370
abf604
%description    client
abf604
%{extdesc} %{summary}.
07c370
abf604
%package        resteasy-pom
abf604
Summary:        Module pom for %{name}
07c370
abf604
%description    resteasy-pom
abf604
%{extdesc} %{summary}.
abf604
abf604
%prep
abf604
%setup -q -n Resteasy-%{namedversion}
abf604
abf604
# Disable unnecesary modules
abf604
%pom_disable_module examples jaxrs/pom.xml
abf604
%pom_disable_module profiling-tests jaxrs/pom.xml
abf604
%pom_disable_module resteasy-test-data jaxrs/pom.xml
abf604
%pom_disable_module war-tests jaxrs/pom.xml
abf604
%pom_disable_module resteasy-links jaxrs/pom.xml
abf604
%pom_disable_module jboss-modules jaxrs/pom.xml
abf604
abf604
%pom_disable_module resteasy-cache jaxrs/pom.xml
abf604
%pom_disable_module security jaxrs/pom.xml
abf604
%pom_disable_module resteasy-spring jaxrs/pom.xml
abf604
%pom_disable_module resteasy-bom jaxrs/pom.xml
abf604
%pom_disable_module resteasy-guice jaxrs/pom.xml
abf604
%pom_disable_module resteasy-jsapi jaxrs/pom.xml
abf604
%pom_disable_module async-http-servlet-3.0 jaxrs/pom.xml
abf604
%pom_disable_module resteasy-cdi jaxrs/pom.xml
abf604
%pom_disable_module server-adapters jaxrs/pom.xml
abf604
%pom_disable_module resteasy-jaxrs-testsuite jaxrs/pom.xml
abf604
%pom_disable_module resteasy-servlet-initializer jaxrs/pom.xml
abf604
abf604
%pom_disable_module resteasy-oauth jaxrs/security/pom.xml
abf604
%pom_disable_module login-module-authenticator jaxrs/security/pom.xml
abf604
%pom_disable_module skeleton-key-idm jaxrs/security/pom.xml
abf604
%pom_disable_module keystone/keystone-as7 jaxrs/security/pom.xml
abf604
%pom_disable_module keystone/keystone-as7-modules jaxrs/security/pom.xml
abf604
abf604
%pom_disable_module async-http-servlet-3.0-test jaxrs/async-http-servlet-3.0/pom.xml
abf604
%pom_disable_module callback-test jaxrs/async-http-servlet-3.0/pom.xml
abf604
abf604
%pom_disable_module fastinfoset jaxrs/providers/pom.xml
abf604
%pom_disable_module multipart jaxrs/providers/pom.xml
abf604
%pom_disable_module yaml jaxrs/providers/pom.xml
abf604
%pom_disable_module resteasy-html jaxrs/providers/pom.xml
abf604
%pom_disable_module test-resteasy-html jaxrs/providers/pom.xml
abf604
%pom_disable_module test-all-jaxb jaxrs/providers/pom.xml
abf604
%pom_disable_module test-jackson-jaxb-coexistence jaxrs/providers/pom.xml
abf604
%pom_disable_module resteasy-hibernatevalidator-provider jaxrs/providers/pom.xml
abf604
%pom_disable_module jackson2 jaxrs/providers/pom.xml
abf604
%pom_disable_module json-p-ee7 jaxrs/providers/pom.xml
abf604
%pom_disable_module resteasy-validator-provider-11 jaxrs/providers/pom.xml
abf604
abf604
# Leave Netty 3, disable Netty 4
abf604
%pom_disable_module resteasy-netty4 jaxrs/server-adapters/pom.xml
abf604
abf604
# Replace 2.5 servlet with the jboss-servlet-2.5-api provides
abf604
for m in jaxrs/tjws; do
abf604
%pom_remove_dep "javax.servlet:servlet-api" ${m}/pom.xml
abf604
%pom_add_dep "org.jboss.spec.javax.servlet:jboss-servlet-api_2.5_spec" ${m}/pom.xml
abf604
done
abf604
abf604
# Need to be patched to work with Jetty 9
abf604
rm jaxrs/resteasy-spring/src/main/java/org/jboss/resteasy/springmvc/JettyLifecycleManager.java
abf604
abf604
%pom_remove_dep "org.springframework:spring-test" jaxrs/resteasy-spring/pom.xml
abf604
%pom_remove_dep "org.mortbay.jetty:jetty" jaxrs/resteasy-spring/pom.xml
abf604
%pom_add_dep "org.eclipse.jetty:jetty-server" jaxrs/resteasy-spring/pom.xml
abf604
%pom_remove_dep net.jcip:jcip-annotations jaxrs/pom.xml
abf604
%pom_remove_dep net.jcip:jcip-annotations jaxrs/resteasy-jaxrs/pom.xml
abf604
%pom_remove_plugin com.atlassian.maven.plugins:maven-clover2-plugin jaxrs/pom.xml
abf604
%pom_remove_plugin com.atlassian.maven.plugins:maven-clover2-plugin jaxrs/resteasy-jaxrs/pom.xml
abf604
abf604
# Fixing JDK7 ASCII issues
abf604
files='
abf604
jaxrs/resteasy-jsapi/src/main/java/org/jboss/resteasy/jsapi/JSAPIWriter.java
abf604
jaxrs/resteasy-jsapi/src/main/java/org/jboss/resteasy/jsapi/JSAPIServlet.java
abf604
jaxrs/resteasy-jsapi/src/main/java/org/jboss/resteasy/jsapi/ServiceRegistry.java
abf604
jaxrs/providers/jaxb/src/main/java/org/jboss/resteasy/plugins/providers/jaxb/ExternalEntityUnmarshaller.java
abf604
'
abf604
abf604
for f in ${files}; do
abf604
native2ascii -encoding UTF8 ${f} ${f}
abf604
done
abf604
abf604
%patch0 -p1
abf604
%patch1 -p0
abf604
%patch2 -p1
07c370
07c370
# additional gId:aId for jaxrs-api
07c370
%mvn_alias ":jaxrs-api" "org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_1.1_spec"
07c370
07c370
%build
07c370
# build, skip tests, singleton packaging
07c370
%mvn_build -f -s
07c370
abf604
# Create Jandex index file(s)
abf604
# Not all files are required by JBoss AS7, but let's create indexes for all of them
abf604
find -name 'resteasy-*-%{namedversion}.jar' | while read f; do
abf604
  java -cp $(build-classpath jandex) org.jboss.jandex.Main -j ${f}
abf604
done
abf604
07c370
%install
07c370
%mvn_install
07c370
abf604
find -name "resteasy-*-jandex.jar" | while read f; do
abf604
  install -pm 644 ${f} %{buildroot}%{_javadir}/%{name}/$(basename -s "-%{namedversion}-jandex.jar" $f)-jandex.jar
abf604
done
07c370
07c370
%files -f .mfiles
07c370
%dir %{_javadir}/%{name}
abf604
%doc jaxrs/License.html jaxrs/README.html
07c370
%files jaxrs-all -f .mfiles-resteasy-jaxrs-all
07c370
%files providers-pom -f .mfiles-providers-pom
07c370
%files jaxrs-api -f .mfiles-jaxrs-api
07c370
%files atom-provider -f .mfiles-resteasy-atom-provider
07c370
%{_javadir}/%{name}/resteasy-atom-provider-jandex.jar
07c370
%files jackson-provider -f .mfiles-resteasy-jackson-provider
07c370
%{_javadir}/%{name}/resteasy-jackson-provider-jandex.jar
07c370
%files jaxb-provider -f .mfiles-resteasy-jaxb-provider
07c370
%{_javadir}/%{name}/resteasy-jaxb-provider-jandex.jar
07c370
%files jaxrs -f .mfiles-resteasy-jaxrs
07c370
%{_javadir}/%{name}/resteasy-jaxrs-jandex.jar
07c370
%files jettison-provider -f .mfiles-resteasy-jettison-provider
07c370
%{_javadir}/%{name}/resteasy-jettison-provider-jandex.jar
07c370
%files tjws -f .mfiles-tjws
07c370
%files javadoc -f .mfiles-javadoc
abf604
%doc jaxrs/License.html
abf604
%files client -f .mfiles-resteasy-client
abf604
%{_javadir}/%{name}/resteasy-client-jandex.jar
abf604
%files resteasy-pom -f .mfiles-resteasy-pom
07c370
07c370
07c370
%changelog
abf604
* Sun Sep 7 2014 Ade Lee <alee@redhat.com> - 3.0.6-1
abf604
- Resolves: rhbz1139067 - rebase to 3.0.6
abf604
abf604
* Mon Aug 25 2014 Ade Lee <alee@redhat.com> - 2.3.5-3
abf604
- Resolves: rhbz1121918 -  CVE-2014-3490: XXE via parameter entities
a1792d
753e06
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 2.3.5-2
753e06
- Mass rebuild 2013-12-27
753e06
07c370
* Thu Oct 24 2013 Ade Lee <alee@redhat.com> - 2.3.5-1
07c370
- Resolved Bugzilla #1017459 - resteasy-base contains known vulnerable components
07c370
07c370
* Tue Jul 2 2013 Ade Lee <alee@redhat.com> - 2.3.2-12
07c370
- Removed modules not needed for pki-core
07c370
- Bugzilla # 973224 - resteasy-base must be split into subpackages to 
07c370
  simplify dependencies.  With help from msrb.
07c370
07c370
* Thu May 9 2013 Ade Lee <alee@redhat.com> - 2.3.2-11
07c370
- Removed unneeded maven-checkstyle-plugin BR
07c370
- Removed Tomcat 6 dependency
07c370
- Replaced maven BR with maven-local
07c370
07c370
* Fri Jan 4 2013 Ade Lee <alee@redhat.com> - 2.3.2-10
07c370
- Disabled resteasy-cdi for rhel 7.0
07c370
07c370
* Tue Aug 7 2012 Ade Lee <alee@redhat.com> - 2.3.2-9
07c370
- Added tomcat6-servlet-2.5-api as a dependency
07c370
07c370
* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.2-8
07c370
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
07c370
07c370
* Tue Apr 24 2012 Marek Goldmann <mgoldman@redhat.com> 2.3.2-7
07c370
- Create also the jandex index jar files
07c370
07c370
* Tue Apr 24 2012 Marek Goldmann <mgoldman@redhat.com> 2.3.2-6
07c370
- Added resteasy-multipart-provider module
07c370
07c370
* Mon Apr 23 2012 Juan Hernandez <juan.hernandez@redhat.com> 2.3.2-5
07c370
- Fix the async HTTP Servlet 3.0 artifact id
07c370
07c370
* Mon Apr 23 2012 Juan Hernandez <juan.hernandez@redhat.com> 2.3.2-4
07c370
- Added an additional artifact and group id for jaxrs-api
07c370
07c370
* Mon Apr 23 2012 Juan Hernandez <juan.hernandez@redhat.com> 2.3.2-3
07c370
- Added async HTTP Servlet 3.0 module
07c370
07c370
* Thu Apr 12 2012 Juan Hernandez <juan.hernandez@redhat.com> 2.3.2-2
07c370
- Build CDI integration module (bug #812978)
07c370
07c370
* Tue Mar 6 2012 Ade Lee <alee@redhat.com> 2.3.2-1
07c370
- Initial packaging