Blob Blame History Raw
# Copyright (c) 2000-2005, JPackage roject
# 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 mainname xmlrpc

Name:       xmlrpc3
Version:    3.1.3
Release:    7%{?dist}
Summary:    Java XML-RPC implementation
License:    ASL 2.0
Group:      Development/Libraries
URL:        http://ws.apache.org/xmlrpc/
Source0:    http://www.apache.org/dist//ws/xmlrpc/sources/apache-xmlrpc-%{version}-src.tar.bz2
Source1:    %{name}-jpp-depmap.xml
# FIXME:  file this upstream
# The tests pom.xml doesn't include necessary dependencies on junit and
# servletapi
Patch0:     %{name}-addjunitandservletapitotestpom.patch
# Add OSGi MANIFEST information
Patch1:     %{name}-client-addosgimanifest.patch
Patch2:     %{name}-common-addosgimanifest.patch

BuildRequires:  maven
BuildRequires:  maven-resources-plugin
BuildRequires:  maven-compiler-plugin
BuildRequires:  maven-surefire-plugin
BuildRequires:  maven-jar-plugin
BuildRequires:  maven-install-plugin
BuildRequires:  maven-javadoc-plugin
BuildRequires:  maven-eclipse-plugin
BuildRequires:  maven-assembly-plugin
BuildRequires:  maven-source-plugin
BuildRequires:  maven-site-plugin
BuildRequires:  ws-jaxme
BuildRequires:  ws-commons-util
BuildRequires:  jpackage-utils >= 0:1.6
BuildRequires:  servlet25
BuildRequires:	tomcat6
BuildRequires:  junit
BuildRequires:  jakarta-commons-httpclient
BuildRequires:  apache-commons-logging
BuildRequires:  jsse

BuildArch:    noarch

%description
Apache XML-RPC is a Java implementation of XML-RPC, a popular protocol
that uses XML over HTTP to implement remote procedure calls.
Apache XML-RPC was previously known as Helma XML-RPC. If you have code
using the Helma library, all you should have to do is change the import
statements in your code from helma.xmlrpc.* to org.apache.xmlrpc.*.

%package javadoc
Summary:    Javadoc for %{name}
Group:      Development/Libraries

%description javadoc
Javadoc for %{name}.

%package common
Summary:    Common classes for XML-RPC client and server implementations
Group:      Development/Libraries
Obsoletes:  %{name}-common-devel <= %{version}
Requires:   ws-jaxme
Requires:   ws-commons-util
Requires:   jpackage-utils >= 0:1.6
Requires:   apache-commons-logging
Requires(post): jpackage-utils
Requires(postun): jpackage-utils

%description common
%{summary}.

%package client
Summary:    XML-RPC client implementation
Group:      Development/Libraries
Requires:   %{name}-common
Requires:   jakarta-commons-httpclient
Obsoletes:  %{name}-client-devel <= %{version}

%description client
%{summary}.

%package server
Summary:    XML-RPC server implementation
Group:      Development/Libraries
Requires:   %{name}-client
Requires:   junit
Requires:   servlet25
Obsoletes:  %{name}-server-devel <= %{version}

%description server
%{summary}.

%prep
%setup -q -n apache-%{mainname}-%{version}-src
pushd server
%patch0 -b .sav
popd
pushd client
%patch1 -b .sav
popd
pushd common
%patch2 -b .sav
popd

sed -i 's/\r//' LICENSE.txt

%build
export MAVEN_REPO_LOCAL=$(pwd)/.m2/repository
mkdir -p $MAVEN_REPO_LOCAL
# ignore test failure because server part needs network
mvn-rpmbuild \
  -e \
  -Dmaven.local.depmap.file=%{SOURCE1} \
  -Dmaven.test.failure.ignore=true \
  install javadoc:aggregate

%install
rm -rf $RPM_BUILD_ROOT

# jars
install -d -m 755 $RPM_BUILD_ROOT%{_javadir}
install -m 644 client/target/%{mainname}-client-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}-client.jar
install -m 644 server/target/%{mainname}-server-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}-server.jar
install -m 644 common/target/%{mainname}-common-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}-common.jar

# install maven pom files
install -Dm 644 pom.xml $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-%{name}.pom
install -Dm 644 common/pom.xml $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-%{name}-common.pom
install -Dm 644 client/pom.xml $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-%{name}-client.pom
install -Dm 644 server/pom.xml $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-%{name}-server.pom

# ... and maven depmaps
%add_to_maven_depmap org.apache.xmlrpc %{mainname} %{version} JPP %{name}
%add_to_maven_depmap org.apache.xmlrpc %{mainname}-common %{version} JPP %{name}-common
%add_to_maven_depmap org.apache.xmlrpc %{mainname}-client %{version} JPP %{name}-client
%add_to_maven_depmap org.apache.xmlrpc %{mainname}-server %{version} JPP %{name}-server

# javadoc
install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}
cp -pr target/site/apidocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}

%post common
%update_maven_depmap

%postun common
%update_maven_depmap

%pre javadoc
# workaround rpm bug, can be removed in F-17
[ $1 -gt 1 ] && [ -L %{_javadocdir}/%{name} ] && \
rm -rf $(readlink -f %{_javadocdir}/%{name}) %{_javadocdir}/%{name} || :

%files javadoc
%defattr(-,root,root,-)
%doc LICENSE.txt
%{_javadocdir}/*

%files common
%defattr(-,root,root,-)
%doc LICENSE.txt
%{_mavenpomdir}/JPP-%{name}.pom
%{_mavenpomdir}/JPP-%{name}-common.pom
%{_mavendepmapfragdir}/%{name}
%{_javadir}/%{name}-common.jar

%files client
%defattr(-,root,root,-)
%{_mavenpomdir}/JPP-%{name}-client.pom
%{_javadir}/%{name}-client.jar

%files server
%defattr(-,root,root,-)
%{_mavenpomdir}/JPP-%{name}-server.pom
%{_javadir}/%{name}-server.jar

%changelog
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.3-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild

* Mon Nov 28 2011 Sami Wagiaalla <swagiaal@redhat.com> - 3.1.3-6
- Use mvn-rpmbuild.
- Change the depmaps flag.
- Use BR maven istead of maven2.

* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.3-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Thu Dec  9 2010 Stanislav Ochotnicky <sochotnicky@redhat.com> - 3.1.3-4
- Fix Requires (split to sub-packages, change codec to logging)
- Make jars and javadocs versionless

* Wed Sep 29 2010 Alexander Kurtakov <akurtako@redhat.com> 3.1.3-3
- Add missing maven-site-plugin BR.

* Wed Sep 29 2010 Alexander Kurtakov <akurtako@redhat.com> 3.1.3-2
- Really remove old patch.

* Wed Sep 29 2010 Alexander Kurtakov <akurtako@redhat.com> 3.1.3-1
- Update to new version.
- Drop devel subpackages.
- Drop ant build.
- Move poms to the proper subpackages.
- Use new names of dependencies.

* Wed Jul 21 2010 Stanislav Ochotnicky <sochotnicky@redhat.com> - 3.0-5
- Install maven depmaps and pom.xml files

* Mon Jul 12 2010 Andrew Overholt <overholt@redhat.com> 3.0-4.15
- Ensure license is also in -javadoc package

* Wed Jan 13 2010 Andrew Overholt <overholt@redhat.com> 3.0-4.14
- Really drop maven2-plugin-release BR.

* Mon Jan 11 2010 Andrew Overholt <overholt@redhat.com> 3.0-4.13
- Add ant BR.

* Mon Jan 11 2010 Andrew Overholt <overholt@redhat.com> 3.0-4.12
- Fix Source0 URL.

* Wed Dec 09 2009 Andrew Overholt <overholt@redhat.com> 3.0-4.11
- Disable building with maven due to missing -release plugin.
- Provide ability to build with ant.
- Drop maven2-plugin-release BR as it's folded into maven2.

* Mon Aug 17 2009 Andrew Overholt <overholt@redhat.com> 3.0-4.10
- Fixed URL (bug #354031)

* Mon Jul 27 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0-4.9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild

* Thu Feb 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0-3.9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild

* Fri Oct 31 2008 Alexander Kurtakov <akurtako@redhat.com> 3.0-2.9
- Fix client osgi manifest - client should require common bundle.

* Wed Oct 22 2008 Alexander Kurtakov <akurtako@redhat.com> 3.0-2.8
- Drop gcj_support.
- Fix commons osgi manifest.
- BR tomcat5.

* Fri Sep 12 2008 Andrew Overholt <overholt@redhat.com> 3.0-2.7
- Add ppc64.

* Thu Jul 10 2008 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-2.6
- drop repotag
- fix license tag

* Wed Mar 19 2008 Andrew Overholt <overholt@redhat.com> 3.0-2jpp.5
- Fix server description (rhbz#433699)

* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 3.0-2jpp.4
- Autorebuild for GCC 4.3

* Fri Sep 07 2007 Andrew Overholt <overholt@redhat.com> 3.0-1jpp.4
- Disable ppc64 (rh#239123).

* Fri Sep 07 2007 Andrew Overholt <overholt@redhat.com> 3.0-1jpp.3
- Add OSGi manifests.

* Fri Aug 24 2007 Andrew Overholt <overholt@redhat.com> 3.0-1jpp.2
- Rebuild.

* Fri Mar 16 2007 Andrew Overholt <overholt@redhat.com> 3.0-1jpp.1
- Create new xmlrpc3 package
- Use maven to build
- Shuffle to common, server, and client sub-packages
- Add -devel sub-packages for -sources jars

* Thu Mar 08 2007 Deepak Bhole <dbhole@redhat.com> 2.0.1-3jpp.2
- Add javax.net.ssl support to build org.apache.xmlrpc.secure.*
- Minor spec file cleanup

* Fri Aug 04 2006 Vivek Lakshmanan <vivekl@redhat.com> - 0:2.0.1-3jpp.1
- Merge with latest from JPP.

* Sat Jul 22 2006 Jakub Jelinek <jakub@redhat.com> - 0:2.0.1-1jpp_8.2fc
- Rebuilt

* Wed Jul 12 2006 Jesse Keating <jkeating@redhat.com> - 0:2.0.1-1jpp_8.1fc
- rebuild

* Wed Mar  8 2006 Rafael Schloming <rafaels@redhat.com> - 0:2.0.1-1jpp_7fc
- excluded s390 due to eclipse

* Mon Mar  6 2006 Jeremy Katz <katzj@redhat.com> - 0:2.0.1-1jpp_6fc
- stop scriptlet spew

* Fri Feb 24 2006 Igor Foox <ifoox@redhat.com> - 0:2.0.1-1jpp_5fc
- Added post/postun dependency on coreutils.

* Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 0:2.0.1-1jpp_4fc
- bump again for double-long bug on ppc(64)

* Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 0:2.0.1-1jpp_3fc
- rebuilt for new gcc4.1 snapshot and glibc changes

* Wed Jan 25 2006 Igor Foox <ifoox@redhat.com>  0:2.0.1-1jpp_2fc
- ExcludeArch s390x and ppc64

* Wed Jan 18 2006 Andrew Overholt <overholt@redhat.com> 0:2.0.1-1jpp_2fc
- Comment out JPackage Distribution and Vendor tags

* Wed Jan 18 2006 Jesse Keating <jkeating@redhat.com> 0:2.0.1-1jpp_2fc
- bump for test

* Wed Jan 18 2006 Igor Foox <ifoox@redhat.com> 0:2.0.1-1jpp_1fc
- Update to version 2.0.1
- Natively compile

* Thu Aug 26 2004 Ralph Apel <r.apel at r-apel.de> 0:1.2-0.b1.3jpp
- Build with ant-1.6.2

* Thu Apr 29 2004 David Walluck <david@jpackage.org> 0:1.2-0.b1.2jpp
- add jar symlinks
- remove %%buildroot in %%install

* Tue May 06 2003 David Walluck <david@anti-microsoft.org> 0:1.2-0.b1.1jpp
- 1.2-b1
- update for JPackage 1.5

* Mon Mar 18 2002 Guillaume Rousse <guillomovitch@users.sourceforge.net> 1.1-1jpp 
- 1.1
- generic servlet support
- used source release
- dropped patch
- added applet jar

* Mon Jan 21 2002 Guillaume Rousse <guillomovitch@users.sourceforge.net> 1.0-3jpp 
- versioned dir for javadoc
- no dependencies for javadoc package
- dropped jsse package
- adaptation to new servlet3 package
- adaptation to new jsse package
- section macro

* Fri Dec 7 2001 Guillaume Rousse <guillomovitch@users.sourceforge.net> 1.0-2jpp
- javadoc into javadoc package

* Sat Nov 3 2001 Guillaume Rousse <guillomovitch@users.sourceforge.net> 1.0-1jpp
- first JPackage release