Author: thl
Update of /cvs/free/rpms/foo2zjs/F-8
In directory se02.es.rpmfusion.net:/tmp/cvs-serv18758
Modified Files:
.cvsignore sources
Added Files:
foo2zjs-dynamic-jbig.patch foo2zjs.spec
Log Message:
initial import
foo2zjs-dynamic-jbig.patch:
--- NEW FILE foo2zjs-dynamic-jbig.patch ---
diff -uNr foo2zjs-jbig/jbig.c foo2zjs/jbig.c
--- foo2zjs-jbig/jbig.c 2004-06-12 03:33:05.000000000 +0100
+++ foo2zjs/jbig.c 1970-01-01 01:00:00.000000000 +0100
@@ -1,3194 +0,0 @@
-/*
- * Portable Free JBIG image compression library
- *
- * Markus Kuhn --
http://www.cl.cam.ac.uk/~mgk25/
- *
- * Id: jbig.c,v 1.22 2004-06-11 15:17:06+01 mgk25 Exp $
- * $Id: jbig.c,v 1.4 2004/06/12 02:33:05 rick Exp $
- *
- * This module implements a portable standard C encoder and decoder
- * using the JBIG lossless bi-level image compression algorithm as
- * specified in International Standard ISO 11544:1993 or equivalently
- * as specified in ITU-T Recommendation T.82. See the file jbig.doc
- * for usage instructions and application examples.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- *
- * If you want to use this program under different license conditions,
- * then contact the author for an arrangement.
- *
- * It is possible that certain products which can be built using this
- * software module might form inventions protected by patent rights in
- * some countries (e.g., by patents about arithmetic coding algorithms
- * owned by IBM and AT&T in the USA). Provision of this software by the
- * author does NOT include any licences for any patents. In those
- * countries where a patent licence is required for certain applications
- * of this software module, you will have to obtain such a licence
- * yourself.
- */
-
-#ifdef DEBUG
-#include <stdio.h>
-#else
-#define NDEBUG
-#endif
-
-#include <stdlib.h>
-#include <string.h>
-#include <assert.h>
-
-#include "jbig.h"
-
-
-/* optional export of arithmetic coder functions for test purposes */
-#ifdef TEST_CODEC
-#define ARITH
-#define ARITH_INL
-#else
-#define ARITH static
-#ifdef __GNUC__
-#define ARITH_INL static __inline__
-#else
-#define ARITH_INL static
-#endif
-#endif
-
-#define MX_MAX 127 /* maximal supported mx offset for
- * adaptive template in the encoder */
-
-#define TPB2CX 0x195 /* contexts for TP special pixels */
-#define TPB3CX 0x0e5
-#define TPDCX 0xc3f
-
-/* marker codes */
-#define MARKER_STUFF 0x00
-#define MARKER_RESERVE 0x01
-#define MARKER_SDNORM 0x02
-#define MARKER_SDRST 0x03
-#define MARKER_ABORT 0x04
-#define MARKER_NEWLEN 0x05
-#define MARKER_ATMOVE 0x06
-#define MARKER_COMMENT 0x07
-#define MARKER_ESC 0xff
-
-/* loop array indices */
-#define STRIPE 0
-#define LAYER 1
-#define PLANE 2
-
-/* special jbg_buf pointers (instead of NULL) */
-#define SDE_DONE ((struct jbg_buf *) -1)
-#define SDE_TODO ((struct jbg_buf *) 0)
-
-/* object code version id */
-
-const char jbg_version[] =
-" JBIG-KIT " JBG_VERSION " -- Markus Kuhn -- "
-"$Id: jbig.c,v 1.4 2004/06/12 02:33:05 rick Exp $ ";
-
-/*
- * the following array specifies for each combination of the 3
- * ordering bits, which ii[] variable represents which dimension
- * of s->sde.
- */
-static const int iindex[8][3] = {
- { 2, 1, 0 }, /* no ordering bit set */
- { -1, -1, -1}, /* SMID -> illegal combination */
- { 2, 0, 1 }, /* ILEAVE */
- { 1, 0, 2 }, /* SMID + ILEAVE */
- { 0, 2, 1 }, /* SEQ */
- { 1, 2, 0 }, /* SEQ + SMID */
- { 0, 1, 2 }, /* SEQ + ILEAVE */
- { -1, -1, -1 } /* SEQ + SMID + ILEAVE -> illegal combination */
-};
-
-
-/*
- * Array [language][message] with text string error messages that correspond
- * to return values from public functions in this library.
- */
-#define NEMSG 9 /* number of error codes */
-#define NEMSG_LANG 3 /* number of supported languages */
-static const char *errmsg[NEMSG_LANG][NEMSG] = {
- /* English (JBG_EN) */
- {
- "Everything is ok", /* JBG_EOK */
- "Reached specified maximum size", /* JBG_EOK_INTR */
- "Unexpected end of data", /* JBG_EAGAIN */
- "Not enough memory available", /* JBG_ENOMEM */
- "ABORT marker found", /* JBG_EABORT */
- "Unknown marker segment encountered", /* JBG_EMARKER */
- "Incremental BIE does not fit to previous one", /* JBG_ENOCONT */
- "Invalid data encountered", /* JBG_EINVAL */
- "Unimplemented features used" /* JBG_EIMPL */
- },
- /* German (JBG_DE_8859_1) */
- {
- "Kein Problem aufgetreten", /* JBG_EOK */
- "Angegebene maximale Bildgr\366\337e erreicht", /* JBG_EOK_INTR */
- "Unerwartetes Ende der Daten", /* JBG_EAGAIN */
- "Nicht gen\374gend Speicher vorhanden", /* JBG_ENOMEM */
- "Es wurde eine Abbruch-Sequenz gefunden", /* JBG_EABORT */
- "Eine unbekannte Markierungssequenz wurde gefunden", /* JBG_EMARKER */
- "Neue Daten passen nicht zu vorangegangenen Daten", /* JBG_ENOCONT */
- "Es wurden ung\374ltige Daten gefunden", /* JBG_EINVAL */
- "Noch nicht implementierte Optionen wurden benutzt" /* JBG_EIMPL */
- },
- /* German (JBG_DE_UTF_8) */
- {
- "Kein Problem aufgetreten", /* JBG_EOK */
- "Angegebene maximale Bildgr\303\266\303\237e erreicht", /* JBG_EOK_INTR */
- "Unerwartetes Ende der Daten", /* JBG_EAGAIN */
- "Nicht gen\303\274gend Speicher vorhanden", /* JBG_ENOMEM */
- "Es wurde eine Abbruch-Sequenz gefunden", /* JBG_EABORT */
- "Eine unbekannte Markierungssequenz wurde gefunden", /* JBG_EMARKER */
- "Neue Daten passen nicht zu vorangegangenen Daten", /* JBG_ENOCONT */
- "Es wurden ung\303\274ltige Daten gefunden", /* JBG_EINVAL */
- "Noch nicht implementierte Optionen wurden benutzt" /* JBG_EIMPL */
- }
-};
-
-
-
-/*
- * The following three functions are the only places in this code, were
- * C library memory management functions are called. The whole JBIG
- * library has been designed in order to allow multi-threaded
- * execution. No static or global variables are used, so all fuctions
- * are fully reentrant. However if you want to use this multi-thread
- * capability and your malloc, realloc and free are not reentrant,
- * then simply add the necessary semaphores or mutex primitives below.
- * In contrast to C's malloc() and realloc(), but like C's calloc(),
- * these functions take two parameters nmemb and size that are multiplied
- * before being passed on to the corresponding C function.
- * This we can catch all overflows during a size_t multiplication a
- * a single place.
- */
-
-#ifndef SIZE_MAX
-#define SIZE_MAX ((size_t) -1) /* largest value of size_t */
-#endif
-
-static void *checked_malloc(size_t nmemb, size_t size)
-{
- void *p;
-
- /* Full manual exception handling is ugly here for performance
- * reasons. If an adequate handling of lack of memory is required,
- * then use C++ and throw a C++ exception instead of abort(). */
-
- /* assert that nmemb * size <= SIZE_MAX */
- if (size > SIZE_MAX / nmemb)
- abort();
-
[...3651 lines suppressed...]
- 2,2,2,0,2,2,2,1,2,2,0,2,2,2,1,2,2,1,2,1,2,0,2,0,2,0,2,2,2,1,2,2,
- 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,2,2,2,0,2,2,2,1,1,1,2,0,0,0,
- 2,2,2,2,2,2,2,2,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,0,2,0,0,1,2,1,1,
- 2,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,0,2,2,2,1,2,2,0,2,2,2,1,2,2,2,
- 2,1,2,1,2,0,2,0,2,1,2,2,2,0,2,2,2,2,2,0,2,2,2,1,2,0,2,0,2,1,2,1,
- 2,0,2,0,2,1,2,1,0,2,0,2,1,2,1,2,2,2,2,2,2,2,2,2,2,0,2,2,2,1,2,2,
- 2,2,2,2,2,2,2,2,0,2,0,2,1,2,1,2,2,2,2,2,2,2,2,2,0,1,0,0,1,0,1,1,
- 2,2,2,2,2,2,2,2,2,1,2,2,2,0,2,2,2,2,2,2,2,2,2,2,2,2,2,0,2,2,2,1,
- 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 0,0,0,0,1,1,1,1,0,0,0,0,1,1,1,1,2,2,1,2,2,2,0,2,2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,1,2,2,1,0,2,0,2,2,2,1,2,2,2,
- 2,2,2,2,2,2,2,2,1,2,2,2,0,2,2,2,2,2,2,0,2,2,2,1,2,2,0,2,2,2,1,2,
- 2,0,2,0,2,1,2,1,0,2,0,2,1,2,1,2,2,2,2,2,2,2,2,2,2,0,2,2,2,1,2,2,
- 0,2,0,0,1,2,1,1,2,0,0,0,2,1,1,1,2,2,2,2,2,2,2,2,1,0,1,2,0,1,0,2,
- 2,2,2,2,2,2,2,2,2,0,2,2,2,1,2,2,2,1,2,2,2,0,2,2,1,1,2,2,0,0,2,2,
- 0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 2,1,2,1,2,0,2,0,2,1,2,2,2,0,2,2,2,0,2,2,2,1,2,2,0,2,2,2,1,2,2,2,
- 0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,2,2,2,1,1,2,2,2,0,2,2,2,
- 2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,2,0,2,1,2,1,2,
- 0,0,0,0,1,1,1,1,2,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,0,2,2,2,1,2,2,
- 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,2,1,2,0,2,0,2,2,0,2,2,2,1,2,
- 2,0,2,0,2,1,2,1,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,0,2,2,2,1,
- 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,
- 0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,
- 2,2,2,1,2,2,2,0,1,1,2,1,0,0,2,0,2,0,2,2,2,1,2,2,0,2,2,2,1,2,2,2,
- 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,2,2,2,0,2,2,2,2,0,2,2,2,1,2,
- 2,0,2,0,2,1,2,1,0,2,0,2,1,2,1,2,2,2,2,2,2,2,2,2,2,1,2,2,2,0,2,2,
- 0,2,0,0,1,2,1,1,0,2,0,2,1,2,1,2,2,2,2,2,2,2,2,2,0,0,0,2,1,1,1,2,
- 2,2,2,2,2,2,2,2,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,0,2,2,2,1,
- 2,2,2,2,2,2,2,2,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 2,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,0,0,2,1,1,1,2,0,0,2,2,2,1,2,2,2,
- 2,1,2,1,2,0,2,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,2,0,0,1,2,1,1,
- 0,0,2,2,1,1,2,2,0,2,1,2,1,2,0,2,2,1,2,1,2,0,2,0,1,2,1,2,0,2,0,2,
- 2,2,2,2,2,2,2,2,1,2,1,2,0,2,0,2,2,2,2,2,2,2,2,2,2,0,2,0,2,1,2,1,
- 2,2,0,0,2,2,1,1,2,2,0,0,2,2,1,1,2,2,2,2,2,2,2,2,2,2,0,0,2,2,1,1,
- 2,2,2,2,2,2,2,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,0,2,0,0,1,2,1,1,
- 2,2,2,0,2,2,2,1,2,2,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,1,1,1,2,0,0,0,2,
- 2,2,2,2,2,2,2,2,1,1,1,2,0,0,0,2,2,2,2,2,2,2,2,2,0,2,2,2,1,2,2,2,
- 2,0,2,0,2,1,2,1,2,2,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,0,0,0,2,1,1,1,
- 2,0,2,2,2,1,2,2,0,2,2,2,1,2,2,2,2,0,2,0,2,1,2,1,2,2,2,2,2,2,2,2,
- 2,0,2,0,2,1,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 2,0,2,0,2,1,2,1,2,1,2,0,2,0,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 2,0,2,0,2,1,2,1,1,2,1,2,0,2,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,1,2,1,2,0,2,0,2,2,1,2,1,2,0,2,0,2,2,2,2,2,2,2,2,
- 2,0,2,1,2,1,2,0,0,2,1,2,1,2,0,2,2,2,2,2,2,2,2,2,2,2,2,0,2,2,2,1,
- 2,0,2,0,2,1,2,1,2,2,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,0,2,0,2,1,2,1,
- 2,2,2,2,2,2,2,2,2,2,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 2,1,2,1,2,0,2,0,1,1,1,2,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,0,2,2,2,1,
- 2,0,2,0,2,1,2,1,2,2,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,2,2,2,0,2,2,2,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
-};
--- foo2zjs/Makefile.orig 2008-03-21 15:21:41.000000000 +0000
+++ foo2zjs/Makefile 2008-03-26 09:32:51.000000000 +0000
@@ -122,9 +122,6 @@ FILES = \
Makefile \
foo2zjs.c \
foo2zjs.1in \
- jbig.c \
- jbig.h \
- jbig_tab.c \
zjsdecode.c \
zjsdecode.1in \
zjs.h \
@@ -239,7 +236,7 @@ MANPAGES+= foo2qpdl-wrapper.1 foo2qpdl.1
MANPAGES+= foo2slx-wrapper.1 foo2slx.1 slxdecode.1
MANPAGES+= foo2hiperc-wrapper.1 foo2hiperc.1 hipercdecode.1
MANPAGES+= foo2zjs-pstops.1 arm2hpdl.1 usb_printerid.1
-LIBJBG = jbig.o jbig_tab.o
+LIBJBG = -ljbig
BINPROGS=
ifeq ($(UNAME),Linux)
@@ -376,29 +373,29 @@ all-done:
@echo "yourself."
-foo2zjs: foo2zjs.o $(LIBJBG)
+foo2zjs: foo2zjs.o
$(CC) $(CFLAGS) -o $@ foo2zjs.o $(LIBJBG)
-foo2hp: foo2hp.o $(LIBJBG)
+foo2hp: foo2hp.o
# $(CC) $(CFLAGS) -o $@ foo2hp.o $(LIBJBG) /usr/local/lib/libdmalloc.a
$(CC) $(CFLAGS) -o $@ foo2hp.o $(LIBJBG)
-foo2xqx: foo2xqx.o $(LIBJBG)
+foo2xqx: foo2xqx.o
$(CC) $(CFLAGS) -o $@ foo2xqx.o $(LIBJBG)
-foo2lava: foo2lava.o $(LIBJBG)
+foo2lava: foo2lava.o
$(CC) $(CFLAGS) -o $@ foo2lava.o $(LIBJBG)
-foo2qpdl: foo2qpdl.o $(LIBJBG)
+foo2qpdl: foo2qpdl.o
$(CC) $(CFLAGS) -o $@ foo2qpdl.o $(LIBJBG)
-foo2oak: foo2oak.o $(LIBJBG)
+foo2oak: foo2oak.o
$(CC) $(CFLAGS) -o $@ foo2oak.o $(LIBJBG)
-foo2slx: foo2slx.o $(LIBJBG)
+foo2slx: foo2slx.o
$(CC) $(CFLAGS) -o $@ foo2slx.o $(LIBJBG)
-foo2hiperc: foo2hiperc.o $(LIBJBG)
+foo2hiperc: foo2hiperc.o
$(CC) $(CFLAGS) -o $@ foo2hiperc.o $(LIBJBG)
@@ -461,37 +458,37 @@ getweb: getweb.in Makefile
all-icc2ps:
cd icc2ps; $(MAKE) all
-ok: ok.o $(LIBJBG)
+ok: ok.o
$(CC) $(CFLAGS) ok.o $(LIBJBG) -o $@
-zjsdecode: zjsdecode.o $(LIBJBG)
+zjsdecode: zjsdecode.o
$(CC) $(CFLAGS) zjsdecode.o $(LIBJBG) -o $@
-hipercdecode: hipercdecode.o $(LIBJBG)
+hipercdecode: hipercdecode.o
$(CC) $(CFLAGS) hipercdecode.o $(LIBJBG) -o $@
-splcdecode: splcdecode.o $(LIBJBG)
+splcdecode: splcdecode.o
$(CC) $(CFLAGS) splcdecode.o $(LIBJBG) -lz -o $@
-xqxdecode: xqxdecode.o $(LIBJBG)
+xqxdecode: xqxdecode.o
$(CC) $(CFLAGS) xqxdecode.o $(LIBJBG) -o $@
-lavadecode: lavadecode.o $(LIBJBG)
+lavadecode: lavadecode.o
$(CC) $(CFLAGS) lavadecode.o $(LIBJBG) -o $@
-qpdldecode: qpdldecode.o $(LIBJBG)
+qpdldecode: qpdldecode.o
$(CC) $(CFLAGS) qpdldecode.o $(LIBJBG) -o $@
-opldecode: opldecode.o $(LIBJBG)
+opldecode: opldecode.o
$(CC) $(CFLAGS) -g opldecode.o $(LIBJBG) -o $@
-oakdecode: oakdecode.o $(LIBJBG)
+oakdecode: oakdecode.o
$(CC) $(CFLAGS) -g oakdecode.o $(LIBJBG) -o $@
-slxdecode: slxdecode.o $(LIBJBG)
+slxdecode: slxdecode.o
$(CC) $(CFLAGS) slxdecode.o $(LIBJBG) -o $@
-gipddecode: gipddecode.o $(LIBJBG)
+gipddecode: gipddecode.o
$(CC) $(CFLAGS) gipddecode.o $(LIBJBG) -o $@
#
@@ -925,21 +922,18 @@ clean:
#
# Header dependencies
#
-zjsdecode.o: zjs.h jbig.h
-foo2zjs.o: zjs.h jbig.h
-jbig.o: jbig.h
-foo2hp.o: zjs.h jbig.h cups.h
-foo2xqx.o: xqx.h jbig.h
-foo2lava.o: jbig.h
-foo2qpdl.o: jbig.h qpdl.h
-foo2slx.o: slx.h jbig.h
-foo2hiperc.o: jbig.h hiperc.h
-hipercdecode.o: hiperc.h jbig.h
-lavadecode.o: jbig.h
-qpdldecode.o: jbig.h
-opldecode.o: jbig.h
-slxdecode.o: slx.h jbig.h
-xqxdecode.o: xqx.h jbig.h
+zjsdecode.o: zjs.h
+foo2zjs.o: zjs.h
+jbig.o:
+foo2hp.o: zjs.h cups.h
+foo2xqx.o: xqx.h
+foo2lava.o:
+foo2qpdl.o: qpdl.h
+foo2slx.o: slx.h
+foo2hiperc.o: hiperc.h
+hipercdecode.o: hiperc.h
+slxdecode.o: slx.h
+xqxdecode.o: xqx.h
#
# foo2* Regression tests
--- NEW FILE foo2zjs.spec ---
Name: foo2zjs
Version: 0.20080324
Release: 1%{?dist}
Summary: Linux printer driver for ZjStream protocol
Group: System Environment/Libraries
License: GPL
URL:
http://foo2zjs.rkkda.com/
Source0:
http://foo2zjs.rkkda.com/foo2zjs.tar.gz
Patch0: foo2zjs-dynamic-jbig.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: jbigkit-devel groff ghostscript
Requires: lcms
%package -n foo2hp
Summary: Linux printer driver for HP 1600, HP 2600n
Group: System Environment/Libraries
Requires: lcms foo2zjs
%package -n foo2xqx
Summary: Linux printer driver for HP LaserJet M1005 MFP
Group: System Environment/Libraries
Requires: lcms foo2zjs
%package -n foo2lava
Summary: Linux printer driver for Zenographics LAVAFLOW protocol
Group: System Environment/Libraries
Requires: lcms foo2zjs
%package -n foo2qpdl
Summary: Linux printer driver for Samsung CLP-300, CLP-600, CLP-3160
Group: System Environment/Libraries
Requires: lcms foo2zjs
%package -n foo2slx
Summary: Linux printer driver for SLX protocol (Lexmark C500n etc.)
Group: System Environment/Libraries
Requires: lcms foo2zjs
%package -n foo2hiperc
Summary: Linux printer driver for HIPERC protocol (Oki C3400n etc.)
Group: System Environment/Libraries
Requires: lcms foo2zjs
%description
foo2zjs is an open source printer driver for printers that use the
Zenographics ZjStream wire protocol for their print data, such as the
Minolta/QMS magicolor 2300 DL or Konica Minolta magicolor 2430
DL. These printers are often erroneously referred to as winprinters or
GDI printers. However, Microsoft GDI only mandates the API between an
application and the printer driver, not the protocol on the wire
between the printer driver and the printer. In fact, ZjStream printers
are raster printers which happen to use a very efficient wire protocol
which was developed by Zenographics and licensed by most major printer
manufacturers for at least some of their product lines. ZjStream is
just one of many wire protocols that are in use today, such as
Postscript, PCL, Epson, etc.
Users of this package are requested to visit the author's web page at
http://foo2zjs.rkkda.com/ and consider contributing.
%description -n foo2hp
foo2hp is an open source printer driver for printers that use the
Zenographics ZjStream wire protocol for their print data, such as the
HP Color LaserJet 2600n. These printers are often erroneously referred
to as winprinters or GDI printers. However, Microsoft GDI only
mandates the API between an application and the printer driver, not
the protocol on the wire between the printer driver and the
printer. In fact, ZjStream printers are raster printers which happen
to use a very efficient wire protocol which was developed by
Zenographics and licensed by most major printer manufacturers for at
least some of their product lines. ZjStream is just one of many wire
protocols that are in use today, such as Postscript, PCL, Epson, etc.
Users of this package are requested to visit the author's web page at
http://foo2hp.rkkda.com/ and consider contributing.
%description -n foo2xqx
foo2xqx is an open source printer driver for printers that use the
HP/Software Imaging "XQX" stream wire protocol for their print data,
such as the HP LaserJet M1005 MFP. These printers are often
erroneously referred to as winprinters or GDI printers. However,
Microsoft GDI only mandates the API between an application and the
printer driver, not the protocol on the wire between the printer
driver and the printer. In fact, "XQX" printers are raster printers
which happen to use a very efficient wire protocol which was developed
by HP/Software Imaging. "XQX" is just one of many wire protocols that
are in use today, such as Postscript, PCL, Epson, ZjStream, etc.
Users of this package are requested to visit the author's web page at
http://foo2xqx.rkkda.com/ and consider contributing.
%description -n foo2lava
foo2lava is an open source printer driver for printers that use the
Zenographics LAVAFLOW wire protocol for their print data, such as the
Konica Minolta magicolor 2530 DL or the Konica Minolta magicolor 2490
MF. These printers are often erroneously referred to as winprinters or
GDI printers. However, Microsoft GDI only mandates the API between an
application and the printer driver, not the protocol on the wire
between the printer driver and the printer. In fact, LAVAFLOW printers
are raster printers which happen to use a very efficient wire protocol
which was developed by Zenographics and licensed by most major printer
manufacturers for at least some of their product lines. LAVAFLOW is
just one of many wire protocols that are in use today, such as
Postscript, PCL, Epson, ZjStream, etc.
Users of this package are requested to visit the author's web page at
http://foo2lava.rkkda.com/ and consider contributing.
%description -n foo2qpdl
foo2qpdl is an open source printer driver for printers that use the
QPDL wire protocol for their print data, such as the Samsung CLP-300
or the Samsung CLP-600 or the Xerox Phaser 6110. These printers are
often erroneously referred to as winprinters or GDI printers. However,
Microsoft GDI only mandates the API between an application and the
printer driver, not the protocol on the wire between the printer
driver and the printer. In fact, QPDL printers are raster printers
which happen to use a very efficient wire protocol. QPDL is just one
of many wire protocols that are in use today, such as Postscript, PCL,
Epson, ZjStream, etc.
Users of this package are requested to visit the author's web page at
http://foo2qpdl.rkkda.com/ and consider contributing.
%description -n foo2slx
foo2slx is an open source printer driver for printers that use the
Software Imaging K.K. SLX wire protocol for their print data, such as
the Lexmark C500n. These printers are often erroneously referred to as
winprinters or GDI printers. However, Microsoft GDI only mandates the
API between an application and the printer driver, not the protocol on
the wire between the printer driver and the printer. In fact, SLX
printers are raster printers which happen to use a very efficient wire
protocol which was developed by Zenographics and cloned by Software
Imaging K.K. and licensed by most major printer manufacturers for at
least some of their product lines. SLX is just one of many wire
protocols that are in use today, such as Postscript, PCL, Epson,
ZjStream, etc.
Users of this package are requested to visit the author's web page at
http://foo2slx.rkkda.com/ and consider contributing.
%description -n foo2hiperc
foo2hiperc is an open source printer driver for printers that use the
HIPERC wire protocol for their print data, such as the Oki C3400n and
the Oki C5500n.
NOTE: This driver is currently in Alpha and supports uncompressed mode
only.
Users of this package are requested to visit the author's web page at
http://foo2hiperc.rkkda.com/ and consider contributing.
%prep
%setup -q -n foo2zjs
%patch0 -p1
sed -i -e s/foo2zjs-icc2ps/icc2ps/g *wrapper*
sed -i -e s/775/755/ Makefile
chmod -x COPYING
%build
make %{?_smp_mflags} CFLAGS="$RPM_OPT_FLAGS"
%install
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT%{_bindir}
mkdir -p $RPM_BUILD_ROOT%{_datadir}/foomatic/db/source/driver
mkdir -p $RPM_BUILD_ROOT%{_datadir}/foomatic/db/source/printer
mkdir -p $RPM_BUILD_ROOT%{_datadir}/foomatic/db/source/opt
mkdir -p $RPM_BUILD_ROOT%{_datadir}/cups/model
make PREFIX=$RPM_BUILD_ROOT%{_prefix} BINPROGS= install-prog \
FOODB=$RPM_BUILD_ROOT%{_datadir}/foomatic/db/source \
MODEL=$RPM_BUILD_ROOT/usr/share/cups/model \
PPD=$RPM_BUILD_ROOT/usr/share/ppd \
install-extra install-crd install-man install-foo install-ppd
# Remove remnants of GPL-violating foo2oak stuff.
rm -f $RPM_BUILD_ROOT%{_bindir}/*oak*
rm -f $RPM_BUILD_ROOT%{_mandir}/man1/*oak*.1
rm -f $RPM_BUILD_ROOT%{_datadir}/foomatic/db/source/opt/foo2oak*
rm -f $RPM_BUILD_ROOT%{_datadir}/foomatic/db/source/driver/foo2oak.xml
rm -f $RPM_BUILD_ROOT%{_datadir}/foomatic/db/source/printer/Generic-OAKT_Printer.xml
rm -f $RPM_BUILD_ROOT%{_datadir}/foomatic/db/source/printer/HP-Color_LaserJet_1500.xml
rm -f $RPM_BUILD_ROOT/usr/share/cups/model/Generic-OAKT_Printer.ppd.gz
rm -f $RPM_BUILD_ROOT/usr/share/cups/model/HP-Color_LaserJet_1500.ppd.gz
# Remove man page for usb_printerid which we don't ship
rm -f $RPM_BUILD_ROOT%{_mandir}/man1/usb_printerid.1
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
%{_bindir}/*zjs*
%{_datadir}/foo2zjs
%{_mandir}/man1/*zjs*
%{_datadir}/foomatic/db/source/driver/foo2zjs.xml
%{_datadir}/foomatic/db/source/opt/foo2zjs*.xml
%{_datadir}/foomatic/db/source/opt/foo2xxx*.xml
%{_datadir}/foomatic/db/source/printer/Generic-ZjStream_Printer.xml
%{_datadir}/foomatic/db/source/printer/HP-LaserJet_1*.xml
%{_datadir}/foomatic/db/source/printer/Minolta-Color_PageWorks_Pro_L.xml
%{_datadir}/foomatic/db/source/printer/Minolta-magicolor_2200_DL.xml
%{_datadir}/foomatic/db/source/printer/Minolta-magicolor_2300_DL.xml
%{_datadir}/foomatic/db/source/printer/Minolta-magicolor_2430_DL.xml
%{_datadir}/cups/model/Generic-ZjStream_Printer.ppd.gz
%{_datadir}/cups/model/HP-LaserJet_1*.ppd.gz
%{_datadir}/cups/model/Minolta-Color_PageWorks_Pro_L.ppd.gz
%{_datadir}/cups/model/Minolta-magicolor_2200_DL.ppd.gz
%{_datadir}/cups/model/Minolta-magicolor_2300_DL.ppd.gz
%{_datadir}/cups/model/Minolta-magicolor_2430_DL.ppd.gz
%files -n foo2hp
%{_bindir}/*hp*
%{_mandir}/man1/*hp*
%{_datadir}/foomatic/db/source/driver/foo2hp.xml
%{_datadir}/foomatic/db/source/opt/foo2hp*.xml
%{_datadir}/foomatic/db/source/printer/HP-Color_LaserJet_1600.xml
%{_datadir}/foomatic/db/source/printer/HP-Color_LaserJet_2600n.xml
%{_datadir}/cups/model/HP-Color_LaserJet_1600.ppd.gz
%{_datadir}/cups/model/HP-Color_LaserJet_2600n.ppd.gz
%files -n foo2xqx
%{_bindir}/*xqx*
%{_mandir}/man1/*xqx*
%{_datadir}/foomatic/db/source/driver/foo2xqx.xml
%{_datadir}/foomatic/db/source/opt/foo2xqx*.xml
%{_datadir}/foomatic/db/source/printer/HP-LaserJet_M*.xml
%{_datadir}/foomatic/db/source/printer/HP-LaserJet_P*.xml
%{_datadir}/cups/model/HP-LaserJet_M*.ppd.gz
%{_datadir}/cups/model/HP-LaserJet_P*.ppd.gz
%files -n foo2lava
%{_bindir}/*lava*
%{_bindir}/opldecode
%{_mandir}/man1/*lava*
%{_mandir}/man1/opldecode.1.gz
%{_datadir}/foomatic/db/source/driver/foo2lava.xml
%{_datadir}/foomatic/db/source/opt/foo2lava*.xml
%{_datadir}/foomatic/db/source/printer/KonicaMinolta-magicolor_2480_MF.xml
%{_datadir}/foomatic/db/source/printer/KonicaMinolta-magicolor_2490_MF.xml
%{_datadir}/foomatic/db/source/printer/KonicaMinolta-magicolor_2530_DL.xml
%{_datadir}/cups/model/KonicaMinolta-magicolor_2480_MF.ppd.gz
%{_datadir}/cups/model/KonicaMinolta-magicolor_2490_MF.ppd.gz
%{_datadir}/cups/model/KonicaMinolta-magicolor_2530_DL.ppd.gz
%files -n foo2qpdl
%{_bindir}/*qpdl*
%{_mandir}/man1/*qpdl*
%{_datadir}/foomatic/db/source/driver/foo2qpdl.xml
%{_datadir}/foomatic/db/source/opt/foo2qpdl*.xml
%{_datadir}/foomatic/db/source/printer/Samsung-CL*.xml
%{_datadir}/foomatic/db/source/printer/Xerox-Phaser-611*.xml
%{_datadir}/cups/model/Samsung-CL*.ppd.gz
%{_datadir}/cups/model/Xerox-Phaser-611*.ppd.gz
%{_datadir}/foo2qpdl/crd/
%files -n foo2slx
%{_bindir}/*slx*
%{_bindir}/gipddecode
%{_mandir}/man1/*slx*
%{_datadir}/foomatic/db/source/driver/foo2slx.xml
%{_datadir}/foomatic/db/source/opt/foo2slx*.xml
%{_datadir}/foomatic/db/source/printer/Lexmark-C500.xml
%{_datadir}/cups/model/Lexmark-C500.ppd.gz
%files -n foo2hiperc
%{_bindir}/*hiperc*
%{_mandir}/man1/*hiperc*
%{_datadir}/foomatic/db/source/driver/foo2hiperc.xml
%{_datadir}/foomatic/db/source/opt/foo2hiperc*.xml
%{_datadir}/foomatic/db/source/printer/Oki-C*.xml
%{_datadir}/cups/model/Oki-C*.ppd.gz
%doc COPYING ChangeLog INSTALL README manual.pdf
%post
/bin/rm -f /var/cache/foomatic/*
%post -n foo2hp
/bin/rm -f /var/cache/foomatic/*
%post -n foo2xqx
/bin/rm -f /var/cache/foomatic/*
%post -n foo2lava
/bin/rm -f /var/cache/foomatic/*
%post -n foo2qpdl
/bin/rm -f /var/cache/foomatic/*
%changelog
* Wed Mar 24 2008 David Woodhouse <dwmw2(a)infradead.org> 0.20080324-1
- Update to 20080324
- add foo2slx and foo2hiperc subpackage
* Wed Aug 29 2007 David Woodhouse <dwmw2(a)infradead.org> 0.20070822-1
- Update to 2007-08-22 release
- Add foo2qpdl subpackage
- Add %%post script to remove foomatic cache
* Mon Jan 29 2007 David Woodhouse <dwmw2(a)infradead.org> 0.20070128-1
- Update to 2007-01-28 release
* Mon Jan 29 2007 David Woodhouse <dwmw2(a)infradead.org> 0.20070127-1
- Update to 2007-01-27 release
- Add foo2xqx, foo2lava subpackages
- Include foomatic files which are now absent from Fedora foomatic
* Wed Sep 13 2006 David Woodhouse <dwmw2(a)infradead.org> 0.20060929-1
- Review fixes
* Wed Sep 13 2006 David Woodhouse <dwmw2(a)infradead.org> 0.20060911-1
- Initial build.
Index: .cvsignore
===================================================================
RCS file: /cvs/free/rpms/foo2zjs/F-8/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- .cvsignore 22 Jul 2008 16:50:22 -0000 1.1
+++ .cvsignore 3 Aug 2008 14:07:38 -0000 1.2
@@ -0,0 +1 @@
+foo2zjs.tar.gz
Index: sources
===================================================================
RCS file: /cvs/free/rpms/foo2zjs/F-8/sources,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- sources 22 Jul 2008 16:50:22 -0000 1.1
+++ sources 3 Aug 2008 14:07:38 -0000 1.2
@@ -0,0 +1 @@
+85351317f8aa7028f5bbea638a2f7846 foo2zjs.tar.gz