[xmlrpc] Move to xmlrpc version 3.x.

Alexander Kurtakov akurtakov at fedoraproject.org
Fri Sep 14 08:28:12 UTC 2012


commit 1fc74296971bda3ebf856eeb17ddbab47890513e
Author: Alexander Kurtakov <akurtako at redhat.com>
Date:   Fri Sep 14 11:27:53 2012 +0300

    Move to xmlrpc version 3.x.

 .gitignore                          |    1 +
 .project                            |   17 ++
 changelog-pre3.x.txt                |  120 +++++++++++++
 sources                             |    2 +-
 xmlrpc-client-addosgimanifest.patch |   20 +++
 xmlrpc-common-addosgimanifest.patch |   19 ++
 xmlrpc-javax-methods.patch          |  128 ++++++++++++++
 xmlrpc-jpp-depmap.xml               |   14 ++
 xmlrpc.spec                         |  320 ++++++++++++++---------------------
 9 files changed, 448 insertions(+), 193 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index a8f88ef..6de88cd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
 xmlrpc-2.0.1-src.tar.gz
+/apache-xmlrpc-3.1.3-src.tar.bz2
diff --git a/.project b/.project
new file mode 100644
index 0000000..d3cdf74
--- /dev/null
+++ b/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>xmlrpc</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.linuxtools.rpm.rpmlint.rpmlintBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.linuxtools.rpm.rpmlint.rpmlintNature</nature>
+	</natures>
+</projectDescription>
diff --git a/changelog-pre3.x.txt b/changelog-pre3.x.txt
new file mode 100644
index 0000000..9cef632
--- /dev/null
+++ b/changelog-pre3.x.txt
@@ -0,0 +1,120 @@
+* Sun Jul 22 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0:2.0.1-13
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
+
+* Tue Jun 05 2012 Stanislav Ochotnicky <sochotnicky at redhat.com> - 0:2.0.1-12
+- Migrate to new tomcat-servlet-api
+
+* Sat Jan 14 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0:2.0.1-11
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
+
+* Mon Feb 07 2011 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0:2.0.1-10
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
+
+* Tue Dec 21 2010 Stanislav Ochotnicky <sochotnicky at redhat.com> - 0:2.0.1-9
+- Require java >= 1:1.6.0
+- Fix classpaths to ensure building of all optional features
+- Remove stale patch
+
+* Thu Dec 16 2010 Stanislav Ochotnicky <sochotnicky at redhat.com> - 0:2.0.1-8
+- Migrate from old servlet api to new one
+
+* Thu Dec  9 2010 Stanislav Ochotnicky <sochotnicky at redhat.com> - 0:2.0.1-7
+- Remove gcj support
+- Make jars/javadocs versionless
+- Add ws-commons-util Requires
+- Use apache-commons-codec
+- Drop unneeded patch for jsse
+
+* Thu Mar 11 2010 Peter Lemenkov <lemenkov at gmail.com> - 0:2.0.1-6.6
+- Added missing requires jpackage-utils
+
+* Mon Jul 27 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0:2.0.1-6.5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
+
+* Thu Feb 26 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0:2.0.1-5.5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
+
+* Thu Jul 10 2008 Tom "spot" Callaway <tcallawa at redhat.com> - 0:2.0.1-4.5
+- drop repotag
+
+* Thu May 29 2008 Tom "spot" Callaway <tcallawa at redhat.com> - 0:2.0.1-4jpp.4
+- fix license tag
+
+* Tue Feb 19 2008 Fedora Release Engineering <rel-eng at fedoraproject.org> - 0:2.0.1-4jpp.3
+- Autorebuild for GCC 4.3
+
+* Tue Mar 27 2007 Matt Wringe <mwringe at redhat.com> 0:2.0.1-3jpp.3
+- Spec file clean up for Fedora Extras Review
+
+* Thu Mar 08 2007 Deepak Bhole <dbhole at 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 at redhat.com> - 0:2.0.1-3jpp.1
+- Merge with latest from JPP.
+
+* Sat Jul 22 2006 Jakub Jelinek <jakub at redhat.com> - 0:2.0.1-1jpp_8.2fc
+- Rebuilt
+
+* Wed Jul 12 2006 Jesse Keating <jkeating at redhat.com> - 0:2.0.1-1jpp_8.1fc
+- rebuild
+
+* Wed Mar  8 2006 Rafael Schloming <rafaels at redhat.com> - 0:2.0.1-1jpp_7fc
+- excluded s390 due to eclipse
+
+* Mon Mar  6 2006 Jeremy Katz <katzj at redhat.com> - 0:2.0.1-1jpp_6fc
+- stop scriptlet spew
+
+* Fri Feb 24 2006 Igor Foox <ifoox at redhat.com> - 0:2.0.1-1jpp_5fc
+- Added post/postun dependency on coreutils.
+
+* Fri Feb 10 2006 Jesse Keating <jkeating at redhat.com> - 0:2.0.1-1jpp_4fc
+- bump again for double-long bug on ppc(64)
+
+* Tue Feb 07 2006 Jesse Keating <jkeating at redhat.com> - 0:2.0.1-1jpp_3fc
+- rebuilt for new gcc4.1 snapshot and glibc changes
+
+* Wed Jan 25 2006 Igor Foox <ifoox at redhat.com>  0:2.0.1-1jpp_2fc
+- ExcludeArch s390x and ppc64
+
+* Wed Jan 18 2006 Andrew Overholt <overholt at redhat.com> 0:2.0.1-1jpp_2fc
+- Comment out JPackage Distribution and Vendor tags
+
+* Wed Jan 18 2006 Jesse Keating <jkeating at redhat.com> 0:2.0.1-1jpp_2fc
+- bump for test
+
+* Wed Jan 18 2006 Igor Foox <ifoox at 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 at jpackage.org> 0:1.2-0.b1.2jpp
+- add jar symlinks
+- remove %%buildroot in %%install
+
+* Tue May 06 2003 David Walluck <david at anti-microsoft.org> 0:1.2-0.b1.1jpp
+- 1.2-b1
+- update for JPackage 1.5
+
+* Mon Mar 18 2002 Guillaume Rousse <guillomovitch at 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 at 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 at users.sourceforge.net> 1.0-2jpp
+- javadoc into javadoc package
+
+* Sat Nov 3 2001 Guillaume Rousse <guillomovitch at users.sourceforge.net> 1.0-1jpp
+- first JPackage release
diff --git a/sources b/sources
index 281ba07..f4bbd2c 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-b88cc15b25d9bd688b1889d2ad234125  xmlrpc-2.0.1-src.tar.gz
+f7817485fa6a6a500c49ec9515d1f3b9  apache-xmlrpc-3.1.3-src.tar.bz2
diff --git a/xmlrpc-client-addosgimanifest.patch b/xmlrpc-client-addosgimanifest.patch
new file mode 100644
index 0000000..2ef2636
--- /dev/null
+++ b/xmlrpc-client-addosgimanifest.patch
@@ -0,0 +1,20 @@
+--- pom.xml.sav	2010-02-06 17:44:57.000000000 +0200
++++ pom.xml	2010-09-29 09:27:06.194857352 +0300
+@@ -48,6 +48,17 @@
+               <Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id>
+               <Implementation-Vendor>Apache Software Foundation</Implementation-Vendor>
+               <Implementation-Version>${project.version}</Implementation-Version>
++              <Bundle-ManifestVersion>2</Bundle-ManifestVersion>
++              <Bundle-Name>%Bundle-Name</Bundle-Name>
++              <Bundle-Localization>plugin</Bundle-Localization>
++              <Bundle-SymbolicName>org.apache.xmlrpc</Bundle-SymbolicName>
++              <Bundle-Version>${project.version}</Bundle-Version>
++              <Require-Bundle>org.apache.xmlrpc.common</Require-Bundle>
++	      <Export-Package>org.apache.xmlrpc.client, org.apache.xmlrpc.client.util</Export-Package>
++	      <Import-Package>javax.xml.bind, javax.xml.namespace, javax.xml.parsers, org.apache.commons.httpclient, org.apache.commons.httpclient.auth, org.apache.commons.httpclient.methods, org.apache.commons.httpclient.params, org.apache.commons.logging, org.apache.ws.commons.serialize, org.apache.ws.commons.util, org.w3c.dom, org.xml.sax, org.xml.sax.helpers</Import-Package>
++	      <Bundle-RequiredExecutionEnvironment>J2SE-1.4, CDC-1.0/Foundation-1.0, J2SE-1.3</Bundle-RequiredExecutionEnvironment>
++	      <Eclipse-BuddyPolicy>dependent</Eclipse-BuddyPolicy>
++	      <Bundle-Vendor>%Bundle-Vendor.0</Bundle-Vendor>
+             </manifestEntries>
+           </archive>
+         </configuration>
diff --git a/xmlrpc-common-addosgimanifest.patch b/xmlrpc-common-addosgimanifest.patch
new file mode 100644
index 0000000..b136bbf
--- /dev/null
+++ b/xmlrpc-common-addosgimanifest.patch
@@ -0,0 +1,19 @@
+--- pom.xml.sav	2010-02-06 17:44:50.000000000 +0200
++++ pom.xml	2010-09-29 09:30:38.857857644 +0300
+@@ -48,6 +48,16 @@
+               <Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id>
+               <Implementation-Vendor>Apache Software Foundation</Implementation-Vendor>
+               <Implementation-Version>${project.version}</Implementation-Version>
++              <Bundle-ManifestVersion>2</Bundle-ManifestVersion>
++              <Bundle-Name>%Bundle-Name</Bundle-Name>
++              <Bundle-Localization>plugin</Bundle-Localization>
++              <Bundle-SymbolicName>org.apache.xmlrpc.common</Bundle-SymbolicName>
++              <Bundle-Version>${project.version}</Bundle-Version>
++              <Export-Package>org.apache.xmlrpc, org.apache.xmlrpc.common, org.apache.xmlrpc.jaxb, org.apache.xmlrpc.parser, org.apache.xmlrpc.serializer, org.apache.xmlrpc.util</Export-Package>
++              <Import-Package>javax.xml.bind, javax.xml.namespace, javax.xml.parsers, org.apache.commons.httpclient, org.apache.commons.httpclient.auth, org.apache.commons.httpclient.methods, org.apache.commons.httpclient.params, org.apache.commons.logging, org.apache.ws.commons.serialize, org.apache.ws.commons.util, org.w3c.dom, org.xml.sax, org.xml.sax.helpers</Import-Package>
++              <Bundle-RequiredExecutionEnvironment>J2SE-1.4, CDC-1.0/Foundation-1.0, J2SE-1.3</Bundle-RequiredExecutionEnvironment>
++              <Eclipse-BuddyPolicy>dependent</Eclipse-BuddyPolicy>
++              <Bundle-Vendor>%Bundle-Vendor.0</Bundle-Vendor>
+             </manifestEntries>
+           </archive>
+         </configuration>
diff --git a/xmlrpc-javax-methods.patch b/xmlrpc-javax-methods.patch
new file mode 100644
index 0000000..2a99d9f
--- /dev/null
+++ b/xmlrpc-javax-methods.patch
@@ -0,0 +1,128 @@
+diff -up ./server/src/main/java/org/apache/xmlrpc/webserver/HttpServletRequestImpl.java.fix ./server/src/main/java/org/apache/xmlrpc/webserver/HttpServletRequestImpl.java
+--- ./server/src/main/java/org/apache/xmlrpc/webserver/HttpServletRequestImpl.java.fix	2012-07-24 14:49:54.000000000 -0400
++++ ./server/src/main/java/org/apache/xmlrpc/webserver/HttpServletRequestImpl.java	2012-07-24 18:20:17.000000000 -0400
+@@ -31,6 +31,7 @@ import java.net.URLDecoder;
+ import java.security.Principal;
+ import java.util.ArrayList;
+ import java.util.Collections;
++import java.util.Collection;
+ import java.util.Enumeration;
+ import java.util.HashMap;
+ import java.util.Iterator;
+@@ -41,8 +42,15 @@ import java.util.StringTokenizer;
+ 
+ import javax.servlet.RequestDispatcher;
+ import javax.servlet.ServletInputStream;
++import javax.servlet.DispatcherType;
++import javax.servlet.AsyncContext;
++import javax.servlet.ServletContext;
++import javax.servlet.ServletRequest;
++import javax.servlet.ServletResponse;
+ import javax.servlet.http.Cookie;
++import javax.servlet.http.Part;
+ import javax.servlet.http.HttpServletRequest;
++import javax.servlet.http.HttpServletResponse;
+ import javax.servlet.http.HttpSession;
+ 
+ import org.apache.xmlrpc.common.XmlRpcStreamConfig;
+@@ -66,6 +74,7 @@ public class HttpServletRequestImpl impl
+ 	private String queryString;
+ 	private String httpVersion;
+ 	private final Map headers = new HashMap();
++	private final Map parts = new HashMap();
+ 	private final Map attributes = new HashMap();
+ 	private Map parameters;
+ 	private String characterEncoding;
+@@ -227,6 +236,12 @@ public class HttpServletRequestImpl impl
+ 		return Collections.enumeration(list);
+ 	}
+ 
++	public Part getPart(String name) { throw new IllegalStateException("Not implemented"); }
++
++	public Collection getParts() { throw new IllegalStateException("Not implemented"); }
++
++	public boolean authenticate (HttpServletResponse response) { throw new IllegalStateException("Not implemented"); }
++
+ 	public int getIntHeader(String pHeader) {
+ 		String s = getHeader(pHeader);
+ 		return s == null ? -1 : Integer.parseInt(s);
+@@ -242,6 +257,10 @@ public class HttpServletRequestImpl impl
+ 
+ 	public String getRemoteUser() { throw new IllegalStateException("Not implemented"); }
+ 
++	public void login(String username, String password) { throw new IllegalStateException("Not implemented"); }
++
++	public void logout() { throw new IllegalStateException("Not implemented"); }
++
+ 	public String getRequestURI() { return uri; }
+ 
+ 	public StringBuffer getRequestURL() {
+@@ -280,6 +299,20 @@ public class HttpServletRequestImpl impl
+ 		return sb;
+ 	}
+ 
++	public AsyncContext getAsyncContext() { throw new IllegalStateException("Not implemented"); }
++
++	public boolean isAsyncSupported() { return false; }
++
++	public boolean isAsyncStarted() { return false; }
++
++	public ServletContext getServletContext() { throw new IllegalStateException("Not implemented"); }
++
++	public AsyncContext startAsync(ServletRequest req, ServletResponse resp) { throw new IllegalStateException("Not implemented"); }
++
++	public AsyncContext startAsync() { throw new IllegalStateException("Not implemented"); }
++
++	public DispatcherType getDispatcherType() { throw new IllegalStateException("Not implemented"); }
++
+ 	public String getRequestedSessionId() { throw new IllegalStateException("Not implemented"); }
+ 
+ 	public String getServletPath() { return uri; }
+diff -up ./server/src/main/java/org/apache/xmlrpc/webserver/HttpServletResponseImpl.java.fix ./server/src/main/java/org/apache/xmlrpc/webserver/HttpServletResponseImpl.java
+--- ./server/src/main/java/org/apache/xmlrpc/webserver/HttpServletResponseImpl.java.fix	2012-07-24 14:49:46.000000000 -0400
++++ ./server/src/main/java/org/apache/xmlrpc/webserver/HttpServletResponseImpl.java	2012-07-24 15:22:31.000000000 -0400
+@@ -29,6 +29,8 @@ import java.util.Iterator;
+ import java.util.List;
+ import java.util.Locale;
+ import java.util.Map;
++import java.util.Collection;
++import java.util.Collections;
+ import java.util.StringTokenizer;
+ 
+ import javax.servlet.ServletOutputStream;
+@@ -84,7 +86,7 @@ public class HttpServletResponseImpl imp
+ 		}
+ 	}
+ 
+-	private String getHeader(String pHeader) {
++	public String getHeader(String pHeader) {
+ 		String key = pHeader.toLowerCase();
+ 		Object o = headers.get(key);
+ 		if (o == null) {
+@@ -101,6 +103,26 @@ public class HttpServletResponseImpl imp
+ 		}
+ 	}
+ 
++	public Collection getHeaderNames() {
++		return headers.keySet();
++	}
++
++	public Collection getHeaders(String pHeader) {
++		String key = pHeader.toLowerCase();
++		Object o = headers.get(key);
++		List list;
++		if (o instanceof List) {
++		list = (List) o;
++		} else {
++			list = Collections.singletonList(o);
++		}
++		return list;
++	}
++
++	public int getStatus() {
++		return status;
++	}
++
+ 	public void addIntHeader(String pHeader, int pValue) {
+ 		addHeader(pHeader, Integer.toString(pValue));
+ 	}
diff --git a/xmlrpc-jpp-depmap.xml b/xmlrpc-jpp-depmap.xml
new file mode 100644
index 0000000..d622c4b
--- /dev/null
+++ b/xmlrpc-jpp-depmap.xml
@@ -0,0 +1,14 @@
+<dependencies>
+  <dependency>
+	<maven>
+	  <groupId>jaxme</groupId>
+	  <artifactId>jaxmeapi</artifactId>
+	  <version>0.5.1</version>
+	</maven>
+	<jpp>
+	  <groupId>JPP</groupId>
+	  <artifactId>jaxme/jaxmeapi</artifactId>
+	  <version>0.5.1</version>
+	</jpp>
+  </dependency>
+</dependencies>
diff --git a/xmlrpc.spec b/xmlrpc.spec
index 7e9e325..568dcc0 100644
--- a/xmlrpc.spec
+++ b/xmlrpc.spec
@@ -1,62 +1,36 @@
-# Copyright (c) 2000-2005, JPackage Project
-# 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.
-#
-
 Name:       xmlrpc
-Version:    2.0.1
-Release:    13%{?dist}
-Epoch:      0
+Version:    3.1.3
+Release:    1%{?dist}
 Summary:    Java XML-RPC implementation
 License:    ASL 2.0
-Group:      Development/Java
-Url:        http://xml.apache.org/%{name}/
-Source0:    http://www.apache.org/dist/ws/xmlrpc/sources/xmlrpc-2.0.1-src.tar.gz
-
-BuildRequires:  java >= 1:1.6.0
-BuildRequires:  ant
+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
+# Add OSGi MANIFEST information
+Patch0:     %{name}-client-addosgimanifest.patch
+Patch1:     %{name}-common-addosgimanifest.patch
+Patch2:     %{name}-javax-methods.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-assembly-plugin
+BuildRequires:  maven-source-plugin
+BuildRequires:  maven-site-plugin
+BuildRequires:  ws-jaxme
+BuildRequires:  ws-commons-util
 BuildRequires:  jpackage-utils >= 0:1.6
-BuildRequires:  servlet3
+BuildRequires:  tomcat-servlet-3.0-api
 BuildRequires:  junit
 BuildRequires:  jakarta-commons-httpclient
-BuildRequires:  apache-commons-codec
-
-Requires:       java >= 1:1.6.0
-Requires:       jpackage-utils >= 0:1.6
-Requires:       servlet3
-Requires:       junit
-Requires:       jakarta-commons-httpclient
-Requires:       apache-commons-codec
-Requires:       jpackage-utils
-Requires:       ws-commons-util
-
-Buildarch:    noarch
+BuildRequires:  apache-commons-logging
 
+BuildArch:    noarch
 
 %description
 Apache XML-RPC is a Java implementation of XML-RPC, a popular protocol
@@ -67,162 +41,124 @@ statements in your code from helma.xmlrpc.* to org.apache.xmlrpc.*.
 
 %package javadoc
 Summary:    Javadoc for %{name}
-Group:      Development/Java
-Requires:   jpackage-utils
+Group:      Documentation
 
 %description javadoc
 Javadoc for %{name}.
 
+%package common
+Summary:    Common classes for XML-RPC client and server implementations
+Group:      Development/Libraries
+# Provide xmlrpc is not here because it would be useless due to different jar names
+Obsoletes:  %{name} < 3.1.3
+Obsoletes:  %{name}3-common < 3.1.3-13
+Provides:   %{name}3-common = 3.1.3-13
+Requires:   ws-jaxme
+Requires:   ws-commons-util
+Requires:   jpackage-utils >= 0:1.6
+Requires:   apache-commons-logging
+
+%description common
+%{summary}.
+
+%package client
+Summary:    XML-RPC client implementation
+Group:      Development/Libraries
+Requires:   %{name}-common
+Requires:   jakarta-commons-httpclient
+Obsoletes:  %{name}3-client < 3.1.3-13
+Provides:  %{name}3-client = 3.1.3-13
+
+%description client
+%{summary}.
+
+%package server
+Summary:    XML-RPC server implementation
+Group:      Development/Libraries
+Requires:   %{name}-client
+Requires:   junit
+Requires:   tomcat-servlet-3.0-api
+Obsoletes:  %{name}3-server < 3.1.3-13
+Provides:  %{name}3-server = 3.1.3-13
+
+%description server
+%{summary}.
+
 %prep
-%setup -q -n %{name}-%{version}
-# remove all binary libs
-find . -name "*.jar" -exec rm -f {} \;
+%setup -q -n apache-%{name}-%{version}-src
+%patch2 -b .sav
+pushd client
+%patch0 -b .sav
+popd
+pushd common
+%patch1 -b .sav
+popd
 
+sed -i 's/\r//' LICENSE.txt
 
 %build
-export CLASSPATH=%(build-classpath commons-httpclient apache-commons-codec tomcat-servlet-api junit 2>/dev/null)
-ant -Dbuild.dir=./bin -Dbuild.dest=./bin -Dsrc.dir=./src -Dfinal.name=%{name}-%{version} -Djavadoc.destdir=./docs/apidocs -Dhave.deps=true jar
-ant -Dbuild.dir=./bin -Dbuild.dest=./bin -Dsrc.dir=./src -Dfinal.name=%{name}-%{version} -Djavadoc.destdir=./docs/apidocs -Dhave.deps=true javadocs
+# 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 bin/%{name}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}.jar
-install -m 644 bin/%{name}-%{version}-applet.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-applet.jar
+install -m 644 client/target/%{name}-client-%{version}.jar \
+  $RPM_BUILD_ROOT%{_javadir}/%{name}-client.jar
+install -m 644 server/target/%{name}-server-%{version}.jar \
+  $RPM_BUILD_ROOT%{_javadir}/%{name}-server.jar
+install -m 644 common/target/%{name}-common-%{version}.jar \
+  $RPM_BUILD_ROOT%{_javadir}/%{name}-common.jar
+
+#compat symlinks remove in F-20
+pushd $RPM_BUILD_ROOT%{_javadir}
+ln -s %{name}-client.jar %{name}3-client.jar
+ln -s %{name}-server.jar %{name}3-server.jar
+ln -s %{name}-common.jar %{name}3-common.jar
+popd
+
+# 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_maven_depmap JPP-%{name}.pom
+%add_maven_depmap JPP-%{name}-common.pom %{name}-common.jar
+%add_maven_depmap JPP-%{name}-client.pom %{name}-client.jar
+%add_maven_depmap JPP-%{name}-server.pom %{name}-server.jar
 
 # javadoc
 install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}
-cp -pr docs/apidocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
-
-
-%files
-%doc LICENSE.txt README.txt
-%{_javadir}/*
-
+cp -pr target/site/apidocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
 
 %files javadoc
-%{_javadocdir}/%{name}
+%doc LICENSE.txt NOTICE.txt
+%{_javadocdir}/*
+
+%files common
+%doc LICENSE.txt NOTICE.txt
+%{_mavenpomdir}/JPP-%{name}.pom
+%{_mavenpomdir}/JPP-%{name}-common.pom
+%{_mavendepmapfragdir}/%{name}
+%{_javadir}/%{name}-common.jar
+%{_javadir}/%{name}3-common.jar
+
+%files client
+%{_mavenpomdir}/JPP-%{name}-client.pom
+%{_javadir}/%{name}-client.jar
+%{_javadir}/%{name}3-client.jar
+
+%files server
+%{_mavenpomdir}/JPP-%{name}-server.pom
+%{_javadir}/%{name}-server.jar
+%{_javadir}/%{name}3-server.jar
 
 %changelog
-* Sun Jul 22 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0:2.0.1-13
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
-
-* Tue Jun 05 2012 Stanislav Ochotnicky <sochotnicky at redhat.com> - 0:2.0.1-12
-- Migrate to new tomcat-servlet-api
-
-* Sat Jan 14 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0:2.0.1-11
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
-
-* Mon Feb 07 2011 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0:2.0.1-10
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
-
-* Tue Dec 21 2010 Stanislav Ochotnicky <sochotnicky at redhat.com> - 0:2.0.1-9
-- Require java >= 1:1.6.0
-- Fix classpaths to ensure building of all optional features
-- Remove stale patch
-
-* Thu Dec 16 2010 Stanislav Ochotnicky <sochotnicky at redhat.com> - 0:2.0.1-8
-- Migrate from old servlet api to new one
-
-* Thu Dec  9 2010 Stanislav Ochotnicky <sochotnicky at redhat.com> - 0:2.0.1-7
-- Remove gcj support
-- Make jars/javadocs versionless
-- Add ws-commons-util Requires
-- Use apache-commons-codec
-- Drop unneeded patch for jsse
-
-* Thu Mar 11 2010 Peter Lemenkov <lemenkov at gmail.com> - 0:2.0.1-6.6
-- Added missing requires jpackage-utils
-
-* Mon Jul 27 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0:2.0.1-6.5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
-
-* Thu Feb 26 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0:2.0.1-5.5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
-
-* Thu Jul 10 2008 Tom "spot" Callaway <tcallawa at redhat.com> - 0:2.0.1-4.5
-- drop repotag
-
-* Thu May 29 2008 Tom "spot" Callaway <tcallawa at redhat.com> - 0:2.0.1-4jpp.4
-- fix license tag
-
-* Tue Feb 19 2008 Fedora Release Engineering <rel-eng at fedoraproject.org> - 0:2.0.1-4jpp.3
-- Autorebuild for GCC 4.3
-
-* Tue Mar 27 2007 Matt Wringe <mwringe at redhat.com> 0:2.0.1-3jpp.3
-- Spec file clean up for Fedora Extras Review
-
-* Thu Mar 08 2007 Deepak Bhole <dbhole at 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 at redhat.com> - 0:2.0.1-3jpp.1
-- Merge with latest from JPP.
-
-* Sat Jul 22 2006 Jakub Jelinek <jakub at redhat.com> - 0:2.0.1-1jpp_8.2fc
-- Rebuilt
-
-* Wed Jul 12 2006 Jesse Keating <jkeating at redhat.com> - 0:2.0.1-1jpp_8.1fc
-- rebuild
-
-* Wed Mar  8 2006 Rafael Schloming <rafaels at redhat.com> - 0:2.0.1-1jpp_7fc
-- excluded s390 due to eclipse
-
-* Mon Mar  6 2006 Jeremy Katz <katzj at redhat.com> - 0:2.0.1-1jpp_6fc
-- stop scriptlet spew
-
-* Fri Feb 24 2006 Igor Foox <ifoox at redhat.com> - 0:2.0.1-1jpp_5fc
-- Added post/postun dependency on coreutils.
-
-* Fri Feb 10 2006 Jesse Keating <jkeating at redhat.com> - 0:2.0.1-1jpp_4fc
-- bump again for double-long bug on ppc(64)
-
-* Tue Feb 07 2006 Jesse Keating <jkeating at redhat.com> - 0:2.0.1-1jpp_3fc
-- rebuilt for new gcc4.1 snapshot and glibc changes
-
-* Wed Jan 25 2006 Igor Foox <ifoox at redhat.com>  0:2.0.1-1jpp_2fc
-- ExcludeArch s390x and ppc64
-
-* Wed Jan 18 2006 Andrew Overholt <overholt at redhat.com> 0:2.0.1-1jpp_2fc
-- Comment out JPackage Distribution and Vendor tags
-
-* Wed Jan 18 2006 Jesse Keating <jkeating at redhat.com> 0:2.0.1-1jpp_2fc
-- bump for test
-
-* Wed Jan 18 2006 Igor Foox <ifoox at 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 at jpackage.org> 0:1.2-0.b1.2jpp
-- add jar symlinks
-- remove %%buildroot in %%install
-
-* Tue May 06 2003 David Walluck <david at anti-microsoft.org> 0:1.2-0.b1.1jpp
-- 1.2-b1
-- update for JPackage 1.5
-
-* Mon Mar 18 2002 Guillaume Rousse <guillomovitch at 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 at 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 at users.sourceforge.net> 1.0-2jpp
-- javadoc into javadoc package
-
-* Sat Nov 3 2001 Guillaume Rousse <guillomovitch at users.sourceforge.net> 1.0-1jpp
-- first JPackage release
+* Fri Sep 14 2012 Alexander Kurtakov <akurtako at redhat.com> 3.1.3-1
+- First release of version 3.x package


More information about the scm-commits mailing list