Add maven metadata and pom files

- Versionless jars & javadocs
This commit is contained in:
Stanislav Ochotnicky 2011-05-03 11:18:43 +02:00
parent eaa473c8d3
commit beae5890c0
2 changed files with 126 additions and 42 deletions

View File

@ -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>

View File

@ -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@redhat.com> - 1.7-11
- Add maven metadata and pom files
- Versionless jars & javadocs
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.7-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild