[batik] Add maven metadata and pom files
Stanislav Ochotnicky
sochotni at fedoraproject.org
Tue May 3 11:24:25 UTC 2011
commit beae5890c056b2bf0c2498485ca67d36e2cdbacf
Author: Stanislav Ochotnicky <sochotnicky at redhat.com>
Date: Tue May 3 11:18:43 2011 +0200
Add maven metadata and pom files
- Versionless jars & javadocs
batik-script-remove-js.patch | 14 ++++
batik.spec | 154 ++++++++++++++++++++++++++++++-----------
2 files changed, 126 insertions(+), 42 deletions(-)
---
diff --git a/batik-script-remove-js.patch b/batik-script-remove-js.patch
new file mode 100644
index 0000000..3f582cc
--- /dev/null
+++ b/batik-script-remove-js.patch
@@ -0,0 +1,14 @@
+--- batik-script.pom 2011-05-03 12:57:35.428208738 +0200
++++ batik-script.pom.new 2011-05-03 13:08:54.565452184 +0200
+@@ -98,11 +98,6 @@
+ <version>1.7</version>
+ </dependency>
+ <dependency>
+- <groupId>org.apache.xmlgraphics</groupId>
+- <artifactId>batik-js</artifactId>
+- <version>1.7</version>
+- </dependency>
+- <dependency>
+ <groupId>xml-apis</groupId>
+ <artifactId>xml-apis</artifactId>
+ <version>1.3.04</version>
diff --git a/batik.spec b/batik.spec
index e0e58b3..8445b67 100644
--- a/batik.spec
+++ b/batik.spec
@@ -1,6 +1,6 @@
Name: batik
Version: 1.7
-Release: 10%{?dist}
+Release: 11%{?dist}
Summary: Scalable Vector Graphics for Java
License: ASL 2.0
URL: http://xml.apache.org/batik/
@@ -13,13 +13,16 @@ Source3: %{name}.ttf2svg.script
Source4: %{name}.rasterizer.script
Source5: %{name}.slideshow.script
Source6: %{name}-squiggle.desktop
-Source7: %{name}-repack.sh
+Source7: %{name}-repack.sh
Source8: %{name}-orbit-manifests.tar.gz
+
+
Patch0: %{name}-manifests.patch
Patch1: %{name}-policy.patch
+# remove dependency on bundled rhino from pom
+Patch2: %{name}-script-remove-js.patch
Requires: rhino >= 1.5
-BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch: noarch
BuildRequires: java-devel >= 1:1.6.0
@@ -42,6 +45,10 @@ Requires: java >= 1:1.6.0
Requires: rhino >= 1.5
Requires: xalan-j2
Requires: xml-commons-apis >= 1.3.04
+Requires: jpackage-utils
+Requires(post): jpackage-utils
+Requires(postun): jpackage-utils
+
%description
@@ -135,6 +142,14 @@ pushd orbit
tar xzf %{SOURCE8}
popd
+# create poms from templates
+for module in anim awt-util bridge codec css dom ext extension gui-util \
+ gvt parser script svg-dom svggen swing transcoder util xml \
+ rasterizer slideshow squiggle svgpp ttf2svg; do
+ sed "s:@version@:%{version}:g" sources/%{name}-$module.pom.template \
+ > %{name}-$module.pom
+done
+%patch2
%build
export CLASSPATH=$(build-classpath xml-commons-apis xml-commons-apis-ext js rhino xalan-j2 xalan-j2-serializer xerces-j2)
@@ -155,8 +170,6 @@ ant javadoc
%install
-rm -rf $RPM_BUILD_ROOT
-
# inject OSGi manifests
mkdir -p META-INF
cp -p orbit/batik-bridge-MANIFEST.MF META-INF/MANIFEST.MF
@@ -199,34 +212,49 @@ cp -p orbit/batik-xml-MANIFEST.MF META-INF/MANIFEST.MF
touch META-INF/MANIFEST.MF
zip -u %{name}-%{version}/lib/batik-xml.jar META-INF/MANIFEST.MF
+
# jars
mkdir -p $RPM_BUILD_ROOT%{_javadir}
-mkdir -p $RPM_BUILD_ROOT%{_javadir}/batik
+mkdir -p $RPM_BUILD_ROOT%{_javadir}/%{name}
pushd %{name}-%{version}/lib
for jarname in $(find batik-*.jar); do
- cp -p ${jarname} \
- $RPM_BUILD_ROOT%{_javadir}/batik/`echo ${jarname}|sed "s|.jar||g"`-%{version}.jar
+ cp -p ${jarname} $RPM_BUILD_ROOT%{_javadir}/%{name}/
done
+
+rm -fr $RPM_BUILD_ROOT%{_javadir}/%{name}/%{name}-all.jar
+cp -p %{name}-all.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-all.jar
+
popd
-rm -fr $RPM_BUILD_ROOT%{_javadir}/batik/%{name}-all-%{version}.jar
-cp -p %{name}-%{version}/lib/%{name}-all.jar \
- $RPM_BUILD_ROOT%{_javadir}/%{name}-all-%{version}.jar
+
cp -p %{name}-%{version}/batik-rasterizer.jar \
- %{name}-%{version}/batik-slideshow.jar \
- %{name}-%{version}/batik-squiggle.jar \
- %{name}-%{version}/batik-svgpp.jar \
- %{name}-%{version}/batik-ttf2svg.jar \
+ %{name}-%{version}/%{name}-slideshow.jar \
+ %{name}-%{version}/%{name}-squiggle.jar \
+ %{name}-%{version}/%{name}-svgpp.jar \
+ %{name}-%{version}/%{name}-ttf2svg.jar \
$RPM_BUILD_ROOT%{_javadir}
-pushd $RPM_BUILD_ROOT%{_javadir}
- for jar in *-%{version}*;
- do ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`;
- done
-popd
-pushd $RPM_BUILD_ROOT%{_javadir}/batik
- for jar in *-%{version}*.jar; do
- ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`;
- done
-popd
+
+# poms and depmaps for subpackages are different (no batik subdir)
+install -d -m 755 $RPM_BUILD_ROOT/%{_mavenpomdir}
+for module in rasterizer slideshow squiggle svgpp ttf2svg; do
+ install -pm 644 %{name}-$module.pom $RPM_BUILD_ROOT/%{_mavenpomdir}/JPP-%{name}-$module.pom
+ %add_to_maven_depmap org.apache.xmlgraphics %{name}-$module %{version} JPP %{name}-$module
+ # compatibility depmap
+ %add_to_maven_depmap batik %{name}-$module %{version} JPP %{name}-$module
+ mv $RPM_BUILD_ROOT%{_mavendepmapfragdir}/%{name} $RPM_BUILD_ROOT%{_mavendepmapfragdir}/%{name}-$module
+done
+
+# main pom files and maven depmaps
+for module in anim awt-util bridge codec css dom ext extension gui-util \
+ gvt parser script svg-dom svggen swing transcoder util xml; do
+
+ install -pm 644 %{name}-$module.pom $RPM_BUILD_ROOT/%{_mavenpomdir}/JPP.%{name}-%{name}-$module.pom
+ %add_to_maven_depmap org.apache.xmlgraphics %{name}-$module %{version} JPP/%{name} %{name}-$module
+ # compatibility depmap
+ %add_to_maven_depmap batik %{name}-$module %{version} JPP/%{name} %{name}-$module
+done
+
+
+
# scripts
mkdir -p $RPM_BUILD_ROOT%{_bindir}
@@ -237,11 +265,9 @@ cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_bindir}/rasterizer
cp -p %{SOURCE5} $RPM_BUILD_ROOT%{_bindir}/slideshow
# javadoc
-mkdir -p $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
+mkdir -p $RPM_BUILD_ROOT%{_javadocdir}/%{name}
cp -pr %{name}-%{version}/docs/* \
- $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
-rm -rf %{name}-%{version}/docs/javadoc
-ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name}
+ $RPM_BUILD_ROOT%{_javadocdir}/%{name}
# demo
mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}
@@ -249,56 +275,100 @@ cp -pr contrib resources samples test-resources test-sources \
$RPM_BUILD_ROOT%{_datadir}/%{name}
#Fix perms
-chmod +x $RPM_BUILD_ROOT%{_datadir}/%{name}/contrib/rasterizertask/build.sh
+chmod +x $RPM_BUILD_ROOT%{_datadir}/%{name}/contrib/rasterizertask/build.sh
chmod +x $RPM_BUILD_ROOT%{_datadir}/%{name}/contrib/charts/convert.sh
-%clean
-rm -rf $RPM_BUILD_ROOT
+%post
+%update_maven_depmap
+
+%postun
+%update_maven_depmap
+
+%post squiggle
+%update_maven_depmap
+
+%postun squiggle
+%update_maven_depmap
+
+%post svgpp
+%update_maven_depmap
+
+%postun svgpp
+%update_maven_depmap
+
+%post ttf2svg
+%update_maven_depmap
+
+%postun ttf2svg
+%update_maven_depmap
+
+%post rasterizer
+%update_maven_depmap
+
+%postun rasterizer
+%update_maven_depmap
+
+%post slideshow
+%update_maven_depmap
+
+%postun slideshow
+%update_maven_depmap
+
+%pre javadoc
+# workaround for rpm bug, can be removed in F-17
+[ $1 -gt 1 ] && [ -L %{_javadocdir}/%{name} ] && \
+rm -rf $(readlink -f %{_javadocdir}/%{name}) %{_javadocdir}/%{name} || :
%files
-%defattr(-,root,root,-)
%doc KEYS LICENSE MAINTAIN NOTICE README
-%{_javadir}/%{name}-all-%{version}.jar
+%{_mavenpomdir}/JPP.%{name}-*pom
+%{_mavendepmapfragdir}/%{name}
%{_javadir}/%{name}-all.jar
%{_javadir}/batik
%files squiggle
-%defattr(-,root,root,-)
%{_javadir}/%{name}-squiggle.jar
+%{_mavendepmapfragdir}/%{name}-squiggle
+%{_mavenpomdir}/JPP-%{name}-squiggle.pom
%attr(0755,root,root) %{_bindir}/squiggle
%files svgpp
-%defattr(-,root,root,-)
%{_javadir}/%{name}-svgpp.jar
+%{_mavendepmapfragdir}/%{name}-svgpp
+%{_mavenpomdir}/JPP-%{name}-svgpp.pom
%attr(0755,root,root) %{_bindir}/svgpp
%files ttf2svg
-%defattr(-,root,root,-)
%{_javadir}/%{name}-ttf2svg.jar
+%{_mavendepmapfragdir}/%{name}-ttf2svg
+%{_mavenpomdir}/JPP-%{name}-ttf2svg.pom
%attr(0755,root,root) %{_bindir}/ttf2svg
%files rasterizer
-%defattr(-,root,root,-)
%{_javadir}/%{name}-rasterizer.jar
+%{_mavendepmapfragdir}/%{name}-rasterizer
+%{_mavenpomdir}/JPP-%{name}-rasterizer.pom
%attr(0755,root,root) %{_bindir}/rasterizer
%files slideshow
-%defattr(-,root,root,-)
%{_javadir}/%{name}-slideshow.jar
+%{_mavendepmapfragdir}/%{name}-slideshow
+%{_mavenpomdir}/JPP-%{name}-slideshow.pom
%attr(0755,root,root) %{_bindir}/slideshow
%files javadoc
-%defattr(-,root,root,-)
-%{_javadocdir}/%{name}-%{version}
%{_javadocdir}/%{name}
%files demo
-%defattr(-,root,root,-)
%{_datadir}/%{name}
%changelog
+* Tue May 3 2011 Stanislav Ochotnicky <sochotnicky at redhat.com> - 1.7-11
+- Add maven metadata and pom files
+- Versionless jars & javadocs
+
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.7-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
More information about the scm-commits
mailing list