rpms/itext/F-11 itext-2.1.7-fixpomforbc.patch, NONE, 1.1 itext-2.1.7.pom, NONE, 1.1 itext-rups.desktop, NONE, 1.1 itext-rups.sh, NONE, 1.1 itext-toolbox.desktop, NONE, 1.1 itext-toolbox.sh, NONE, 1.1 itext-xmloutput.patch, NONE, 1.1 itext.spec, 1.20, 1.21

Orcan Ogetbil oget at fedoraproject.org
Fri Oct 2 06:41:22 UTC 2009


Author: oget

Update of /cvs/pkgs/rpms/itext/F-11
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv10892

Modified Files:
	itext.spec 
Added Files:
	itext-2.1.7-fixpomforbc.patch itext-2.1.7.pom 
	itext-rups.desktop itext-rups.sh itext-toolbox.desktop 
	itext-toolbox.sh itext-xmloutput.patch 
Log Message:
* Thu Oct 01 2009 Orcan Ogetbil <oget[DOT]fedora[AT]gmail[DOT]com> 2.1.7-5
- Separate rtf, rups and toolbox packages
- Reduce dependencies of the main package (RHBZ#524066)


itext-2.1.7-fixpomforbc.patch:
 JPP-itext.pom |   14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

--- NEW FILE itext-2.1.7-fixpomforbc.patch ---
diff -up ./JPP-itext.pom.orig ./JPP-itext.pom
--- ./JPP-itext.pom.orig	2009-08-27 13:58:26.000000000 -0400
+++ ./JPP-itext.pom	2009-08-27 13:58:45.000000000 -0400
@@ -65,18 +65,18 @@
 	</scm>
 	<dependencies>
 		<dependency>
-			<groupId>bouncycastle</groupId>
-			<artifactId>bcmail-jdk14</artifactId>
+			<groupId>org.bouncycastle</groupId>
+			<artifactId>bcmail-jdk16</artifactId>
 			<version>138</version>
 		</dependency>
 		<dependency>
-			<groupId>bouncycastle</groupId>
-			<artifactId>bcprov-jdk14</artifactId>
+			<groupId>org.bouncycastle</groupId>
+			<artifactId>bcprov-jdk16</artifactId>
 			<version>138</version>
 		</dependency>
 		<dependency>
-			<groupId>bouncycastle</groupId>
-			<artifactId>bctsp-jdk14</artifactId>
+			<groupId>org.bouncycastle</groupId>
+			<artifactId>bctsp-jdk16</artifactId>
 			<version>138</version>
 		</dependency>
 	</dependencies>
@@ -97,4 +97,4 @@
 			</plugin>
 		</plugins>
 	</build>
-</project>
\ No newline at end of file
+</project>


--- NEW FILE itext-2.1.7.pom ---
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.lowagie</groupId>
	<artifactId>itext</artifactId>
	<packaging>jar</packaging>
	<name>iText, a Free Java-PDF library</name>
	<version>2.1.7</version>
	<description>iText, a free Java-PDF library</description>
	<url>http://www.lowagie.com/iText/</url>
	<mailingLists>
		<mailingList>
			<name>iText Questions</name>
			<subscribe>
				http://lists.sourceforge.net/lists/listinfo/itext-questions
			</subscribe>
			<post>itext-questions at lists.sourceforge.net</post>
			<archive>
				http://news.gmane.org/gmane.comp.java.lib.itext.general
			</archive>
			<otherArchives>
				<otherArchive>http://www.nabble.com/iText---General-f2701.html</otherArchive>
				<otherArchive>http://www.junlu.com/2.html</otherArchive>
				<otherArchive>http://sourceforge.net/mailarchive/forum.php?forum_id=3273</otherArchive>
				<otherArchive>http://www.mail-archive.com/itext-questions%40lists.sourceforge.net/</otherArchive>
			</otherArchives>
		</mailingList>
	</mailingLists>
	<developers>
		<developer>
			<id>blowagie</id>
			<name>Bruno Lowagie</name>
			<email>bruno at lowagie.com</email>
			<url>http://www.lowagie.com</url>
		</developer>
		<developer>
			<id>psoares33</id>
			<name>Paulo Soares</name>
			<email>psoares33 at users.sourceforge.net</email>
		</developer>
		<developer>
			<id>hallm</id>
			<name>Mark Hall</name>
			<email>hallm at users.sourceforge.net</email>
		</developer>
		<developer>
			<id>xlv</id>
			<name>Xavier Le Vourch</name>
			<email>xlv at users.sourceforge.net</email>
		</developer>
	</developers>
	<licenses>
		<license>
			<name>Mozilla Public License</name>
			<url>http://www.mozilla.org/MPL/MPL-1.1.html</url>
			<comments>
				iText was originally published under the LGPLicense.
				LGPL can be used as an alternative license for the MPL.
			</comments>
		</license>
	</licenses>
	<scm>
		<connection>scm:svn:http://itext.svn.sourceforge.net/svnroot/itext</connection>
		<url>http://itext.svn.sourceforge.net/viewvc/itext</url>
	</scm>
	<dependencies>
		<dependency>
			<groupId>bouncycastle</groupId>
			<artifactId>bcmail-jdk14</artifactId>
			<version>138</version>
		</dependency>
		<dependency>
			<groupId>bouncycastle</groupId>
			<artifactId>bcprov-jdk14</artifactId>
			<version>138</version>
		</dependency>
		<dependency>
			<groupId>bouncycastle</groupId>
			<artifactId>bctsp-jdk14</artifactId>
			<version>138</version>
		</dependency>
	</dependencies>
	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jar-plugin</artifactId>
				<configuration>
					<archive>
						<manifest>
							<mainClass>
								com.lowagie.tools.ToolboxAvailable
							</mainClass>
						</manifest>
					</archive>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>

--- NEW FILE itext-rups.desktop ---
[Desktop Entry]
Name=iText RUPS
GenericName=Reading/Updating PDF Syntax
Comment=a GUI application that allows you to look inside a PDF
Exec=itext-rups
Icon=itext-rups
Terminal=false
Type=Application
Categories=Utility;


--- NEW FILE itext-rups.sh ---
#!/bin/sh

# source the jpackage helpers
VERBOSE=1
. /usr/share/java-utils/java-functions

# set JAVA_* environment variables
set_javacmd
check_java_env
set_jvm_dirs


DATADIR=/usr/share/java
CLASSPATH=${DATADIR}/bcprov.jar:${DATADIR}/bcmail.jar:${DATADIR}/bctsp.jar:${DATADIR}/itext.jar:${DATADIR}/itext-rups.jar:${DATADIR}/dom4j.jar:${DATADIR}/pdf-renderer.jar

set_options "-cp ${CLASSPATH}"

MAIN_CLASS="com.lowagie.rups.Rups"

run


--- NEW FILE itext-toolbox.desktop ---
[Desktop Entry]
Name=iText Toolbox
GenericName=PDF Utility
Comment=A utility that allows to use a number of iText tools
Exec=itext-toolbox
Icon=itext-toolbox
Terminal=false
Type=Application
Categories=Utility;


--- NEW FILE itext-toolbox.sh ---
#!/bin/sh

# source the jpackage helpers
VERBOSE=1
. /usr/share/java-utils/java-functions

# set JAVA_* environment variables
set_javacmd
check_java_env
set_jvm_dirs


DATADIR=/usr/share/java
CLASSPATH=${DATADIR}/bcprov.jar:${DATADIR}/bcmail.jar:${DATADIR}/bctsp.jar:${DATADIR}/itext.jar:${DATADIR}/itext-toolbox.jar

set_options "-cp ${CLASSPATH}"

MAIN_CLASS="com.lowagie.toolbox.Toolbox"

run

itext-xmloutput.patch:
 markup/MarkupTags.java    |  266 +++++
 rtf/AbstractRtfField.java |  358 +++++++
 rtf/GenericRtfField.java  |  139 ++
 rtf/RtfCell.java          |  549 ++++++++++
 rtf/RtfField.java         |   84 +
 rtf/RtfHeaderFooter.java  |  114 ++
 rtf/RtfHeaderFooters.java |  160 +++
 rtf/RtfPageNumber.java    |  105 ++
 rtf/RtfRow.java           |  443 ++++++++
 rtf/RtfTOC.java           |  187 +++
 rtf/RtfTOCEntry.java      |  174 +++
 rtf/RtfTable.java         |  201 ++++
 rtf/RtfTableCell.java     |  392 +++++++
 rtf/RtfWriter.java        | 2298 ++++++++++++++++++++++++++++++++++++++++++++++
 xml/XmlToHtml.java        |  144 ++
 xml/XmlToPdf.java         |  144 ++
 xml/XmlToRtf.java         |  144 ++
 xml/XmlToXXX.java         |  147 ++
 18 files changed, 6049 insertions(+)

--- NEW FILE itext-xmloutput.patch ---
### Eclipse Workspace Patch 1.0
#P iText-2.1.7
Index: src/core/com/lowagie/text/rtf/RtfTableCell.java
===================================================================
--- src/core/com/lowagie/text/rtf/RtfTableCell.java	(revision 0)
+++ src/core/com/lowagie/text/rtf/RtfTableCell.java	(revision 0)
@@ -0,0 +1,392 @@
+/*
+ * The contents of this file are subject to the Mozilla Public License Version 1.1
+ * (the "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the License.
+ *
+ * The Original Code is 'iText, a free JAVA-PDF library'.
+ *
+ * The Initial Developer of the Original Code is Bruno Lowagie. Portions created by
+ * the Initial Developer are Copyright (C) 1999, 2000, 2001, 2002 by Bruno Lowagie.
+ * All Rights Reserved.
+ * Co-Developer of the code is Paulo Soares. Portions created by the Co-Developer
+ * are Copyright (C) 2000, 2001, 2002 by Paulo Soares. All Rights Reserved.
+ *
+ * Contributor(s): all the names of the contributors are added in the source code
+ * where applicable.
+ *
+ * Alternatively, the contents of this file may be used under the terms of the
+ * LGPL license (the "GNU LIBRARY GENERAL PUBLIC LICENSE"), in which case the
+ * provisions of LGPL are applicable instead of those above.  If you wish to
+ * allow use of your version of this file only under the terms of the LGPL
+ * License and not to allow others to use your version of this file under
+ * the MPL, indicate your decision by deleting the provisions above and
+ * replace them with the notice and other provisions required by the LGPL.
+ * If you do not delete the provisions above, a recipient may use your version
+ * of this file under either the MPL or the GNU LIBRARY GENERAL PUBLIC LICENSE.
+ *
+ * This library is free software; you can redistribute it and/or modify it
+ * under the terms of the MPL as stated above or under the terms of the GNU
+ * Library General Public License as published by the Free Software Foundation;
+ * either version 2 of the License, or any later version.
+ *
+ * This library is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU Library general Public License for more
+ * details.
+ *
+ * If you didn't download this code from the following link, you should check if
+ * you aren't using an obsolete version:
+ * http://www.lowagie.com/iText/
+ */
+
+package com.lowagie.text.rtf;
+
+import com.lowagie.text.Cell;
+import com.lowagie.text.Element;
+import com.lowagie.text.BadElementException;
+
+import java.util.Properties;
+
+/**
+ * A <code>Cell</code> with extended style attributes
+ *
+ * ONLY FOR USE WITH THE RtfWriter NOT with the RtfWriter2.
+ * @deprecated Please move to the RtfWriter2 and associated classes. com.lowagie.text.rtf.table.RtfCell replaces the functionality of this class.
+ */
+public class RtfTableCell extends Cell
+{
+    /* Table border styles */
+
+    /** Table border solid */
+    public static final int BORDER_UNDEFINED = 0;
+
+    /** Table border solid */
+    public static final int BORDER_SINGLE = 1;
+
+    /** Table border double thickness */
+    public static final int BORDER_DOUBLE_THICK = 2;
+
+    /** Table border shadowed */
+    public static final int BORDER_SHADOWED = 3;
+
+    /** Table border dotted */
+    public static final int BORDER_DOTTED = 4;
+
+    /** Table border dashed */
+    public static final int BORDER_DASHED = 5;
+
+    /** Table border hairline */
+    public static final int BORDER_HAIRLINE = 6;
+
+    /** Table border double line */
+    public static final int BORDER_DOUBLE = 7;
+
+    /** Table border dot dash line */
+    public static final int BORDER_DOT_DASH = 8;
+
+    /** Table border dot dot dash line */
+    public static final int BORDER_DOT_DOT_DASH = 9;
+
+    /** Table border triple line */
+    public static final int BORDER_TRIPLE = 10;
+
+    /** Table border line */
+    public static final int BORDER_THICK_THIN = 11;
+
+    /** Table border line */
+    public static final int BORDER_THIN_THICK = 12;
+
+    /** Table border line */
+    public static final int BORDER_THIN_THICK_THIN = 13;
+
+    /** Table border line */
+    public static final int BORDER_THICK_THIN_MED = 14;
+
+    /** Table border line */
+    public static final int BORDER_THIN_THICK_MED = 15;
+
+    /** Table border line */
+    public static final int BORDER_THIN_THICK_THIN_MED = 16;
+
+    /** Table border line */
+    public static final int BORDER_THICK_THIN_LARGE = 17;
+
+    /** Table border line */
+    public static final int BORDER_THIN_THICK_LARGE = 18;
+
+    /** Table border line */
+    public static final int BORDER_THIN_THICK_THIN_LARGE = 19;
+
+    /** Table border line */
+    public static final int BORDER_WAVY = 20;
+
+    /** Table border line */
+    public static final int BORDER_DOUBLE_WAVY = 21;
+
+    /** Table border line */
+    public static final int BORDER_STRIPED = 22;
+
+    /** Table border line */
+    public static final int BORDER_EMBOSS = 23;
+
+    /** Table border line */
+    public static final int BORDER_ENGRAVE = 24;
+
+    /* Instance variables */
+    private float topBorderWidth;
+    private float leftBorderWidth;
+    private float rightBorderWidth;
+    private float bottomBorderWidth;
+    private int topBorderStyle = 1;
+    private int leftBorderStyle = 1;
+    private int rightBorderStyle = 1;
+    private int bottomBorderStyle = 1;
+
+/**
+ * Constructs an empty <CODE>Cell</CODE> (for internal use only).
+ *
+ * @param   dummy   a dummy value
+ */
+
+    public RtfTableCell(boolean dummy) {
+        super(dummy);
+    }
+
+/**
+ * Constructs a <CODE>Cell</CODE> with a certain <CODE>Element</CODE>.
+ * <P>
+ * if the element is a <CODE>ListItem</CODE>, <CODE>Row</CODE> or
+ * <CODE>Cell</CODE>, an exception will be thrown.
+ *
+ * @param	element		the element
+ * @throws	BadElementException when the creator was called with a <CODE>ListItem</CODE>, <CODE>Row</CODE> or <CODE>Cell</CODE>
+ */
+    public RtfTableCell(Element element) throws BadElementException {
+        super(element);
+    }
+
+/**
+ * Constructs a <CODE>Cell</CODE> with a certain content.
+ * <P>
+ * The <CODE>String</CODE> will be converted into a <CODE>Paragraph</CODE>.
+ *
+ * @param	content		a <CODE>String</CODE>
+ */
+    public RtfTableCell(String content) {
+        super(content);
+    }
+
+///**
+// * Returns a <CODE>Cell</CODE> that has been constructed taking in account
+// * the value of some <VAR>attributes</VAR>.
+// *
+// * @param	attributes		Some attributes
+// */
+//
+//    public RtfTableCell(Properties attributes) {
+//        super(attributes);
+//    }
[...5797 lines suppressed...]
+ * @deprecated Please move to the RtfWriter2 and associated classes. com.lowagie.text.rtf.headerfooter.RtfHeaderFooter replaces the functionality of this class.
+ */
+public class RtfHeaderFooter extends HeaderFooter {
+
+
+    private Element content = null;
+
+        
+    /**
+     * Constructs a new header
+     * @param before
+     * @param after
+     */
+    public RtfHeaderFooter( Phrase before, Phrase after ) {
+        super( before, after );    
+    }    
+
+
+    /**
+     * Constructs a new header
+     * @param before
+     * @param numbered
+     */
+    public RtfHeaderFooter( Phrase before, boolean numbered ) {
+        super( before, numbered );
+    }    
+
+
+    /**
+     * Constructs a new header
+     * @param content
+     */
+    public RtfHeaderFooter( Element content ) {
+        super(new Phrase(content.toString()), false);
+        this.content = content;
+    }    
+
+
+    /**
+     * @return the element specified in the ctor or null;
+     */
+    public Element content() {
+        return content;
+    }
+}

Property changes on: src/core/com/lowagie/text/rtf/RtfHeaderFooter.java
___________________________________________________________________
Added: svn:executable
   + *

Index: src/core/com/lowagie/text/xml/XmlToHtml.java
===================================================================
--- src/core/com/lowagie/text/xml/XmlToHtml.java	(revision 0)
+++ src/core/com/lowagie/text/xml/XmlToHtml.java	(revision 0)
@@ -0,0 +1,144 @@
+/*
+ * Copyright 2002 by Matt Benson.
+ *
+ * The contents of this file are subject to the Mozilla Public License Version 1.1
+ * (the "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the License.
+ *
+ * The Original Code is 'iText, a free JAVA-PDF library'.
+ *
+ * The Initial Developer of the Original Code is Bruno Lowagie. Portions created by
+ * the Initial Developer are Copyright (C) 1999, 2000, 2001, 2002 by Bruno Lowagie.
+ * All Rights Reserved.
+ * Co-Developer of the code is Paulo Soares. Portions created by the Co-Developer
+ * are Copyright (C) 2000, 2001, 2002 by Paulo Soares. All Rights Reserved.
+ *
+ * Contributor(s): all the names of the contributors are added in the source code
+ * where applicable.
+ *
+ * Alternatively, the contents of this file may be used under the terms of the
+ * LGPL license (the "GNU LIBRARY GENERAL PUBLIC LICENSE"), in which case the
+ * provisions of LGPL are applicable instead of those above.  If you wish to
+ * allow use of your version of this file only under the terms of the LGPL
+ * License and not to allow others to use your version of this file under
+ * the MPL, indicate your decision by deleting the provisions above and
+ * replace them with the notice and other provisions required by the LGPL.
+ * If you do not delete the provisions above, a recipient may use your version
+ * of this file under either the MPL or the GNU LIBRARY GENERAL PUBLIC LICENSE.
+ *
+ * This library is free software; you can redistribute it and/or modify it
+ * under the terms of the MPL as stated above or under the terms of the GNU
+ * Library General Public License as published by the Free Software Foundation;
+ * either version 2 of the License, or any later version.
+ *
+ * This library is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU Library general Public License for more
+ * details.
+ *
+ * If you didn't download this code from the following link, you should check if
+ * you aren't using an obsolete version:
+ * http://www.lowagie.com/iText/
+ */
+
+package com.lowagie.text.xml;
+
+
+import java.io.OutputStream;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+
+import com.lowagie.text.Document;
+import com.lowagie.text.DocumentException;
+import com.lowagie.text.html.HtmlWriter;
+
+
+/**
+ * HTML-specific subclass of <code>XmlToXXX</code>.
+ *
+ * @version 1.0
+ * @author <a href="mailto:orangeherbert at users.sourceforge.net">Matt Benson</a>
+ */
+public class XmlToHtml
+ extends XmlToXXX
+{
+	
+/**
+ * Construct an <CODE>XmlToHtml</CODE> with the default page size.
+ */
+	public XmlToHtml()
+	{
+		super();
+	}//end default constructor
+	
+	
+/**
+ * Construct an <CODE>XmlToHtml</CODE> with the specified page size.
+ * @param pageSize   <CODE>String</CODE> page size name from
+ * <CODE>com.lowagie.text.PageSize</CODE>.
+ */
+	public XmlToHtml(String pageSize)
+	{
+		super(pageSize);
+	}//end constructor(String)
+	
+	
+/**
+ * Add a <CODE>DocWriter</CODE> for the specified <CODE>Document</CODE> and
+ * <CODE>OutputStream</CODE>.
+ * @param doc The document to which content will be added
+ * @param out The outputstream where the HTML will be sent to
+ * @throws DocumentException if document errors occur.
+ */	
+	protected final void addWriter(Document doc, OutputStream out)
+	 throws DocumentException
+	{
+		HtmlWriter.getInstance(doc, out);
+	}//end addWriter
+	
+	
+/**
+ * Main method of the <CODE>XmlToHtml</CODE> class.
+ * @param args   <CODE>String[]</CODE> of command-line arguments.
+ */
+	public static void main(String[] args)
+	{
+		int code = 0;
+		
+		if (args.length > 1)
+		{
+			try
+			{
+				XmlToHtml x;
+				if (args.length > 2)
+				{
+					x = new XmlToHtml(args[2]);
+				}//end if at least 3 args
+				else
+				{
+					x = new XmlToHtml();
+				}//end else, only 2 args
+				
+				x.parse(new FileInputStream(args[0]), new FileOutputStream(args[1]));
+			}//end try to do everything
+			catch (Exception ex)
+			{
+				code = 2;
+				ex.printStackTrace(System.err);
+			}//end catch Exception
+		}//end if at least 2 args
+		else
+		{
+			code = 1;
+			System.err.println(
+			 "Usage:  XmlToHtml [XML file in] [PDF file out] [optional page size]");
+		}//end else, not enough arguments
+		
+		System.exit(code);
+	}//end main
+	
+}//end class XmlToHtml


Index: itext.spec
===================================================================
RCS file: /cvs/pkgs/rpms/itext/F-11/itext.spec,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -p -r1.20 -r1.21
--- itext.spec	10 Jul 2009 02:34:28 -0000	1.20
+++ itext.spec	2 Oct 2009 06:41:21 -0000	1.21
@@ -1,45 +1,122 @@
 %global with_gcj %{!?_without_gcj:1}%{?_without_gcj:0}
 %global alternate_name iText
 
-Summary:        A Free Java-PDF library
-Name:           itext
-Version:        2.1.7
-Release:        1%{?dist}
-License:        (LGPLv2+ or MPLv1.1) and ASL 2.0 and BSD and MIT and LGPLv2+ and CC-BY
-URL:            http://www.lowagie.com/iText/
-Group:          Development/Libraries
-Source0:        http://downloads.sourceforge.net/itext/iText-src-%{version}.tar.gz
-Patch1:         itext-2.1.5-pdftk.patch
-BuildRequires:  ant
-BuildRequires:  bouncycastle-tsp
-BuildRequires:  dom4j
-BuildRequires:  pdf-renderer
-BuildRequires:  java-devel >= 1.5
-BuildRequires:  jpackage-utils
+Summary:          A Free Java-PDF library
+Name:             itext
+Version:          2.1.7
+Release:          5%{?dist}
+License:          (LGPLv2+ or MPLv1.1) and ASL 2.0 and BSD and LGPLv2+
+URL:              http://www.lowagie.com/iText/
+Group:            Development/Libraries
+Source0:          http://downloads.sourceforge.net/itext/iText-src-%{version}.tar.gz
+Source2:          http://repo2.maven.org/maven2/com/lowagie/itext/%{version}/itext-%{version}.pom
+Source3:          itext-rups.sh
+Source4:          itext-rups.desktop
+Source5:          itext-toolbox.sh
+Source6:          itext-toolbox.desktop
+Patch1:           itext-2.1.5-pdftk.patch
+
+# The iText POM specifies that it requires bouncycastle's "jdk14" JARs
+# but we have "jdk16".
+Patch2:           itext-2.1.7-fixpomforbc.patch
+# Maven's Doxia plugin explicitly requires these XML output interfaces
+# of iText.  They were removed in iText 1.4.4 [1].  iText versions prior
+# to 1.5.x had questionable licensing [2] so rather than try to create
+# an itext1 package, I have forward-ported these classes.  The doxia
+# developers have told me on IRC on 2009-08-27 that the iText dependency
+# will likely be deprecated meaning we won't have to keep these forever.
+# 
+# I've opened a bug with iText:
+# 
+# https://sourceforge.net/tracker/?func=detail&aid=2846427&group_id=15255&atid=365255 
+# 
+# and commented on the Doxia but related to this:
+#
+# http://jira.codehaus.org/browse/DOXIA-53
+#
+# -- Andrew Overholt, 2009-08-28
+# 
+# [1]
+# http://www.1t3xt.com/about/history.php?branch=history.10&node=14
+# [2]
+# https://bugzilla.redhat.com/show_bug.cgi?id=236309
+Patch3:           itext-xmloutput.patch
+
+BuildRequires:    ant
+BuildRequires:    bouncycastle-tsp
+BuildRequires:    desktop-file-utils
+BuildRequires:    dom4j
+BuildRequires:    ImageMagick
+BuildRequires:    pdf-renderer
+BuildRequires:    java-devel >= 1.7
+BuildRequires:    jpackage-utils
 %if %{with_gcj}
 BuildRequires:    java-gcj-compat-devel
 Requires(post):   java-gcj-compat
 Requires(postun): java-gcj-compat
 Requires:         java-1.5.0-gcj
 %else
-BuildArch:      noarch
+BuildArch:        noarch
 %endif
-BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-Requires:       bouncycastle-tsp
-Requires:       dom4j
-Requires:       java >= 1.5
-Requires:       jpackage-utils >= 1.5
-Requires:       pdf-renderer
-Provides:       %{alternate_name} == %{version}-%{release}
+BuildRoot:        %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+Requires:         bouncycastle-tsp
+Requires:         java >= 1.5
+Requires:         jpackage-utils >= 1.5
+Requires(post):   jpackage-utils >= 1.7
+Requires(postun): jpackage-utils >= 1.7
+Provides:         %{alternate_name} == %{version}-%{release}
 
 %description
 iText is a library that allows you to generate PDF files on the fly. The iText
 classes are very useful for people who need to generate read-only, platform
 independent documents containing text, lists, tables and images. The library is
 especially useful in combination with Java(TM) technology-based Servlets: The
-look and feel of HTML is browser dependent; with iText and PDF you can control 
+look and feel of HTML is browser dependent; with iText and PDF you can control
 exactly how your servlet's output will look.
 
+
+%package rtf
+Summary:        Library to output Rich Text Files
+Group:          Development/Libraries
+License:        MPLv1.1 or LGPLv2+
+Requires:       %{name} = %{version}-%{release}
+
+%description rtf
+The RTF package is an extension of the iText library and allows iText to output
+Rich Text Files in additon to PDF files. These files can then be viewed and
+edited with RTF viewers such as OpenOffice.org Writer.
+
+
+%package rups
+Summary:        Reading/Updating PDF Syntax
+Group:          Applications/Productivity
+License:        LGPLv2+ and CC-BY
+Requires:       %{name} = %{version}-%{release}
+Requires:       dom4j
+Requires:       pdf-renderer
+
+%description rups
+iText RUPS is a tool that combines SUN's PDF Renderer (to view PDF documents),
+iText's PdfReader (to inspect the internal structure of a PDF file), and
+iText's PdfStamper to manipulate a PDF file.
+
+
+%package toolbox
+Summary:        Some %{alternate_name} tools
+Group:          Applications/Productivity
+License:        MPLv1.1 or MIT
+Requires:       %{name} = %{version}-%{release}
+Requires:       java >= 1.5
+
+
+%description toolbox
+iText is a free open source Java-PDF library released on SF under the MPL/LGPL;
+iText comes with a simple GUI: the iText toolbox. The original developers of
+iText want to publish this toolbox as a separate project under the more
+permissive MIT license. This is a utility that allows you to use a number of
+iText tools. 
+
+
 %package javadoc
 Summary:        Javadoc for %{alternate_name}
 Group:          Documentation
@@ -49,9 +126,13 @@ Requires:       jpackage-utils
 %description javadoc
 API documentation for the %{alternate_name} package.
 
+
 %prep
 %setup -q -c -T -a 0
 %patch1 -p1 -b .pdftk
+cp -pr %{SOURCE2} JPP-itext.pom
+%patch2 -p0 -b .fixpomforbc
+%patch3 -p0 -b .xmloutput
 
 # Remove preshipped binaries
 find . -name "*.jar" -exec rm {} \;
@@ -62,7 +143,7 @@ touch -r src/rups/com/lowagie/rups/view/
 mv -f tmpfile src/rups/com/lowagie/rups/view/icons/copyright_notice.txt
 
 mkdir lib
-build-jar-repository -s -p lib bcprov bcmail pdf-renderer dom4j
+build-jar-repository -s -p lib bcprov bcmail bctsp pdf-renderer dom4j
 
 # Remove jdk & version numbers from classpath entries
 for file in src/ant/{*,.ant*}; do
@@ -81,7 +162,7 @@ sed -i 's|debug="true"||g' src/ant/compi
 %build
 export CLASSPATH=$(build-classpath bcprov bcmail bctsp pdf-renderer dom4j)
 pushd src
-ant jar javadoc
+ant jar jar.rups jar.rtf jar.toolbox javadoc
 popd
 
 %install
@@ -91,9 +172,37 @@ rm -rf $RPM_BUILD_ROOT
 mkdir -p $RPM_BUILD_ROOT%{_javadir}
 cp -p lib/iText.jar \
       $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar
+cp -p lib/iText-rtf.jar \
+      $RPM_BUILD_ROOT%{_javadir}/%{name}-rtf-%{version}.jar
+cp -p lib/iText-rups.jar \
+      $RPM_BUILD_ROOT%{_javadir}/%{name}-rups-%{version}.jar
+cp -p lib/iText-toolbox.jar \
+      $RPM_BUILD_ROOT%{_javadir}/%{name}-toolbox-%{version}.jar
 (cd $RPM_BUILD_ROOT%{_javadir} && for jar in *-%{version}.jar; do \
       ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`; done)
 
+mkdir -p $RPM_BUILD_ROOT%{_bindir}
+mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
+# rups stuff
+install -pm 755 %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/%{name}-rups
+desktop-file-install \
+      --dir=${RPM_BUILD_ROOT}%{_datadir}/applications \
+      %{SOURCE4}
+
+# toolbox stuff
+install -pm 755 %{SOURCE5} $RPM_BUILD_ROOT%{_bindir}/%{name}-toolbox
+desktop-file-install \
+      --dir=${RPM_BUILD_ROOT}%{_datadir}/applications \
+      %{SOURCE6}
+
+# icon for rups and toolbox
+mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/128x128/apps
+convert -resize 128x128 src/toolbox/com/lowagie/toolbox/1t3xt.gif %{name}.png
+cp -a %{name}.png \
+      $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/128x128/apps/%{name}-rups.png
+cp -a %{name}.png \
+      $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/128x128/apps/%{name}-toolbox.png
+
 %if %{with_gcj}
  RPM_OPT_FLAGS="$RPM_OPT_FLAGS -fno-indirect-classes" %{_bindir}/aot-compile-rpm
 %endif
@@ -102,33 +211,100 @@ cp -p lib/iText.jar \
 mkdir -p $RPM_BUILD_ROOT%{_javadocdir}/%{name}
 cp -pr build/docs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
 
+# Install the pom
+install -dm 755 $RPM_BUILD_ROOT%{_datadir}/maven2/poms
+cp -pr JPP-itext.pom $RPM_BUILD_ROOT%{_mavenpomdir}
+%add_to_maven_depmap itext itext %{version} JPP itext
+%add_to_maven_depmap com.lowagie itext %{version} JPP itext
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %post
+%update_maven_depmap
 %if %{with_gcj}
-if [ -x %{_bindir}/rebuild-gcj-db ] 
+if [ -x %{_bindir}/rebuild-gcj-db ]
  then
   %{_bindir}/rebuild-gcj-db
  fi
 %endif
 
 %postun
+%update_maven_depmap
 %if %{with_gcj}
- if [ -x %{_bindir}/rebuild-gcj-db ] 
+ if [ -x %{_bindir}/rebuild-gcj-db ]
  then
   %{_bindir}/rebuild-gcj-db
  fi
 %endif
 
+%post rups
+touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
+
+%postun rups
+if [ $1 -eq 0 ] ; then
+    touch --no-create %{_datadir}/icons/hicolor &>/dev/null
+    gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
+fi
+
+%posttrans rups
+gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
+
+%post toolbox
+touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
+
+%postun toolbox
+if [ $1 -eq 0 ] ; then
+    touch --no-create %{_datadir}/icons/hicolor &>/dev/null
+    gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
+fi
+
+%posttrans toolbox
+gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
+
 
 %files
 %defattr(-,root,root,-)
 %doc build/bin/com/lowagie/text/{apache_license,lgpl,misc_licenses,MPL-1.1}.txt
+%{_javadir}/%{name}.jar
+%{_javadir}/%{name}-%{version}.jar
+%{_mavenpomdir}/JPP-itext.pom
+%{_mavendepmapfragdir}/%{name}
+%if %{with_gcj}
+%dir %{_libdir}/gcj/%{name}
+%{_libdir}/gcj/%{name}/%{name}-%{version}.*
+%endif
+
+%files rtf
+%defattr(-,root,root,-)
+%{_javadir}/%{name}-rtf.jar
+%{_javadir}/%{name}-rtf-%{version}.jar
+%if %{with_gcj}
+%{_libdir}/gcj/%{name}/%{name}-rtf-%{version}.*
+%endif
+
+%files rups
+%defattr(-,root,root,-)
 %doc src/rups/com/lowagie/rups/view/icons/copyright_notice.txt
-%{_javadir}/*
+%{_javadir}/%{name}-rups.jar
+%{_javadir}/%{name}-rups-%{version}.jar
+%{_bindir}/%{name}-rups
+%{_datadir}/applications/%{name}-rups.desktop
+%{_datadir}/icons/hicolor/128x128/apps/%{name}-rups.png
+%if %{with_gcj}
+%{_libdir}/gcj/%{name}/%{name}-rups-%{version}.*
+%endif
+
+%files toolbox
+%defattr(-,root,root,-)
+%doc src/toolbox/com/lowagie/toolbox/tools.txt
+%{_javadir}/%{name}-toolbox.jar
+%{_javadir}/%{name}-toolbox-%{version}.jar
+%{_bindir}/%{name}-toolbox
+%{_datadir}/applications/%{name}-toolbox.desktop
+%{_datadir}/icons/hicolor/128x128/apps/%{name}-toolbox.png
 %if %{with_gcj}
-%{_libdir}/gcj/%{name}
+%{_libdir}/gcj/%{name}/%{name}-toolbox-%{version}.*
 %endif
 
 %files javadoc
@@ -138,6 +314,21 @@ if [ -x %{_bindir}/rebuild-gcj-db ] 
 # -----------------------------------------------------------------------------
 
 %changelog
+* Thu Oct 01 2009 Orcan Ogetbil <oget[DOT]fedora[AT]gmail[DOT]com> 2.1.7-5
+- Separate rtf, rups and toolbox packages
+- Reduce dependencies of the main package (RHBZ#524066)
+
+* Thu Aug 27 2009 Andrew Overholt <overholt at redhat.com> 2.1.7-4
+- Patch POM file due to explicit "jdk14" requirement on bouncycastle
+- Patch in XML output classes from earlier version (their license is
+  clean) for maven-doxia
+
+* Thu Aug 27 2009 Andrew Overholt <overholt at redhat.com> 2.1.7-3
+- Add maven POM file for use by other maven packages
+
+* Fri Jul 24 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 2.1.7-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
+
 * Thu Jul 09 2009 Orcan Ogetbil <oget[DOT]fedora[AT]gmail[DOT]com> 2.1.7-1
 - New upstream release
 




More information about the scm-commits mailing list