Install separate jars and put OSGi manifests in them.

This commit is contained in:
Alexander Kurtakov 2009-02-12 09:34:54 +00:00
parent fe73a54202
commit 0d0e32d445
3 changed files with 68 additions and 2 deletions

View File

@ -6,3 +6,4 @@ batik.ttf2svg.script
batik.rasterizer.script
batik-repack.sh
batik-repack-1.7.zip
batik-orbit-manifests.tar.gz

View File

@ -1,6 +1,6 @@
Name: batik
Version: 1.7
Release: 2%{?dist}
Release: 3%{?dist}
Summary: Scalable Vector Graphics for Java
License: ASL 2.0
URL: http://xml.apache.org/batik/
@ -14,6 +14,7 @@ Source4: %{name}.rasterizer.script
Source5: %{name}.slideshow.script
Source6: %{name}-squiggle.desktop
Source7: %{name}-repack.sh
Source8: %{name}-orbit-manifests.tar.gz
Patch0: %{name}-manifests.patch
Patch1: %{name}-policy.patch
Requires: rhino >= 1.5
@ -123,6 +124,10 @@ Demonstrations and samples for %{name}.
%patch1 -p1
rm -f `find -name readOnly.png`
rm -f `find -name properties`
mkdir orbit
pushd orbit
tar xzf %{SOURCE8}
popd
%build
@ -133,7 +138,7 @@ export CLASSPATH=$CLASSPATH:/usr/share/java/js.jar
export CLASSPATH=$CLASSPATH:/usr/share/java/rhino.jar
export CLASSPATH=$CLASSPATH:/usr/share/java/xalan-j2.jar
export CLASSPATH=$CLASSPATH:/usr/share/java/xerces-j2.jar
ant all-jar \
ant all-jar jars\
-Ddebug=on \
-Dsun-codecs.present=false \
-Dsun-codecs.disabled=true \
@ -152,8 +157,58 @@ 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
touch META-INF/MANIFEST.MF
zip -u %{name}-%{version}/lib/batik-bridge.jar META-INF/MANIFEST.MF
cp -p orbit/batik-css-MANIFEST.MF META-INF/MANIFEST.MF
touch META-INF/MANIFEST.MF
zip -u %{name}-%{version}/lib/batik-css.jar META-INF/MANIFEST.MF
cp -p orbit/batik-dom-MANIFEST.MF META-INF/MANIFEST.MF
touch META-INF/MANIFEST.MF
zip -u %{name}-%{version}/lib/batik-dom.jar META-INF/MANIFEST.MF
cp -p orbit/batik-dom-svg-MANIFEST.MF META-INF/MANIFEST.MF
touch META-INF/MANIFEST.MF
zip -u %{name}-%{version}/lib/batik-svg-dom.jar META-INF/MANIFEST.MF
cp -p orbit/batik-ext-awt-MANIFEST.MF META-INF/MANIFEST.MF
touch META-INF/MANIFEST.MF
zip -u %{name}-%{version}/lib/batik-awt-util.jar META-INF/MANIFEST.MF
cp -p orbit/batik-extension-MANIFEST.MF META-INF/MANIFEST.MF
touch META-INF/MANIFEST.MF
zip -u %{name}-%{version}/lib/batik-extension.jar META-INF/MANIFEST.MF
cp -p orbit/batik-parser-MANIFEST.MF META-INF/MANIFEST.MF
touch META-INF/MANIFEST.MF
zip -u %{name}-%{version}/lib/batik-parser.jar META-INF/MANIFEST.MF
cp -p orbit/batik-svggen-MANIFEST.MF META-INF/MANIFEST.MF
touch META-INF/MANIFEST.MF
zip -u %{name}-%{version}/lib/batik-svggen.jar META-INF/MANIFEST.MF
cp -p orbit/batik-swing-MANIFEST.MF META-INF/MANIFEST.MF
touch META-INF/MANIFEST.MF
zip -u %{name}-%{version}/lib/batik-swing.jar META-INF/MANIFEST.MF
cp -p orbit/batik-transcoder-MANIFEST.MF META-INF/MANIFEST.MF
touch META-INF/MANIFEST.MF
zip -u %{name}-%{version}/lib/batik-transcoder.jar META-INF/MANIFEST.MF
cp -p orbit/batik-util-gui-MANIFEST.MF META-INF/MANIFEST.MF
touch META-INF/MANIFEST.MF
zip -u %{name}-%{version}/lib/batik-gui-util.jar META-INF/MANIFEST.MF
cp -p orbit/batik-util-MANIFEST.MF META-INF/MANIFEST.MF
touch META-INF/MANIFEST.MF
zip -u %{name}-%{version}/lib/batik-util.jar META-INF/MANIFEST.MF
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
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
done
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 \
@ -167,6 +222,11 @@ pushd $RPM_BUILD_ROOT%{_javadir}
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
# scripts
mkdir -p $RPM_BUILD_ROOT%{_bindir}
@ -201,6 +261,7 @@ rm -rf $RPM_BUILD_ROOT
%doc KEYS LICENSE MAINTAIN NOTICE README
%{_javadir}/%{name}-all-%{version}.jar
%{_javadir}/%{name}-all.jar
%{_javadir}/batik
%files squiggle
%defattr(-,root,root,-)
@ -238,6 +299,9 @@ rm -rf $RPM_BUILD_ROOT
%changelog
* Fri Feb 6 2009 Alexander Kurtakov <akurtako@redhat.com> 1.7-3
- Install separate jars and put OSGi manifests in them.
* Tue Jan 06 2009 Lillian Angel <langel@redhat.com> - 1.7-2
- Fixed java dependencies to check for java-1.6.0-openjdk instead.

View File

@ -6,3 +6,4 @@ c20cbde45a96e45bf6e657b50b4fa8e2 batik-squiggle.desktop
41e4dcaacf99bb8e583ee3e7e04e662f batik.rasterizer.script
26100fd0b228e3466c4e1788589140b3 batik-repack.sh
207f23ed2d90e9b9982f739398834c4d batik-repack-1.7.zip
0a704013b27f1ee5c756ffad3cccdbe8 batik-orbit-manifests.tar.gz