pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/devel/spiff Fix a segfault on NetBSD/amd64 (at least):
details: https://anonhg.NetBSD.org/pkgsrc/rev/ce102f470f1d
branches: trunk
changeset: 544082:ce102f470f1d
user: bjs <bjs%pkgsrc.org@localhost>
date: Wed Jul 09 05:02:06 2008 +0000
description:
Fix a segfault on NetBSD/amd64 (at least):
- Include standard headers (stdlib.h, string.h, stdio.h) in misc.h to
avoid conflicts with built-in declarations of functions.
- Change CFLAGS= in Makefile to CFLAGS+= to use pkgsrc-provided CFLAGS.
- Include termcap.buildlink3.mk to handle termcap properly.
- Add DESTDIR support, use AUTO_MKDIRS.
- Bump PKGREVISION.
Now I can actually use it! ;)
diffstat:
devel/spiff/Makefile | 7 ++++-
devel/spiff/distinfo | 10 ++++----
devel/spiff/patches/patch-aa | 21 ++++++++++++----
devel/spiff/patches/patch-ab | 29 +++++++++++------------
devel/spiff/patches/patch-ad | 46 +++++++++++++++++++++++++++++++++---
devel/spiff/patches/patch-ae | 55 ++++++++++++++++++++++++++++++++++++++-----
6 files changed, 130 insertions(+), 38 deletions(-)
diffs (266 lines):
diff -r 87747f1f9620 -r ce102f470f1d devel/spiff/Makefile
--- a/devel/spiff/Makefile Tue Jul 08 21:55:55 2008 +0000
+++ b/devel/spiff/Makefile Wed Jul 09 05:02:06 2008 +0000
@@ -1,7 +1,8 @@
-# $NetBSD: Makefile,v 1.5 2006/03/04 21:29:30 jlam Exp $
+# $NetBSD: Makefile,v 1.6 2008/07/09 05:02:06 bjs Exp $
#
DISTNAME= spiff-1.0
+PKGREVISION= 1
CATEGORIES= devel
MASTER_SITES= http://www.darwinsys.com/freeware/
@@ -9,6 +10,10 @@
HOMEPAGE= http://www.darwinsys.com/freeware/
COMMENT= Make controlled approximate comparisons between files
+PKG_DESTDIR_SUPPORT= user-destdir
+
+AUTO_MKDIRS= yes
BUILD_TARGET= spiff
+.include "../../mk/termcap.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
diff -r 87747f1f9620 -r ce102f470f1d devel/spiff/distinfo
--- a/devel/spiff/distinfo Tue Jul 08 21:55:55 2008 +0000
+++ b/devel/spiff/distinfo Wed Jul 09 05:02:06 2008 +0000
@@ -1,11 +1,11 @@
-$NetBSD: distinfo,v 1.5 2007/10/05 21:13:59 rillig Exp $
+$NetBSD: distinfo,v 1.6 2008/07/09 05:02:06 bjs Exp $
SHA1 (spiff-1.0.tar.gz) = 09803fa6f946c3639bb2c7ac5b5644860ebed643
RMD160 (spiff-1.0.tar.gz) = ff651435946dd8889b9a01a598f3933e3e50c614
Size (spiff-1.0.tar.gz) = 48291 bytes
-SHA1 (patch-aa) = 7385b723590f1e8ce86e830605da3ce1bd97a3ea
-SHA1 (patch-ab) = 7d9bedb10742a36e2841d79ccd5d608b8eefeb5f
+SHA1 (patch-aa) = c9ec15c551084c221bbe3d7729fb515ee65dd513
+SHA1 (patch-ab) = 265a62ded94e73b42f8f46180613ff6e5de90399
SHA1 (patch-ac) = d88280626b3d1621377d38037a52e79e6e35bb1a
-SHA1 (patch-ad) = 386f3130fdc97eb7e5472404aaf3f3bc8e94654c
-SHA1 (patch-ae) = fb98434c7cead14541cd6b8a6bf36775ade76ed9
+SHA1 (patch-ad) = 86d90bf42e1735f20fc8538522638f1b5af92d60
+SHA1 (patch-ae) = a4d5f04fa69e775f3e39e60c93b764d0a6c0af7c
SHA1 (patch-af) = 5d922bcafe13e5f24347e78b9e1cd0859d295631
diff -r 87747f1f9620 -r ce102f470f1d devel/spiff/patches/patch-aa
--- a/devel/spiff/patches/patch-aa Tue Jul 08 21:55:55 2008 +0000
+++ b/devel/spiff/patches/patch-aa Wed Jul 09 05:02:06 2008 +0000
@@ -1,17 +1,17 @@
-$NetBSD: patch-aa,v 1.1.1.1 2001/10/15 10:12:08 agc Exp $
+$NetBSD: patch-aa,v 1.2 2008/07/09 05:02:06 bjs Exp $
---- Makefile 2001/10/15 09:58:02 1.1
-+++ Makefile 2001/10/15 09:58:39
+--- Makefile.orig 1994-05-01 18:51:17.000000000 -0400
++++ Makefile
@@ -7,7 +7,7 @@
# name of the directory into which the binary should be installed
# used only when you use 'make install'
#
-INSDIR=/usr/local/bin
-+INSDIR=${PREFIX}
++INSDIR=${DESTDIR}${PREFIX}
#
# choose one from each of 1) 2) and 3) below
-@@ -18,21 +18,21 @@
+@@ -18,21 +18,21 @@ INSDIR=/usr/local/bin
# choose a) b) or c)
#
# a) for BSD derivitives, enable the following line
@@ -37,7 +37,7 @@
# b) if you are using terminfo on a XENIX machine, enable the following lines
#TFLAG=-DM_TERMINFO
-@@ -44,8 +44,8 @@
+@@ -44,8 +44,8 @@ OSFLAG=-DATT
#TLIB=curses
# d) NONE OF THE ABOVE
@@ -48,3 +48,12 @@
#
# 3) SELECTION OF WINDOW MANAGER AVAILABILITY
+@@ -80,7 +80,7 @@ MANPAGE=spiff.1
+ # disable this line iff you like being honked at.
+ DEFS = -DNOCHATTER
+
+-CFLAGS=-O $(OSFLAG) $(TFLAG) $(VISFLAG) $(DEFS)
++CFLAGS+=$(OSFLAG) $(TFLAG) $(VISFLAG) $(DEFS)
+
+ default: spiff
+
diff -r 87747f1f9620 -r ce102f470f1d devel/spiff/patches/patch-ab
--- a/devel/spiff/patches/patch-ab Tue Jul 08 21:55:55 2008 +0000
+++ b/devel/spiff/patches/patch-ab Wed Jul 09 05:02:06 2008 +0000
@@ -1,30 +1,29 @@
-$NetBSD: patch-ab,v 1.3 2007/10/05 21:13:59 rillig Exp $
+$NetBSD: patch-ab,v 1.4 2008/07/09 05:02:06 bjs Exp $
---- misc.h 2001/10/15 10:01:22 1.1
-+++ misc.h 2001/10/15 10:02:19
-@@ -8,6 +8,8 @@
+--- misc.h.orig 1998-09-23 14:07:19.000000000 -0400
++++ misc.h
+@@ -8,6 +8,11 @@
#ifndef Z_INCLUDED
+#include <sys/param.h>
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
+
/*
** make sure that if we have a XENIX system, that
** we also treat it as an AT and T derivative
-@@ -36,12 +38,16 @@
+@@ -36,12 +41,6 @@ extern int *_Z_myalloc();
/*
** lines needed to shut up lint
*/
-+#if defined(__STDC__)
-+#include <string.h>
-+#else
- extern char *sprintf();
- extern char *strcat();
- extern char *strncat();
- extern char *strcpy();
- extern char *strncpy();
- extern char *malloc();
-+#endif
+-extern char *sprintf();
+-extern char *strcat();
+-extern char *strncat();
+-extern char *strcpy();
+-extern char *strncpy();
+-extern char *malloc();
extern void Z_complain();
extern void Z_fatal();
diff -r 87747f1f9620 -r ce102f470f1d devel/spiff/patches/patch-ad
--- a/devel/spiff/patches/patch-ad Tue Jul 08 21:55:55 2008 +0000
+++ b/devel/spiff/patches/patch-ad Wed Jul 09 05:02:06 2008 +0000
@@ -1,13 +1,51 @@
-$NetBSD: patch-ad,v 1.1 2006/06/08 16:12:48 minskim Exp $
+$NetBSD: patch-ad,v 1.2 2008/07/09 05:02:06 bjs Exp $
---- spiff.c.orig 1990-02-05 20:17:20.000000000 +0000
+--- spiff.c.orig 1990-02-05 15:17:20.000000000 -0500
+++ spiff.c
-@@ -27,7 +27,7 @@ static char rcsid[]= "$Header: spiff.c,v
+@@ -27,7 +27,8 @@ static char rcsid[]= "$Header: spiff.c,v
#include "visual.h"
#include "output.h"
-extern void _Y_doargs();
-+static void _Y_doargs();
++static void _Y_doargs(int argc, char *argv[], char **file1,
++ char **file2, int *max_d);
static int _Y_eflag = 0; /* use exact match algorithm */
static int _Y_vflag = 0; /* use visual mode */
+@@ -38,9 +39,8 @@ static int _Y_vflag = 0; /* use visual m
+ */
+ static int _Y_flags;
+
+-main(argc,argv)
+-int argc;
+-char *argv[];
++int
++main(int argc, char *argv[])
+ {
+ E_edit edit_end;
+ char *filename[2];
+@@ -120,9 +120,9 @@ char *argv[];
+ if (E_NULL != edit_end)
+ {
+ O_output(edit_end,_Y_flags);
+- return(1);
++ return 1;
+ }
+- return(0);
++ return 0;
+ }
+
+ /*
+@@ -174,11 +174,7 @@ char *from;
+ #define SETPTR {if(strlen(argv[1]) == 2) {argv++;argc--;ptr=argv[1];}else ptr=(&argv[1][2]);}
+
+ static void
+-_Y_doargs(argc,argv,file1,file2,max_d)
+-int argc;
+-char *argv[];
+-char **file1,**file2;
+-int *max_d;
++_Y_doargs(int argc, char *argv[], char **file1, char **file2, int *max_d)
+ {
+ char *ptr;
+
diff -r 87747f1f9620 -r ce102f470f1d devel/spiff/patches/patch-ae
--- a/devel/spiff/patches/patch-ae Tue Jul 08 21:55:55 2008 +0000
+++ b/devel/spiff/patches/patch-ae Wed Jul 09 05:02:06 2008 +0000
@@ -1,15 +1,56 @@
-$NetBSD: patch-ae,v 1.1 2006/06/08 16:12:48 minskim Exp $
+$NetBSD: patch-ae,v 1.2 2008/07/09 05:02:06 bjs Exp $
---- compare.c.orig 1990-02-05 20:17:15.000000000 +0000
+--- compare.c.orig 1990-02-05 15:17:15.000000000 -0500
+++ compare.c
-@@ -21,6 +21,10 @@ static char rcsid[]= "$Header: compare.c
+@@ -17,12 +17,15 @@ static char rcsid[]= "$Header: compare.c
+ #include "token.h"
+ #include "line.h"
+ #include "float.h"
+-#include "compare.h"
#include <ctype.h>
+-X_com(a,b,flags)
+-int a,b,flags;
++static int _X_cmptokens(K_token p1,K_token p2,int flags);
+static int _X_strcmp(char *s1, char *s2, int flags);
-+static int _X_floatdiff(F_float p1, F_float p2, T_tol the_tol);
-+static int _X_cmptokens(K_token p1, K_token p2, int flags);
++static int _X_floatdiff(F_float p1,F_float p2,T_tol the_tol);
+
- X_com(a,b,flags)
- int a,b,flags;
++int
++X_com(int a, int b, int flags)
+ {
+ K_token atmp,btmp;
+
+@@ -47,9 +50,7 @@ int a,b,flags;
+ ** same as strcmp() except that case can be optionally ignored
+ */
+ static int
+-_X_strcmp(s1,s2,flags)
+-char *s1,*s2;
+-int flags;
++_X_strcmp(char *s1, char *s2, int flags)
{
+ if (flags & U_NO_CASE)
+ {
+@@ -84,9 +85,7 @@ int flags;
+ ** routine to compare two tokens
+ */
+ static int
+-_X_cmptokens(p1,p2,flags)
+-K_token p1, p2;
+-int flags;
++_X_cmptokens(K_token p1,K_token p2,int flags)
+ {
+ if (K_gettype(p1) != K_gettype(p2))
+ {
+@@ -114,9 +113,7 @@ int flags;
+ ** compare two F_floats using a tolerance
+ */
+ static int
+-_X_floatdiff(p1,p2,the_tol)
+-F_float p1,p2;
+-T_tol the_tol;
++_X_floatdiff(F_float p1,F_float p2,T_tol the_tol)
+ {
+ F_float diff, float_tmp;
+ T_tol tol_tmp;
Home |
Main Index |
Thread Index |
Old Index