diff --git a/.cvsignore b/.cvsignore index e69de29..b19ef76 100644 --- a/.cvsignore +++ b/.cvsignore @@ -0,0 +1 @@ +xml-stylebook-1.0.tar.gz diff --git a/sources b/sources index e69de29..66e7a35 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +11b3e4d6e4e2b45ceb161b99c91b2893 xml-stylebook-1.0.tar.gz diff --git a/xml-stylebook-build-javadoc.patch b/xml-stylebook-build-javadoc.patch new file mode 100644 index 0000000..852a3ea --- /dev/null +++ b/xml-stylebook-build-javadoc.patch @@ -0,0 +1,63 @@ +--- build.xml 2004-12-14 15:54:50.000000000 +0000 ++++ build.xml 2010-01-11 21:02:34.783136703 +0000 +@@ -54,17 +54,16 @@ + + + ++ + + +- +- +- + + + + + + ++ + + + +@@ -88,13 +87,12 @@ + + + +- + + + + + +- ++ + + + +@@ -103,4 +101,25 @@ + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + diff --git a/xml-stylebook-image-printer.patch b/xml-stylebook-image-printer.patch new file mode 100644 index 0000000..9b40c5c --- /dev/null +++ b/xml-stylebook-image-printer.patch @@ -0,0 +1,35 @@ +--- src/org/apache/stylebook/printers/ImagePrinter.java 1999-11-30 07:28:54.000000000 -0500 ++++ src/org/apache/stylebook/printers/ImagePrinter.java 2009-01-07 17:00:13.802150149 -0500 +@@ -8,7 +8,10 @@ + package org.apache.stylebook.printers; + + import org.apache.stylebook.*; +-import com.sun.image.codec.jpeg.*; ++import javax.imageio.*; ++import javax.imageio.plugins.jpeg.*; ++import javax.imageio.metadata.*; ++import javax.imageio.stream.*; + import java.io.IOException; + import java.io.OutputStream; + import java.io.PrintStream; +@@ -144,11 +147,15 @@ + } + } + +- // Write out image (highest quality for jpeg data) +- JPEGEncodeParam jpar=JPEGCodec.getDefaultJPEGEncodeParam(img); +- jpar.setQuality(1,true); +- JPEGImageEncoder jenc=JPEGCodec.createJPEGEncoder(out,jpar); +- jenc.encode(img); ++ ImageWriter encoder = (ImageWriter)ImageIO.getImageWritersByFormatName("JPEG").next(); ++ JPEGImageWriteParam param = new JPEGImageWriteParam(null); ++ ++ param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); ++ param.setCompressionQuality(1); ++ ++ encoder.setOutput(ImageIO.createImageOutputStream(out)); ++ encoder.write((IIOMetadata) null, new IIOImage(img,null,null), param); ++ + out.flush(); + } + diff --git a/xml-stylebook.spec b/xml-stylebook.spec new file mode 100644 index 0000000..2900963 --- /dev/null +++ b/xml-stylebook.spec @@ -0,0 +1,129 @@ +Name: xml-stylebook +Version: 1.0 +Release: 0.3.b3_xalan2.svn313293%{?dist} +Summary: Apache XML Stylebook +Group: Development/Libraries +License: ASL 1.1 +URL: http://xml.apache.org/ + +# How to generate this tarball: +# $ svn export http://svn.apache.org/repos/asf/xml/stylebook/trunk/@313293 xml-stylebook-1.0 +# $ tar zcf xml-stylebook-1.0.tar.gz xml-stylebook-1.0 +Source0: %{name}-%{version}.tar.gz + +# Patch to fix an NPE in Xalan-J2's docs generation (from JPackage) +Patch0: %{name}-image-printer.patch + +# Patch the build script to build javadocs +Patch1: %{name}-build-javadoc.patch + +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +BuildArch: noarch + +BuildRequires: java-devel >= 1:1.6.0 +BuildRequires: jpackage-utils +BuildRequires: ant +BuildRequires: jaxp_parser_impl +BuildRequires: dejavu-sans-fonts +Requires: java >= 1:1.6.0 +Requires: jpackage-utils + +%description +Apache XML Stylebook is a HTML documentation generator. + +%package javadoc +Summary: Javadocs for %{name} +Group: Documentation +Requires: %{name} = %{version}-%{release} + +%description javadoc +API documentation for %{name}. + +%package demo +Summary: Examples for %{name} +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} + +%description demo +Examples demonstrating the use of %{name}. + +%prep +%setup -q +%patch0 -p0 +%patch1 -p0 + +# Remove bundled binaries +rm -r bin/*.jar + +# Make sure upstream hasn't sneaked in any jars we don't know about +JARS="" +for j in `find -name "*.jar"`; do + if [ ! -L $j ]; then + JARS="$JARS $j" + fi +done +if [ ! -z "$JARS" ]; then + echo "These jars should be deleted and symlinked to system jars: $JARS" + exit 1 +fi + +%build +ant + +# Build the examples (this serves as a good test suite) +pushd docs +rm run.bat +java -classpath "$(build-classpath jaxp_parser_impl):../bin/stylebook-%{version}-b3_xalan-2.jar" \ + org.apache.stylebook.StyleBook "targetDirectory=../results" book.xml ../styles/apachexml +popd + +%install +rm -rf %{buildroot} + +# jars +install -pD -T bin/stylebook-%{version}-b3_xalan-2.jar \ + %{buildroot}%{_javadir}/%{name}-%{version}.jar +(cd %{buildroot}%{_javadir} && for jar in *-%{version}.jar; do \ + ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`; done) + +# javadoc +install -d %{buildroot}%{_javadocdir}/%{name}-%{version} +cp -pr build/javadoc/* %{buildroot}%{_javadocdir}/%{name}-%{version} +(cd %{buildroot}%{_javadocdir} && ln -sf %{name}-%{version} %{name}) + +# examples +install -d %{buildroot}%{_datadir}/%{name} +cp -pr docs %{buildroot}%{_datadir}/%{name} +cp -pr styles %{buildroot}%{_datadir}/%{name} +cp -pr results %{buildroot}%{_datadir}/%{name} + +%clean +rm -rf %{buildroot} + +%files +%defattr(-,root,root,-) +%doc LICENSE.txt +%{_javadir}/* + +%files javadoc +%defattr(-,root,root,-) +%{_javadocdir}/%{name}-%{version} +%{_javadocdir}/%{name} + +%files demo +%defattr(-,root,root,-) +%{_datadir}/%{name} + +%changelog +* Mon Jan 11 2010 Mat Booth - 1.0-0.3.b3_xalan2.svn313293 +- Build the examples (this serves as a good test suite.) +- Patch the build script to build javadocs. +- Add a build dep on a font package because the JDK is missing a dependency + to function correctly in headless mode. See RHBZ #478480 and #521523. + +* Tue Jan 5 2010 Mat Booth - 1.0-0.2.b3_xalan2.svn313293 +- Add patch from JPackage to fix NPE in Xalan-J2 doc generation. + +* Tue Jan 5 2010 Mat Booth - 1.0-0.1.b3_xalan2.svn313293 +- Initial stab at packaging trunk version of stylebook. +