summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Huebel <jhuebel@gentoo.org>2004-05-25 20:41:22 +0000
committerJason Huebel <jhuebel@gentoo.org>2004-05-25 20:41:22 +0000
commit057f525a0dab0be639b48f7be2df00e0c0b1ca48 (patch)
tree0c9c19b0dc359fd8313009999c896f02520e03c2 /app-arch/cksfv
parentFixed BUG #52023. -fPIC necessary on amd64. (diff)
downloadhistorical-057f525a0dab0be639b48f7be2df00e0c0b1ca48.tar.gz
historical-057f525a0dab0be639b48f7be2df00e0c0b1ca48.tar.bz2
historical-057f525a0dab0be639b48f7be2df00e0c0b1ca48.zip
added 64bit patch provided by Heikki Orsila <heikki.orsila@iki.fi>, marked ~amd64
Diffstat (limited to 'app-arch/cksfv')
-rw-r--r--app-arch/cksfv/ChangeLog10
-rw-r--r--app-arch/cksfv/Manifest5
-rw-r--r--app-arch/cksfv/cksfv-1.3.ebuild7
-rw-r--r--app-arch/cksfv/files/cksfv-1.3-64bit-fix.patch119
4 files changed, 136 insertions, 5 deletions
diff --git a/app-arch/cksfv/ChangeLog b/app-arch/cksfv/ChangeLog
index f331588f486b..3151f18ae1d3 100644
--- a/app-arch/cksfv/ChangeLog
+++ b/app-arch/cksfv/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for app-arch/cksfv
# Copyright 2002-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-arch/cksfv/ChangeLog,v 1.8 2004/03/12 11:01:47 mr_bones_ Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-arch/cksfv/ChangeLog,v 1.9 2004/05/25 20:41:22 jhuebel Exp $
+
+ 25 May 2004; Jason Eric Huebel <jhuebel@gentoo.org>
+ +files/cksfv-1.3-64bit-fix.patch, cksfv-1.3.ebuild:
+ oh, and ~amd64 :-)
+
+ 25 May 2004; Jason Eric Huebel <jhuebel@gentoo.org>
+ +files/cksfv-1.3-64bit-fix.patch, cksfv-1.3.ebuild:
+ added 64bit patch provided by Heikki Orsila <heikki.orsila@iki.fi>
12 Mar 2004; Michael Sterrett <mr_bones_@gentoo.org> cksfv-1.3.ebuild:
Don't assign default to S; header fix
diff --git a/app-arch/cksfv/Manifest b/app-arch/cksfv/Manifest
index f6aa9a40202c..1a3a255269b5 100644
--- a/app-arch/cksfv/Manifest
+++ b/app-arch/cksfv/Manifest
@@ -1,3 +1,4 @@
-MD5 bbbf528ca7468582a688bb355694cb23 ChangeLog 811
-MD5 1428fe02b0a26ebe226a26b7e996b29f cksfv-1.3.ebuild 581
+MD5 0d4cd61d2055b3e7a409d7bea7c3f24f ChangeLog 1117
+MD5 c36fc6cbaec48dc0a6eb86c1a66d9b60 cksfv-1.3.ebuild 689
MD5 428cbd9a2a41c250d23662113bee5828 files/digest-cksfv-1.3 60
+MD5 f72b0ebd2532d65ef4b3008017731802 files/cksfv-1.3-64bit-fix.patch 3705
diff --git a/app-arch/cksfv/cksfv-1.3.ebuild b/app-arch/cksfv/cksfv-1.3.ebuild
index 614e8596bf5b..42a40367f862 100644
--- a/app-arch/cksfv/cksfv-1.3.ebuild
+++ b/app-arch/cksfv/cksfv-1.3.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2004 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-arch/cksfv/cksfv-1.3.ebuild,v 1.10 2004/03/12 11:01:47 mr_bones_ Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-arch/cksfv/cksfv-1.3.ebuild,v 1.11 2004/05/25 20:41:22 jhuebel Exp $
DESCRIPTION="cksfv: SFV checksum utility (simple file verification)"
SRC_URI="http://www.fodder.org/cksfv/${P}.tar.gz"
@@ -8,11 +8,14 @@ HOMEPAGE="http://www.fodder.org/cksfv/"
SLOT="0"
LICENSE="GPL-2"
-KEYWORDS="x86 ppc sparc alpha"
+KEYWORDS="x86 ppc sparc alpha ~amd64"
DEPEND="virtual/glibc"
src_compile() {
+ # patch for int size problems on 64bit systems
+ use amd64 && epatch ${FILESDIR}/${P}-64bit-fix.patch
+
emake || die
}
diff --git a/app-arch/cksfv/files/cksfv-1.3-64bit-fix.patch b/app-arch/cksfv/files/cksfv-1.3-64bit-fix.patch
new file mode 100644
index 000000000000..33e89e94201b
--- /dev/null
+++ b/app-arch/cksfv/files/cksfv-1.3-64bit-fix.patch
@@ -0,0 +1,119 @@
+Only in ./src: cksfv
+diff -u -r ../cksfv-1.3-org/src/crc32.c ./src/crc32.c
+--- ../cksfv-1.3-org/src/crc32.c 2001-07-06 09:33:08.000000000 +0300
++++ ./src/crc32.c 2004-04-18 02:34:19.297962360 +0300
+@@ -16,14 +16,12 @@
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+-#include <sys/types.h>
+-#include <stdio.h>
+-#include <sys/types.h>
++#include <stdint.h>
+ #include <unistd.h>
+
+ #define BUFFERSIZE 16384 /* (16k) buffer size for reading from the file */
+
+-static const unsigned long crctable[256] = {
++static const uint32_t crctable[256] = {
+ 0x00000000, 0x77073096, 0xee0e612c, 0x990951ba,
+ 0x076dc419, 0x706af48f, 0xe963a535, 0x9e6495a3,
+ 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988,
+@@ -91,11 +89,11 @@
+ };
+
+
+-int crc32(register int fd, unsigned long *main_val, unsigned long *main_len)
++int crc32(register int fd, uint32_t *main_val, unsigned long *main_len)
+ {
+ char buf[BUFFERSIZE], *p;
+- int len = 0, nr;
+- unsigned long crc = ~0, crc32_total = ~0;
++ long len = 0, nr;
++ uint32_t crc = ~0, crc32_total = ~0;
+
+ while ((nr = read(fd, buf, sizeof(buf))) > 0)
+ for (len += nr, p = buf; nr--; ++p) {
+Only in ./src: crc32.c~
+diff -u -r ../cksfv-1.3-org/src/newsfv.c ./src/newsfv.c
+--- ../cksfv-1.3-org/src/newsfv.c 2001-07-06 09:33:08.000000000 +0300
++++ ./src/newsfv.c 2004-04-18 02:38:11.903600928 +0300
+@@ -16,6 +16,7 @@
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
++#include <stdint.h>
+ #include <fcntl.h>
+ #include <stdio.h>
+ #include <string.h>
+@@ -24,14 +25,15 @@
+
+ extern void pnsfv_head();
+ extern void pfileinfo(char**);
+-extern void pcrc(char*, unsigned long);
+-extern int crc32(int, unsigned long*, unsigned long*);
++extern void pcrc(char*, unsigned long val);
++extern int crc32(int, uint32_t *, unsigned long *);
+
+ int newsfv(char **argv)
+ {
+ int fd, rval = 0;
+ char *fn;
+- unsigned long len, val;
++ unsigned long len;
++ uint32_t val;
+
+ pnsfv_head();
+ pfileinfo(argv);
+@@ -48,7 +50,7 @@
+ fprintf(stderr, "cksfv: %s: %s\n", fn, strerror(errno));
+ rval = 1;
+ } else
+- pcrc(fn, val);
++ pcrc(fn, (unsigned long) val);
+ close(fd);
+ }
+
+Only in ./src: newsfv.c~
+Only in ./src: print.c~
+diff -u -r ../cksfv-1.3-org/src/readsfv.c ./src/readsfv.c
+--- ../cksfv-1.3-org/src/readsfv.c 2001-07-06 09:33:08.000000000 +0300
++++ ./src/readsfv.c 2004-04-18 02:39:48.612898880 +0300
+@@ -17,6 +17,7 @@
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
++#include <stdint.h>
+ #include <stdio.h>
+ #include <string.h>
+ #include <sys/types.h>
+@@ -28,7 +29,7 @@
+ #include <dirent.h>
+ #include <stdlib.h>
+
+-extern int crc32(int, unsigned long*, unsigned long*);
++extern int crc32(int, uint32_t *, unsigned long*);
+ extern void prsfv_head(char*);
+
+ int find_file(char*, char*);
+@@ -39,7 +40,9 @@
+ FILE *fd;
+ char buf[512], *end, filename[512], crc[9], path[256];
+ int file, rval = 0;
+- unsigned long len, val, sfvcrc;
++ unsigned long len, sfvcrc;
++ uint32_t val;
++
+
+ if (quiet == 0) {
+ prsfv_head(fn);
+@@ -104,7 +107,7 @@
+ fprintf(stderr, "cksfv: %s: %s\n", filename, strerror(errno));
+ rval = 1;
+ } else {
+- if (val != sfvcrc) {
++ if (((unsigned long) val) != sfvcrc) {
+ if (quiet == 0)
+ fprintf(stderr, "different CRC\n");
+ else if (quiet == 1)
+Only in ./src: readsfv.c~