[avalon-framework] Latest version

Stanislav Ochotnicky sochotni at fedoraproject.org
Thu Apr 21 09:44:42 UTC 2011


commit bff954d0afff2a25661c2cb229c22fab683743b9
Author: Stanislav Ochotnicky <sochotnicky at redhat.com>
Date:   Thu Apr 21 11:30:35 2011 +0200

    Latest version
    
    - Split into two jars, provide backward compatible symlink
    - Cleanups according to new guidelines

 .gitignore                      |    2 +
 avalon-framework-api-4.3.pom    |   14 ++++
 avalon-framework-impl-4.3.pom   |   59 +++++++++++++++
 avalon-framework-impl-pom.patch |   27 +++++++
 avalon-framework-target.patch   |   30 --------
 avalon-framework.spec           |  153 ++++++++++++++++++++++++++-------------
 sources                         |    3 +-
 7 files changed, 206 insertions(+), 82 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 7e7ae1c..32ed12f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,3 +2,5 @@ Avalon-4.1.4-src.tar.gz
 Avalon-4.1.4
 noarch
 *.src.rpm
+/avalon-framework-api-4.3-src.tar.gz
+/avalon-framework-impl-4.3-src.tar.gz
diff --git a/avalon-framework-api-4.3.pom b/avalon-framework-api-4.3.pom
new file mode 100644
index 0000000..9757b61
--- /dev/null
+++ b/avalon-framework-api-4.3.pom
@@ -0,0 +1,14 @@
+<project>
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>avalon-framework</groupId>
+  <artifactId>avalon-framework-api</artifactId>
+  <name>Avalon Framework API</name>
+  <version>4.3</version>
+  <dependencies>
+    <dependency>
+      <groupId>avalon-logkit</groupId>
+      <artifactId>avalon-logkit</artifactId>
+      <version>2.1</version>
+    </dependency>
+  </dependencies>
+</project>
\ No newline at end of file
diff --git a/avalon-framework-impl-4.3.pom b/avalon-framework-impl-4.3.pom
new file mode 100644
index 0000000..0d90bc3
--- /dev/null
+++ b/avalon-framework-impl-4.3.pom
@@ -0,0 +1,59 @@
+<project>
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>avalon-framework</groupId>
+  <artifactId>avalon-framework-impl</artifactId>
+  <name>Avalon Framework Implementation</name>
+  <version>4.3</version>
+  <dependencies>
+    <dependency>
+      <groupId>avalon-framework</groupId>
+      <artifactId>avalon-framework-api</artifactId>
+      <version>4.3</version>
+    </dependency>
+    <dependency>
+      <groupId>xml-apis</groupId>
+      <artifactId>xml-apis</artifactId>
+      <version>2.0.2</version>
+    </dependency>
+    <dependency>
+      <groupId>xml-apis</groupId>
+      <artifactId>xmlParserAPIs</artifactId>
+      <version>2.0.2</version>
+    </dependency>
+    <dependency>
+      <groupId>xerces</groupId>
+      <artifactId>xerces</artifactId>
+      <version>2.4.0</version>
+    </dependency>
+    <dependency>
+      <groupId>xalan</groupId>
+      <artifactId>xalan</artifactId>
+      <version>2.6.0</version>
+    </dependency>
+    <dependency>
+      <groupId>log4j</groupId>
+      <artifactId>log4j</artifactId>
+      <version>1.2.11</version>
+    </dependency>
+    <dependency>
+      <groupId>commons-logging</groupId>
+      <artifactId>commons-logging</artifactId>
+      <version>1.0.4</version>
+    </dependency>
+    <dependency>
+      <groupId>avalon-logkit</groupId>
+      <artifactId>avalon-logkit</artifactId>
+      <version>2.1</version>
+    </dependency>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.1</version>
+    </dependency>
+    <dependency>
+      <groupId>jmock</groupId>
+      <artifactId>jmock</artifactId>
+      <version>1.0.1</version>
+    </dependency>
+  </dependencies>
+</project>
\ No newline at end of file
diff --git a/avalon-framework-impl-pom.patch b/avalon-framework-impl-pom.patch
new file mode 100644
index 0000000..a58d65f
--- /dev/null
+++ b/avalon-framework-impl-pom.patch
@@ -0,0 +1,27 @@
+--- avalon-framework-impl-4.3.pom	2011-04-20 16:13:30.000000000 +0200
++++ avalon-framework-impl-4.3.pom.new	2011-04-21 11:37:28.348380463 +0200
+@@ -16,11 +16,6 @@
+       <version>2.0.2</version>
+     </dependency>
+     <dependency>
+-      <groupId>xml-apis</groupId>
+-      <artifactId>xmlParserAPIs</artifactId>
+-      <version>2.0.2</version>
+-    </dependency>
+-    <dependency>
+       <groupId>xerces</groupId>
+       <artifactId>xerces</artifactId>
+       <version>2.4.0</version>
+@@ -50,10 +45,5 @@
+       <artifactId>junit</artifactId>
+       <version>3.8.1</version>
+     </dependency>
+-    <dependency>
+-      <groupId>jmock</groupId>
+-      <artifactId>jmock</artifactId>
+-      <version>1.0.1</version>
+-    </dependency>
+   </dependencies>
+-</project>
+\ No newline at end of file
++</project>
diff --git a/avalon-framework.spec b/avalon-framework.spec
index 6889f69..fbb6fa0 100644
--- a/avalon-framework.spec
+++ b/avalon-framework.spec
@@ -32,23 +32,45 @@
 %global short_Name    Avalon
 
 Name:        avalon-%{short_name}
-Version:     4.1.4
-Release:     8%{?dist}
+Version:     4.3
+Release:     1%{?dist}
 Epoch:       0
 Summary:     Java components interfaces
-License:     ASL 1.1
+License:     ASL 2.0
 URL:         http://avalon.apache.org/%{short_name}/
 Group:       Development/Libraries
-Source0:     http://archive.apache.org/dist/avalon/avalon-framework/v4.1.4/Avalon-4.1.4-src.tar.gz
-Patch1:        %{name}-target.patch
-Requires:    xml-commons-apis >= 1.3
+Source0:     http://archive.apache.org/dist/excalibur/avalon-framework/source/%{name}-api-%{version}-src.tar.gz
+Source1:     http://archive.apache.org/dist/excalibur/avalon-framework/source/%{name}-impl-%{version}-src.tar.gz
+
+# pom files are not provided in tarballs so get them from external site
+Source2:     http://repo1.maven.org/maven2/avalon-framework/%{name}-api/%{version}/%{name}-api-%{version}.pom
+Source3:     http://repo1.maven.org/maven2/avalon-framework/%{name}-impl/%{version}/%{name}-impl-%{version}.pom
+
+# remove jmock from dependencies because we don't have it
+Patch0:     %{name}-impl-pom.patch
+
+Requires:    apache-commons-logging
+Requires:    avalon-logkit
+Requires:    log4j
 Requires:    xalan-j2
+Requires:    xml-commons-apis
+
+Requires(post):    jpackage-utils
+Requires(postun):  jpackage-utils
+
 BuildRequires:    ant
-BuildRequires:    junit
+BuildRequires:	  ant-junit
+BuildRequires:	  apache-commons-logging
 BuildRequires:    avalon-logkit
-BuildRequires:    xml-commons-apis >= 1.3
-BuildRequires:    jpackage-utils >= 0:1.5
-BuildArch:    noarch
+BuildRequires:    jpackage-utils
+BuildRequires:    junit
+BuildRequires:	  log4j
+BuildRequires:    xml-commons-apis
+
+
+BuildArch:    	  noarch
+
+Obsoletes:    %{name}-manual <= 0:4.1.4
 
 %description
 The Avalon framework consists of interfaces that define relationships
@@ -59,65 +81,94 @@ What that means is that we define the central interface Component. We
 also define the relationship (contract) a component has with peers,
 ancestors and children.
 
-%package manual
-Summary:      Manual for %{name}
-Group:        Documentation
-
-%description manual
-Documentation for %{name}.
-
 %package javadoc
-Summary:      Javadoc for %{name}
+Summary:      API documentation %{name}
 Group:        Documentation
+Requires:     jpackage-utils
 
 %description javadoc
-Javadoc for %{name}.
+%{summary}.
 
 %prep
-%setup -q -n %{short_Name}-%{version}
-%patch1 -p1
-# remove all binary libs
-find . -name "*.jar" -exec rm -f {} \;
-
-# Fix for wrong-file-end-of-line-encoding problem
-for i in `find docs -iname "*.html"`; do sed -i 's/\r//' $i; done
-for i in `find docs -iname "*.css"`; do sed -i 's/\r//' $i; done
-for i in `find docs -iname "*.xml"`; do sed -i 's/\r//' $i; done
-sed -i 's/\r//' README.txt
-sed -i 's/\r//' LICENSE.txt
-sed -i 's/\r//' KEYS
-sed -i 's/\r//' docs/api/package-list
+%setup -q -n %{name}-api-%{version}
+tar xvf %{SOURCE1}
+
+cp %{SOURCE2} .
+
+pushd %{name}-impl-%{version}/
+cp %{SOURCE3} .
+%patch0
+popd
 
 %build
-export CLASSPATH=%(build-classpath avalon-logkit junit log4j junit)
-ant all
-ant -Dfailonerror=false javadocs
+export CLASSPATH=%(build-classpath avalon-logkit junit commons-logging log4j)
+export CLASSPATH="$CLASSPATH:../target/%{name}-api-%{version}.jar"
+ant jar test javadoc
+
+# build implementation now
+pushd %{name}-impl-%{version}
+# tests removed because we don't have jmock
+rm -rf src/test/*
+ant jar javadoc
+popd
 
 %install
-rm -rf $RPM_BUILD_ROOT
-install -d -m 755 $RPM_BUILD_ROOT%{_javadir}
-install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
-install -m 644 target/lib/%{name}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}.jar
-cp -pr target/javadocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
+install -d -m 755 $RPM_BUILD_ROOT%{_javadir}/
+install -d -m 755 $RPM_BUILD_ROOT/%{_mavenpomdir}
 
-ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name}
+install -m 644 target/%{name}-api-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-api.jar
+mkdir -p $RPM_BUILD_ROOT%{_javadocdir}/%{name}/%{name}-api
 
+# pom file
+install -pm 644 %{name}-api-%{version}.pom $RPM_BUILD_ROOT/%{_mavenpomdir}/JPP-%{name}-api.pom
+%add_to_maven_depmap %{name} %{name}-api %{version} JPP %{name}-api
 
-%files
-%defattr(-,root,root,-)
-%doc KEYS LICENSE.txt README.txt
-%{_javadir}/*.jar
+# javadocs
+cp -pr dist/docs/api/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}/%{name}-api/
+
+
+pushd %{name}-impl-%{version}
+install -m 644 target/%{name}-impl-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-impl.jar
+ln -sf %{_javadir}/%{name}-impl.jar ${RPM_BUILD_ROOT}%{_javadir}/%{name}.jar
+
+# pom file
+install -pm 644 %{name}-impl-%{version}.pom $RPM_BUILD_ROOT/%{_mavenpomdir}/JPP-%{name}-impl.pom
+%add_to_maven_depmap %{name} %{name}-impl %{version} JPP %{name}-impl
+%add_to_maven_depmap %{name} %{name} %{version} JPP %{name}-impl
 
-%files manual
+# javadocs
+mkdir -p $RPM_BUILD_ROOT%{_javadocdir}/%{name}/%{name}-impl
+cp -pr dist/docs/api/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}/%{name}-impl/
+popd
+
+%post
+%update_maven_depmap
+
+%postun
+%update_maven_depmap
+
+
+%files
 %defattr(-,root,root,-)
-%doc docs/*
+%doc LICENSE.txt NOTICE.txt
+%{_mavenpomdir}/JPP-%{name}-api.pom
+%{_mavenpomdir}/JPP-%{name}-impl.pom
+%{_javadir}/%{name}-api.jar
+%{_javadir}/%{name}-impl.jar
+%{_javadir}/%{name}.jar
+%{_mavendepmapfragdir}/%{name}
 
 %files javadoc
 %defattr(-,root,root,-)
-%{_javadocdir}/%{name}-%{version}
+%doc LICENSE.txt NOTICE.txt
 %{_javadocdir}/%{name}
 
 %changelog
+* Wed Apr 20 2011 Stanislav Ochotnicky <sochotnicky at redhat.com> - 0:4.3-1
+- Latest version
+- Split into two jars, provide backward compatible symlink
+- Cleanups according to new guidelines
+
 * Mon Feb 07 2011 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0:4.1.4-8
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
 
@@ -189,15 +240,15 @@ ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name}
 - For jpackage-utils 1.5
 - Forrest is not used right now
 
-* Tue May 07 2002 Guillaume Rousse <guillomovitch at users.sourceforge.net> 4.1.2-3jpp 
+* Tue May 07 2002 Guillaume Rousse <guillomovitch at users.sourceforge.net> 4.1.2-3jpp
 - hardcoded distribution and vendor tag
 - group tag again
 
-* Thu May 2 2002 Guillaume Rousse <guillomovitch at users.sourceforge.net> 4.1.2-2jpp 
+* Thu May 2 2002 Guillaume Rousse <guillomovitch at users.sourceforge.net> 4.1.2-2jpp
 - distribution tag
 - group tag
 
-* Sun Feb 03 2002 Guillaume Rousse <guillomovitch at users.sourceforge.net> 4.1.2-1jpp 
+* Sun Feb 03 2002 Guillaume Rousse <guillomovitch at users.sourceforge.net> 4.1.2-1jpp
 - 4.1.2
 - section macro
 
diff --git a/sources b/sources
index e59ede5..0dcac3f 100644
--- a/sources
+++ b/sources
@@ -1 +1,2 @@
-2bcef3a218b6ee81acc4dc87af65d8df  Avalon-4.1.4-src.tar.gz
+d4cffb4ba1d07bdc517ac6e322636495  avalon-framework-api-4.3-src.tar.gz
+62499f9b32ac4d722a46a4f2cfbbf0d8  avalon-framework-impl-4.3-src.tar.gz


More information about the scm-commits mailing list