rpms/xv/devel xv-3.10a-deepcolor.patch, NONE, 1.1 xv-3.10a-gifpatch, NONE, 1.1 xv-3.10a-glibc.patch, NONE, 1.1 xv-3.10a-grabpatch, NONE, 1.1 xv-3.10a-linux.patch, NONE, 1.1 xv-3.10a-longname.patch, NONE, 1.1 xv-3.10a-pdf.patch, NONE, 1.1 xv-3.10a-vdcomp.asp.patch, NONE, 1.1 xv-3.10a.JPEG-patch, NONE, 1.1 xv-3.10a.TIFF-patch, NONE, 1.1 xv.spec, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2

Cristian Gafton (gafton) fedora-extras-commits at redhat.com
Tue Dec 7 22:42:13 UTC 2004


Changeset from: gafton

Update of /cvs/extras/rpms/xv/devel
In directory cvs.fedora.redhat.com:/tmp/cvs-serv23652/devel

Modified Files:
	.cvsignore sources 
Added Files:
	xv-3.10a-deepcolor.patch xv-3.10a-gifpatch 
	xv-3.10a-glibc.patch xv-3.10a-grabpatch xv-3.10a-linux.patch 
	xv-3.10a-longname.patch xv-3.10a-pdf.patch 
	xv-3.10a-vdcomp.asp.patch xv-3.10a.JPEG-patch 
	xv-3.10a.TIFF-patch xv.spec 
Log Message:
auto-import xv-3.10a-23 on branch devel from xv-3.10a-23.src.rpm

xv-3.10a-deepcolor.patch:

--- NEW FILE xv-3.10a-deepcolor.patch ---
This fixes a byte-ordering problem when displaying 8-bit colormapped images
on certain 12, 15, or 16-bit displays.

Thanks to Mr. Ryo Shimizu for coming up with the patch, and to Yuuki Harano
for sending it to me.

--jhb

*** xvimage.c.old	Fri Jan 13 19:11:36 1995
--- xvimage.c	Fri Oct 16 12:34:11 1998
***************
*** 1736,1745 ****
      if (xim->byte_order == MSBFirst) {
        for (i=wide*high, ip=imagedata; i>0; i--,pp++) {
  	if (((i+1)&0x1ffff) == 0) WaitCursor();
! 	if (dithpic) {
! 	  *ip++ = ((*pp) ? white : black) & 0xffff;
! 	}
! 	else *ip++ = xcolors[*pp] & 0xffff;
        }
      }
      else {   /* LSBFirst */
--- 1736,1747 ----
      if (xim->byte_order == MSBFirst) {
        for (i=wide*high, ip=imagedata; i>0; i--,pp++) {
  	if (((i+1)&0x1ffff) == 0) WaitCursor();
! 
! 	if (dithpic) xcol = ((*pp) ? white : black) & 0xffff;
! 		else xcol = xcolors[*pp] & 0xffff;
! 
! 	*((unsigned char *)ip)++ = (xcol>>8) & 0xff;
! 	*((unsigned char *)ip)++ = (xcol) & 0xff;
        }
      }
      else {   /* LSBFirst */
***************
*** 1749,1756 ****
  	if (dithpic) xcol = ((*pp) ? white : black) & 0xffff;
  	        else xcol = xcolors[*pp];
  
! 	/*  WAS *ip++ = ((xcol>>8) & 0xff) | ((xcol&0xff) << 8);  */
! 	*ip++ = (unsigned short) (xcol);
        }
      }
    }
--- 1751,1758 ----
  	if (dithpic) xcol = ((*pp) ? white : black) & 0xffff;
  	        else xcol = xcolors[*pp];
  
! 	*((unsigned char *)ip)++ = (xcol) & 0xff;
! 	*((unsigned char *)ip)++ = (xcol>>8) & 0xff;
        }
      }
    }


--- NEW FILE xv-3.10a-gifpatch ---
This patch fixes a bug in XVs gif-reading code.  The bug could conceivably
hit when viewing a number of interlaced GIFs.  Thanks to Mark Hanson 
<mbh at netcom.com> for spotting this one.  

--jhb, 10/29/98


*** xvgif.c.old	Tue Jan 10 14:54:41 1995
--- xvgif.c	Thu Oct 29 17:43:30 1998
***************
*** 113,119 ****
    int            aspect, gotimage;
  
    /* initialize variables */
!   BitOffset = XC = YC = Pass = OutCount = gotimage = 0;
    RawGIF = Raster = pic8 = NULL;
    gif89 = 0;
  
--- 113,120 ----
    int            aspect, gotimage;
  
    /* initialize variables */
!   BitOffset = XC = YC = OutCount = gotimage = 0;
!   Pass = -1;
    RawGIF = Raster = pic8 = NULL;
    gif89 = 0;
  
***************
*** 692,698 ****
  {
    static byte *ptr = NULL;
    static int   oldYC = -1;
!   
    if (oldYC != YC) {  ptr = pic8 + YC * Width;  oldYC = YC; }
    
    if (YC<Height)
--- 693,704 ----
  {
    static byte *ptr = NULL;
    static int   oldYC = -1;
! 
!   if (Pass == -1) {  /* first time through - init stuff */
!     oldYC = -1;
!     Pass = 0;
!   }
! 
    if (oldYC != YC) {  ptr = pic8 + YC * Width;  oldYC = YC; }
    
    if (YC<Height)

xv-3.10a-glibc.patch:

--- NEW FILE xv-3.10a-glibc.patch ---
--- xv-3.10a/tiff/Makefile.ewt	Thu Aug 29 16:42:28 1996
+++ xv-3.10a/tiff/Makefile	Thu Aug 29 16:42:33 1996
@@ -36,7 +36,7 @@
 IPATH= -I.
 
 COPTS=	-O
-CFLAGS=	${COPTS} ${IPATH}
+CFLAGS=	${COPTS} ${IPATH} -D_BSD_SOURCE
 
 INCS=	tiff.h tiffio.h
 
--- xv-3.10a/xv.h.ewt	Thu Aug 29 16:44:24 1996
+++ xv-3.10a/xv.h	Thu Aug 29 16:44:46 1996
@@ -114,8 +114,8 @@
 
 #ifndef VMS
 #  include <errno.h>
-   extern int   errno;             /* SHOULD be in errno.h, but often isn't */
-#  ifndef __NetBSD__
+#  if !defined(__NetBSD__) && !defined(__GNU_LIBRARY__)
+     extern int   errno;             /* SHOULD be in errno.h, but often isn't */
      extern char *sys_errlist[];     /* this too... */
 #  endif
 #endif
--- xv-3.10a/Makefile.djb	Thu Oct 16 18:05:17 1997
+++ xv-3.10a/Makefile	Thu Oct 16 18:06:51 1997
@@ -14,7 +14,7 @@
 #       -Wuninitialized -Wparentheses
 
 
-CCOPTS = -O -L/usr/X11R6/lib
+CCOPTS = -O -L/usr/X11R6/lib -D_BSD_SOURCE
 
 
 ### NOTE: Sun running OpenWindows:
--- xv-3.10a/Makefile.djb	Thu Oct 16 18:33:53 1997
+++ xv-3.10a/Makefile	Thu Oct 16 18:34:07 1997
@@ -67,9 +67,7 @@
 ### if, for whatever reason, you're unable to get the PNG library to compile
 ### on your machine, *COMMENT OUT* the following lines
 ###
-ZLIBDIR = /usr/local/src/zlib
-ZLIBINC = -I$(ZLIBDIR)
-ZLIBLIB = -L$(ZLIBDIR) -lz
+ZLIBLIB = -lz
 
 
 ###


--- NEW FILE xv-3.10a-grabpatch ---
This patch fixes problems with the Grab function going out to lunch and/or 
getting all weird-ass on some X servers.

*** xv-3.10a/xvgrab.c	Thu Dec 22 17:34:47 1994
--- xv-3.10a/xvgrab.c	Fri Apr 28 02:09:22 1995
***************
*** 341,356 ****
  	 ConfigureNotify on mainW */
  
        state = 0;
!       while (1) {
  	XEvent event;
  	XNextEvent(theDisp, &event);
  	HandleEvent(&event, &i);
  
! 	if (state==0 && event.type == MapNotify &&
! 	    event.xmap.window == mainW) state = 1;
  
! 	if (state==1 && event.type == ConfigureNotify && 
! 	    event.xconfigure.window == mainW) break;
        }
  
        if (DEBUG) fprintf(stderr,"==after remapping mainW, GOT Config.\n");
--- 317,332 ----
  	 ConfigureNotify on mainW */
  
        state = 0;
!       while (state != 3) {
  	XEvent event;
  	XNextEvent(theDisp, &event);
  	HandleEvent(&event, &i);
  
! 	if (!(state&1) && event.type == MapNotify &&
! 	    event.xmap.window == mainW) state |= 1;
  
! 	if (!(state&2) && event.type == ConfigureNotify && 
! 	    event.xconfigure.window == mainW) state |= 2;
        }
  
        if (DEBUG) fprintf(stderr,"==after remapping mainW, GOT Config.\n");

xv-3.10a-linux.patch:

--- NEW FILE xv-3.10a-linux.patch ---
diff -ur xv-3.10a.orig/Makefile xv-3.10a/Makefile
--- xv-3.10a.orig/Makefile	Mon Jan 23 15:20:54 1995
+++ xv-3.10a/Makefile	Thu Aug 17 13:03:25 1995
@@ -1,8 +1,8 @@
 # Makefile for xv
 
 # your C compiler (and options) of choice
-CC = cc
-# CC = gcc -ansi
+#CC = cc
+CC = gcc -ansi
 
 # use this if you're using 'cc' on a DEC Alpha (OSF/1) or MIPS (Ultrix) system:
 # CC = cc -std1 -Olimit 750
@@ -14,7 +14,7 @@
 #       -Wuninitialized -Wparentheses
 
 
-CCOPTS = -O 
+CCOPTS = -O -L/usr/X11R6/lib
 
 
 ### NOTE: Sun running OpenWindows:
@@ -28,10 +28,10 @@
 
 
 ### Installation locations
-BINDIR = /usr/local/bin
-MANDIR = /usr/local/man/man1
+BINDIR = /usr/X11R6/bin
+MANDIR = /usr/man/man1
 MANSUF = 1
-LIBDIR = /usr/local/lib
+LIBDIR = /usr/lib
 
 
 buildit: all
@@ -46,13 +46,13 @@
 ### on your machine, *COMMENT OUT* the following lines
 ###
 JPEG    = -DDOJPEG
-JPEGDIR = jpeg
-JPEGINC = -I$(JPEGDIR)
-JPEGLIB = $(JPEGDIR)/libjpeg.a
-$(JPEGDIR)/jconfig.h:
-	cd $(JPEGDIR) ; ./configure CC='$(CC)'
-$(JPEGLIB):  $(JPEGDIR)/jconfig.h
-	cd $(JPEGDIR) ; make
+#JPEGDIR = jpeg
+#JPEGINC = -I$(JPEGDIR)
+JPEGLIB = -ljpeg
+#$(JPEGDIR)/jconfig.h:
+	#cd $(JPEGDIR) ; ./configure CC='$(CC)'
+#$(JPEGLIB):  $(JPEGDIR)/jconfig.h
+	#cd $(JPEGDIR) ; make
 
 
 ###
@@ -102,7 +102,7 @@
 
 
 ### for LINUX, uncomment the following line
-#MCHN = -DLINUX
+MCHN = -DLINUX
 
 
 # For SCO 1.1 (UNIX 3.2v2) machines, uncomment the following:
@@ -144,7 +144,7 @@
 
 # if your machine has the usleep() function, uncomment the following line:
 # if it doesn't, or you're not sure, leave this line alone.
-#TIMERS = -DUSLEEP
+TIMERS = -DUSLEEP
 
 
 # if XV locks up whenever you click on *any* of the buttons, the Timer() 
diff -ur xv-3.10a.orig/config.h xv-3.10a/config.h
--- xv-3.10a.orig/config.h	Thu Jan  5 13:49:21 1995
+++ xv-3.10a/config.h	Thu Aug 17 13:01:41 1995
@@ -13,14 +13,14 @@
  * definition appropriately. (use 'which gunzip' to find if you have gunzip, 
  * and where it lives)
  */
-#undef USE_GUNZIP
+#define USE_GUNZIP
 
 #ifdef USE_GUNZIP
-#  ifdef VMS
-#    define GUNZIP "UNCOMPRESS"
-#  else
-#    define GUNZIP "/usr/local/bin/gunzip -q"
-#  endif
+#ifdef VMS
+#define GUNZIP "UNCOMPRESS"
+#else
+#define GUNZIP "/bin/gunzip -q"
+#endif
 #endif
 
 
@@ -88,9 +88,9 @@
  * should not need to be changed
  */
 
-/* #define GS_PATH "/usr/local/bin/gs" */
-/* #define GS_LIB  "."                 */
-/* #define GS_DEV  "ppmraw"            */
+#define GS_PATH "/usr/bin/gs"
+#define GS_LIB  "." 
+#define GS_DEV  "ppmraw"
 
 
 /***************************************************************************
@@ -103,7 +103,7 @@
  * change 'undef' to 'define' in the following line
  */
 
-#undef USEOLDPIC
+#define USEOLDPIC
 
 
 /***************************************************************************
diff -ur xv-3.10a.orig/xvps.c xv-3.10a/xvps.c
--- xv-3.10a.orig/xvps.c	Thu Dec 22 17:34:42 1994
+++ xv-3.10a/xvps.c	Thu Aug 17 13:01:41 1995
@@ -1564,7 +1564,7 @@
   /* build command string */
 
 #ifndef VMS  /* VMS needs quotes around mixed case command lines */
-  sprintf(tmp, "%s -sDEVICE=%s -r%d -q -dNOPAUSE -sOutputFile=%s%%d ",
+  sprintf(tmp, "%s -sDEVICE=%s -r%d -q -dSAFER -dNOPAUSE -sOutputFile=%s%%d ",
 	  GS_PATH, gsDev, gsRes, tmpname);
 #else
   sprintf(tmp, 
--- xv-3.10a/Makefile.djb	Thu Oct 16 18:23:06 1997
+++ xv-3.10a/Makefile	Thu Oct 16 18:23:53 1997
@@ -60,9 +60,7 @@
 ### on your machine, *COMMENT OUT* the following lines
 ###
 PNG    = -DDOPNG
-PNGDIR = /usr/local/src/libpng
-PNGINC = -I$(PNGDIR)
-PNGLIB = -L$(PNGDIR) -lpng
+PNGLIB = -lpng
 
 
 ###

xv-3.10a-longname.patch:

--- NEW FILE xv-3.10a-longname.patch ---
From: Michael Rausch <M.Rausch at Ernie.MI.Uni-Koeln.DE>
Subject: bug in xv visual schnauzer

while using xv's visual schnauzer, I ran across some problems with rather
long file names. Namely these were (spurious) segmentation faults when
generation icons or selecting icons with the rubber-band.
The problem turned out to be a strncpy() without appending a terminating
null byte in case the limiting length was reached. Appended to this mail
you'll find a set of context diffs where this specific and other possible
occurances of the same bug are fixed.
I think it will be not too hard to integrate the patches into your actual
working version if patch should fail on them. Speaking of which, when do
you think we can expect a new (bigger, better, etc.) version of xv?

Ciao
	Michael

---*snip*---*snip*---*snip*--

diff -ru /tmp/xv-3.10a.orig/xvbrowse.c xv-3.10a/xvbrowse.c
--- xv-3.10a.orig/xvbrowse.c	Thu Jan 19 18:49:17 1995
+++ xv-3.10a/xvbrowse.c	Mon Feb  5 23:46:28 1996
@@ -956,6 +956,7 @@
      char *str;
 {
   strncpy(br->dispstr, str, (size_t) 256);
+  br->dispstr[255] = '\0';
   drawBrowStr(br);
   XFlush(theDisp);
 }
@@ -1490,6 +1491,7 @@
   if (StringWidth(str) > ISPACE_WIDE-6) {
     int dotpos; 
     strncpy(tmpstr, str, (size_t) 56);
+    tmpstr[56] = '\0'; /* MR: otherwise it dies on long file names */
     dotpos = strlen(tmpstr);
     strcat(tmpstr,"...");
 
@@ -1505,7 +1507,7 @@
     nstr = tmpstr;
   }
   else nstr = str;
-  
+ 
 
   /* draw the title */
   sw = StringWidth(nstr);
diff -ru xv-3.10a.orig/xvdir.c xv-3.10a/xvdir.c
--- xv-3.10a.orig/xvdir.c	Tue Jan  3 22:21:39 1995
+++ xv-3.10a/xvdir.c	Mon Feb  5 21:49:21 1996
@@ -1200,6 +1200,7 @@
      char *st;
 {
   strncpy(deffname, st, (size_t) MAXFNLEN-1);
+  deffname[MAXFNLEN-1] = '\0';
   setFName(st);
 }
 
diff -ru xv-3.10a.orig/xvpopup.c xv-3.10a/xvpopup.c
--- xv-3.10a.orig/xvpopup.c	Thu Jan 19 19:09:31 1995
+++ xv-3.10a/xvpopup.c	Mon Feb  5 21:50:13 1996
@@ -560,6 +560,7 @@
 	nams[*lenp] = (char *) malloc((size_t) 32);
 	if (!nams[*lenp]) { free(vals[*lenp]); continue; }
 	strncpy(nams[*lenp], vals[*lenp], (size_t) 31);
+	nams[*lenp][31] = '\0';
       }
       
       if (strlen(nams[*lenp]) > (size_t) 20) {   /* fix long names */
diff -ru xv-3.10a.orig/xvtext.c xv-3.10a/xvtext.c
--- xv-3.10a.orig/xvtext.c	Sat Jan 14 00:46:28 1995
+++ xv-3.10a/xvtext.c	Mon Feb  5 21:50:54 1996
@@ -293,6 +293,7 @@
   tv->textlen     = len;
   tv->freeonclose = freeonclose;
   strncpy(tv->title, title, (size_t) TITLELEN-1);
+  tv->title[TITLELEN-1] = '\0';
 
   computeText(tv);      /* compute # lines and linestarts array */

---*snap*---*snap*---*snap*--

xv-3.10a-pdf.patch:

--- NEW FILE xv-3.10a-pdf.patch ---
If you have one of the newer versions of GhostScript which can read PDF 
files, then there's no reason you can't read PDF files in XV, either.  

All you need is this simple patch to detect PDF files as being
'PostScript-y'.

--jhb, 4/1/98


*** xv.c.orig	Wed Apr  1 01:30:58 1998
--- xv.c	Wed Apr  1 01:31:52 1998
***************
*** 2625,2630 ****
--- 2625,2634 ----
  	   strncmp((char *) magicno, "\004%!", (size_t) 3)==0)   rv = RFT_PS;
  #endif
  
+ #ifdef GS_PATH
+   else if (strncmp((char *) magicno, "%PDF",   (size_t) 4)==0)   rv = RFT_PS;
+ #endif
+ 
    return rv;
  }
  

xv-3.10a-vdcomp.asp.patch:

--- NEW FILE xv-3.10a-vdcomp.asp.patch ---
diff -ur xv-3.10a/vdcomp.c xv-3.10a.new/vdcomp.c
--- xv-3.10a/vdcomp.c	Fri Dec 23 01:34:47 1994
+++ xv-3.10a.new/vdcomp.c	Thu Oct 18 17:04:22 2001
@@ -580,6 +580,7 @@
 
 
   total_bytes = 0;
+  open_files(&host);
   do {
     length = read_var(ibuf,host);
     ibuf[length] = '\0';
@@ -605,7 +606,6 @@
 
       sscanf(ibuf+35,"%d",&record_bytes);
       if (record_bytes != 836) record_bytes = 1204;
-      open_files(&host);
 
       /* now we can write out the SFDU, comment and Record Type labels. */
       if (record_bytes == 836)


--- NEW FILE xv-3.10a.JPEG-patch ---
You'll need to apply the following (trivial) patch to get XV 3.10a to compile
with version 6 of the Independent JPEG Group's JPEG library, which
supports progressive JPEG and such.  

Note that XV 3.10a is still shipped with version 5a of said library.  If 
you'd like the newer library, it is available for anonymous ftp on 
ftp.cs.columbia.edu, in /jpeg/src.

John Bradley
-----------------------------------------------------------------------------


*** xvjpeg.c.old	Thu Jan  5 03:17:13 1995
--- xvjpeg.c	Tue Jul 23 16:37:01 1996
***************
*** 51,61 ****
  static    void         clickJD            PARM((int, int));
  static    void         doCmd              PARM((int));
  static    void         writeJPEG          PARM((void));
! METHODDEF void         xv_error_exit      PARM((j_common_ptr));
! METHODDEF void         xv_error_output    PARM((j_common_ptr));
! METHODDEF void         xv_prog_meter      PARM((j_common_ptr));
  static    unsigned int j_getc             PARM((j_decompress_ptr));
! METHODDEF boolean      xv_process_comment PARM((j_decompress_ptr));
  static    int          writeJFIF          PARM((FILE *, byte *, int,int,int));
  
  
--- 51,61 ----
  static    void         clickJD            PARM((int, int));
  static    void         doCmd              PARM((int));
  static    void         writeJPEG          PARM((void));
! METHODDEF(void)        xv_error_exit      PARM((j_common_ptr));
! METHODDEF(void)        xv_error_output    PARM((j_common_ptr));
! METHODDEF(void)        xv_prog_meter      PARM((j_common_ptr));
  static    unsigned int j_getc             PARM((j_decompress_ptr));
! METHODDEF(boolean)     xv_process_comment PARM((j_decompress_ptr));
  static    int          writeJFIF          PARM((FILE *, byte *, int,int,int));
  
  
***************
*** 400,406 ****
  
  
  /**************************************************/
! METHODDEF void xv_error_exit(cinfo) 
       j_common_ptr cinfo;
  {
    my_error_ptr myerr;
--- 400,406 ----
  
  
  /**************************************************/
! METHODDEF(void) xv_error_exit(cinfo) 
       j_common_ptr cinfo;
  {
    my_error_ptr myerr;
***************
*** 412,418 ****
  
  
  /**************************************************/
! METHODDEF void xv_error_output(cinfo) 
       j_common_ptr cinfo;
  {
    my_error_ptr myerr;
--- 412,418 ----
  
  
  /**************************************************/
! METHODDEF(void) xv_error_output(cinfo) 
       j_common_ptr cinfo;
  {
    my_error_ptr myerr;
***************
*** 426,432 ****
  
  
  /**************************************************/
! METHODDEF void xv_prog_meter(cinfo)
       j_common_ptr cinfo;
  {
    struct jpeg_progress_mgr *prog;
--- 426,432 ----
  
  
  /**************************************************/
! METHODDEF(void) xv_prog_meter(cinfo)
       j_common_ptr cinfo;
  {
    struct jpeg_progress_mgr *prog;
***************
*** 671,677 ****
  
  
  /**************************************************/
! METHODDEF boolean xv_process_comment(cinfo)
       j_decompress_ptr cinfo;
  {
    int          length, hasnull;
--- 671,677 ----
  
  
  /**************************************************/
! METHODDEF(boolean) xv_process_comment(cinfo)
       j_decompress_ptr cinfo;
  {
    int          length, hasnull;


--- NEW FILE xv-3.10a.TIFF-patch ---
The following patch should allow you to compile XV 3.10a against the latest
version of Sam Leffler's TIFF Library (libtiff 3.4).  

You do *not* need to apply this patch to compile XV 3.10a against the
older version of the TIFF library (3.3) that is included in the XV
3.10a distribution.  This is only necessary if you wish to upgrade to 
the newer version of the TIFF library.

You can get the latest version of the TIFF library via anonymous ftp on
ftp.sgi.com, in 'graphics/tiff'.

Thanks to Dan McCoy (mccoy at pixar.com) for supplying this patch!

John Bradley
-----------------------------------------------------------------------


*** xvtiff.c.orig	Fri Jan 13 14:53:34 1995
--- xvtiff.c	Thu Sep  5 16:55:46 1996
***************
*** 301,306 ****
--- 301,310 ----
  static	byte **BWmap;
  static	byte **PALmap;
  
+ /* XXXX Work around some collisions with the new library. */
+ #define tileContigRoutine _tileContigRoutine
+ #define tileSeparateRoutine _tileSeparateRoutine
+ 
  typedef void (*tileContigRoutine)   PARM((byte*, u_char*, RGBvalue*, 
  					  uint32, uint32, int, int));
  
***************
*** 340,346 ****
  					     uint32, uint32, int, int));
  static void   put4bitbwtile            PARM((byte *, u_char *, RGBvalue *,
  					     uint32, uint32, int, int));
! static void   put16bitbwtile           PARM((byte *, u_char *, RGBvalue *,
  					     uint32, uint32, int, int));
  
  static void   putRGBcontig8bittile     PARM((byte *, u_char *, RGBvalue *,
--- 344,350 ----
  					     uint32, uint32, int, int));
  static void   put4bitbwtile            PARM((byte *, u_char *, RGBvalue *,
  					     uint32, uint32, int, int));
! static void   put16bitbwtile           PARM((byte *, u_short *, RGBvalue *,
  					     uint32, uint32, int, int));
  
  static void   putRGBcontig8bittile     PARM((byte *, u_char *, RGBvalue *,
***************
*** 1218,1224 ****
   */
  static void put16bitbwtile(cp, pp, Map, w, h, fromskew, toskew)
       byte  *cp;
!      u_char *pp;
       RGBvalue *Map;
       uint32 w, h;
       int fromskew, toskew;
--- 1222,1228 ----
   */
  static void put16bitbwtile(cp, pp, Map, w, h, fromskew, toskew)
       byte  *cp;
!      u_short *pp;
       RGBvalue *Map;
       uint32 w, h;
       int fromskew, toskew;
***************
*** 1227,1234 ****
    
    while (h-- > 0) {
      for (x=w; x>0; x--) {
!       *cp++ = Map[(pp[0] << 8) + pp[1]];
!       pp += 2;
      }
      cp += toskew;
      pp += fromskew;
--- 1231,1237 ----
    
    while (h-- > 0) {
      for (x=w; x>0; x--) {
!       *cp++ = Map[*pp++];
      }
      cp += toskew;
      pp += fromskew;
***************
*** 1514,1520 ****
    case PHOTOMETRIC_MINISWHITE:
    case PHOTOMETRIC_MINISBLACK:
      switch (bitspersample) {
!     case 16: put = put16bitbwtile; break;
      case 8:  put = putgreytile;    break;
      case 4:  put = put4bitbwtile;  break;
      case 2:  put = put2bitbwtile;  break;
--- 1517,1523 ----
    case PHOTOMETRIC_MINISWHITE:
    case PHOTOMETRIC_MINISBLACK:
      switch (bitspersample) {
!     case 16: put = (tileContigRoutine) put16bitbwtile; break;
      case 8:  put = putgreytile;    break;
      case 4:  put = put4bitbwtile;  break;
      case 2:  put = put2bitbwtile;  break;


--- NEW FILE xv.spec ---
Summary: An X based image file viewer and manipulator.
Name: xv
Version: 3.10a
Release: 23
Copyright: Shareware
Group: Amusements/Graphics
Source0: ftp://ftp.cis.upenn.edu/pub/xv/xv-%{version}.tar.gz
Source1: ftp://swrinde.nde.swri.edu/pub/png/applications/xv-3.10a-png-1.2d.tar.gz
Patch0: xv-3.10a-linux.patch
Patch1: xv-3.10a.JPEG-patch
Patch2: xv-3.10a-glibc.patch
Patch3: xv-3.10a-grabpatch
Patch4: xv-3.10a-deepcolor.patch
Patch5: xv-3.10a-gifpatch
Patch6: xv-3.10a-longname.patch
Patch7: xv-3.10a-pdf.patch
Patch9: xv-3.10a.TIFF-patch
Patch10: xv-3.10a-vdcomp.asp.patch
Url: http://www.trilon.com/xv/xv.html
BuildRoot: %{_tmppath}/%{name}-%{version}-root

%package docs
Summary: Document to xv
Requires: xv, ghostscript
Group: Amusements/Graphics

%description
Xv is an image display and manipulation utility for the X Window
System.  Xv can display GIF, JPEG, TIFF, PBM, PPM, X11 bitmap, Utah
Raster Toolkit RLE, PDS/VICAR, Sun Rasterfile, BMP, PCX, IRIS RGB, XPM,
Targa, XWD, PostScript(TM) and PM format image files.  Xv is also
capable of image manipulation like cropping, expanding, taking
screenshots, etc.

%description docs
Xv is an image display and manipulation utility for the X Window
System.  Xv can display GIF, JPEG, TIFF, PBM, PPM, X11 bitmap, Utah
Raster Toolkit RLE, PDS/VICAR, Sun Rasterfile, BMP, PCX, IRIS RGB, XPM,
Targa, XWD, PostScript(TM) and PM format image files.  Xv is also
capable of image manipulation like cropping, expanding, taking
screenshots, etc.

This package contains the document to xv.

%prep
%setup -q -a 1
patch -p1 < xvpng.diff
%patch0 -p1 -b .linux
%patch1 -p0 -b .jpegpatc
%patch2 -p1 -b .glibc
%patch3 -p1 -b .grab
%patch4 -p0 -b .deepcolor
%patch5 -p0 -b .gifpatch
%patch6 -p1 -b .longname
%patch7 -p0 -b .pdfpatch
%patch9 -p0 -b .tiffpatch
%patch10 -p1 -b .vdcomppatch

%build
make 

%install
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT%{_docdir}/%{name}
mkdir -p $RPM_BUILD_ROOT/usr/X11R6/{bin,man/man1} \
	$RPM_BUILD_ROOT%{_docdir}/%{name}

make	BINDIR=$RPM_BUILD_ROOT/usr/X11R6/bin \
	MANDIR=$RPM_BUILD_ROOT/usr/X11R6/man/man1 \
	LIBDIR=$RPM_BUILD_ROOT%{_docdir}/%{name} \
	install

strip $RPM_BUILD_ROOT/usr/X11R6/bin/{xv,bggen,vdcomp,xcmap,xvpictoppm}
mkdir -p $RPM_BUILD_ROOT//etc/X11/applnk/Graphics

cat > $RPM_BUILD_ROOT/etc/X11/applnk/Graphics/xv.desktop <<EOF
[Desktop Entry]
Name=xv
Comment=An X based image file viewer and manipulator.
Exec=xv
Terminal=0
Type=Application
EOF

rm -rf $RPM_BUILD_ROOT%{_docdir}/%{name}

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-,root,root)
%doc README BUGS CHANGELOG IDEAS 
%config /etc/X11/applnk/Graphics/xv.desktop
/usr/X11R6/bin/xv
/usr/X11R6/bin/bggen
/usr/X11R6/bin/vdcomp
/usr/X11R6/bin/xcmap
/usr/X11R6/bin/xvpictoppm
/usr/X11R6/man/*/*

%files docs
%defattr(-,root,root)
%doc docs/{bmp.doc,epsf.ps,gif.ack,gif.aspect,gif87.doc,gif89.doc}
%doc docs/{help,xpm.ps,vdcomp.man,penn.policy,xv.ann,xv.blurb}
%doc docs/xvdocs.ps

%changelog
* Wed Aug 02 2000 Than Ngo <than at redhat.de>
- rebuilt against new libpng

* Mon Jul 24 2000 Prospector <prospector at redhat.com>
- rebuilt

* Thu Jul 13 2000 Than Ngo <than at redhat.de>
- use %%{_docdir}

* Tue Jul 04 2000 Trond Eivind Glomsrød <teg at redhat.com>
- fix doc inclusion

* Tue Jul 04 2000 Trond Eivind Glomsrød <teg at redhat.com>
- don't use /usr/doc directly
- use %%{_tmppath}

* Mon Jul 03 2000 Prospector <bugzilla at redhat.com>
- automatic rebuild

* Wed May 31 2000 Than Ngo <than at redhat.de>
- split into xv and xv-docs packages (Bug#11043)

* Tue May 30 2000 Ngo Than
- rebuild for 7.0
- gzip man pages
- remove wmconfig, add xv.desktop

* Fri Jul 30 1999 Tim Powers <timp at redhat.com>
- rebuilt for 6.1

* Fri Apr 23 1999 Bill Nottingham <notting at redhat.com>
- build for powertools
- apply a pile of patches

* Tue Aug  4 1998 Jeff Johnson <jbj at redhat.com>
- build root

* Wed Jun 10 1998 Prospector System <bugs at redhat.com>
- translations modified for de

* Fri May 08 1998 Prospector System <bugs at redhat.com>
- translations modified for de, fr, tr

* Wed Oct 22 1997 Donnie Barnes <djb at redhat.com>
- added wmconfig entry 

* Thu Oct 16 1997 Donnie Barnes <djb at redhat.com>
- various spec file cleanups
- added patch to manipulate PNG files

* Mon Aug 25 1997 Erik Troan <ewt at redhat.com>
- built against glibc
- incorporated new jpegv6 patch from the author's web site


Index: .cvsignore
===================================================================
RCS file: /cvs/extras/rpms/xv/devel/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- .cvsignore	7 Dec 2004 22:40:13 -0000	1.1
+++ .cvsignore	7 Dec 2004 22:42:11 -0000	1.2
@@ -0,0 +1,2 @@
+xv-3.10a-png-1.2d.tar.gz
+xv-3.10a.tar.gz


Index: sources
===================================================================
RCS file: /cvs/extras/rpms/xv/devel/sources,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- sources	7 Dec 2004 22:40:13 -0000	1.1
+++ sources	7 Dec 2004 22:42:11 -0000	1.2
@@ -0,0 +1,2 @@
+c8cbe14db6e2104ed4eb5330cdaba420  xv-3.10a-png-1.2d.tar.gz
+2d4fbeec1561304362781cc8e2f7f72d  xv-3.10a.tar.gz




More information about the scm-commits mailing list