Thu Oct 2 08:52:41 2014 UTC ()
Update lz4 to r123.

r123:
Added : experimental lz4frame API, thanks to Takayuki Matsuoka and
  Christopher Jackson for testings
Fix : s390x support, thanks to Nobuhiro Iwamatsu
Fix : test mode (-t) no longer requires confirmation, thanks to Thary Nguyen

r122:
Fix : AIX & AIX64 support (SamG)
Fix : mips 64-bits support (lew van)
Added : Examples directory, using code examples from Takayuki Matsuoka
Updated : Framing specification, to v1.4.1
Updated : xxHash, to r36

r121:
Added : Makefile : install for kFreeBSD and Hurd (Nobuhiro Iwamatsu)
Fix : Makefile : install for OS-X and BSD, thanks to Takayuki Matsuoka


(fhajny)
diff -r1.1 -r1.2 pkgsrc/archivers/lz4/Makefile
diff -r1.1 -r1.2 pkgsrc/archivers/lz4/PLIST
diff -r1.1 -r1.2 pkgsrc/archivers/lz4/distinfo
diff -r1.1 -r1.2 pkgsrc/archivers/lz4/patches/patch-Makefile
diff -r1.1 -r1.2 pkgsrc/archivers/lz4/patches/patch-programs_Makefile
diff -r1.1 -r1.2 pkgsrc/archivers/lz4/patches/patch-programs_fuzzer.c

cvs diff -r1.1 -r1.2 pkgsrc/archivers/lz4/Makefile (expand / switch to unified diff)

--- pkgsrc/archivers/lz4/Makefile 2014/08/06 10:41:33 1.1
+++ pkgsrc/archivers/lz4/Makefile 2014/10/02 08:52:41 1.2
@@ -1,16 +1,16 @@ @@ -1,16 +1,16 @@
1# $NetBSD: Makefile,v 1.1 2014/08/06 10:41:33 fhajny Exp $ 1# $NetBSD: Makefile,v 1.2 2014/10/02 08:52:41 fhajny Exp $
2 2
3DISTNAME= lz4-r120 3DISTNAME= lz4-r123
4PKGNAME= ${DISTNAME:S/-r/-/} 4PKGNAME= ${DISTNAME:S/-r/-/}
5CATEGORIES= archivers 5CATEGORIES= archivers
6MASTER_SITES= -https://github.com/Cyan4973/lz4/archive/${DISTNAME:S/lz4-//}${EXTRACT_SUFX} 6MASTER_SITES= -https://github.com/Cyan4973/lz4/archive/${DISTNAME:S/lz4-//}${EXTRACT_SUFX}
7 7
8MAINTAINER= filip@joyent.com 8MAINTAINER= filip@joyent.com
9HOMEPAGE= http://code.google.com/p/lz4/ 9HOMEPAGE= http://code.google.com/p/lz4/
10COMMENT= Extremely Fast Compression algorithm 10COMMENT= Extremely Fast Compression algorithm
11LICENSE= 2-clause-bsd 11LICENSE= 2-clause-bsd
12 12
13USE_LANGUAGES= c c99 13USE_LANGUAGES= c c99
14USE_TOOLS+= gmake pkg-config 14USE_TOOLS+= gmake pkg-config
15 15
16CPPFLAGS.SunOS+= -D_XOPEN_SOURCE=600 16CPPFLAGS.SunOS+= -D_XOPEN_SOURCE=600

cvs diff -r1.1 -r1.2 pkgsrc/archivers/lz4/PLIST (expand / switch to unified diff)

--- pkgsrc/archivers/lz4/PLIST 2014/08/06 10:41:33 1.1
+++ pkgsrc/archivers/lz4/PLIST 2014/10/02 08:52:41 1.2
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1@comment $NetBSD: PLIST,v 1.1 2014/08/06 10:41:33 fhajny Exp $ 1@comment $NetBSD: PLIST,v 1.2 2014/10/02 08:52:41 fhajny Exp $
2bin/lz4 2bin/lz4
3bin/lz4c 3bin/lz4c
4bin/lz4cat 4bin/lz4cat
5include/lz4.h 5include/lz4.h
6include/lz4hc.h 6include/lz4hc.h
7lib/liblz4.a 7lib/liblz4.a
8lib/liblz4.so 8lib/liblz4.so
9lib/liblz4.so.1 9lib/liblz4.so.1
10lib/liblz4.so.1.3.0 10lib/liblz4.so.1.3.1
11lib/pkgconfig/liblz4.pc 11lib/pkgconfig/liblz4.pc
12man/man1/lz4.1 12man/man1/lz4.1
13man/man1/lz4c.1 13man/man1/lz4c.1
14man/man1/lz4cat.1 14man/man1/lz4cat.1

cvs diff -r1.1 -r1.2 pkgsrc/archivers/lz4/distinfo (expand / switch to unified diff)

--- pkgsrc/archivers/lz4/distinfo 2014/08/06 10:41:33 1.1
+++ pkgsrc/archivers/lz4/distinfo 2014/10/02 08:52:41 1.2
@@ -1,8 +1,8 @@ @@ -1,8 +1,8 @@
1$NetBSD: distinfo,v 1.1 2014/08/06 10:41:33 fhajny Exp $ 1$NetBSD: distinfo,v 1.2 2014/10/02 08:52:41 fhajny Exp $
2 2
3SHA1 (lz4-r120.tar.gz) = 6c657297eb9bd47f2f4de76fbc89204b652377c9 3SHA1 (lz4-r123.tar.gz) = 588d51ea02a0bc325229601412b1e829a4806413
4RMD160 (lz4-r120.tar.gz) = fa76b7dff8a5bda1de370a28ca7d7719031ef7a6 4RMD160 (lz4-r123.tar.gz) = 2a6c899dee8f84b619f7cdb8ec0cea3ebb273910
5Size (lz4-r120.tar.gz) = 161950 bytes 5Size (lz4-r123.tar.gz) = 137315 bytes
6SHA1 (patch-Makefile) = 30b138d69267c9d3b110165e2b709e8e1b01f552 6SHA1 (patch-Makefile) = 223bf2c60dfd050ef4eb2e03feda988011686cdb
7SHA1 (patch-programs_Makefile) = 8d633547c1bac2710d49c859be41463a32693408 7SHA1 (patch-programs_Makefile) = b248d8967966c482f9d2ee6d51faf245aca3aab1
8SHA1 (patch-programs_fuzzer.c) = fc7560d0257e8e90bcccf7ae8082061ff0d9ebf4 8SHA1 (patch-programs_fuzzer.c) = 711c0e37128d983000bde1b42afec6f9ee9f0e85

cvs diff -r1.1 -r1.2 pkgsrc/archivers/lz4/patches/Attic/patch-Makefile (expand / switch to unified diff)

--- pkgsrc/archivers/lz4/patches/Attic/patch-Makefile 2014/08/06 10:41:34 1.1
+++ pkgsrc/archivers/lz4/patches/Attic/patch-Makefile 2014/10/02 08:52:41 1.2
@@ -1,65 +1,63 @@ @@ -1,65 +1,63 @@
1$NetBSD: patch-Makefile,v 1.1 2014/08/06 10:41:34 fhajny Exp $ 1$NetBSD: patch-Makefile,v 1.2 2014/10/02 08:52:41 fhajny Exp $
2 2
3Make portable, use pkgsrc install scripts. 3Make portable, use pkgsrc install scripts.
4--- Makefile.orig 2014-07-24 11:54:05.000000000 +0000 4--- Makefile.orig 2014-09-25 12:03:36.000000000 +0000
5+++ Makefile 5+++ Makefile
6@@ -33,13 +33,13 @@ 6@@ -33,9 +33,9 @@
7 # Version numbers 7 # Version numbers
8 VERSION=120 8 VERSION=123
9 export RELEASE=r$(VERSION) 9 export RELEASE=r$(VERSION)
10-LIBVER_MAJOR=`sed -n '/LZ4_VERSION_MAJOR/s/.*\s\+\([0-9]\+\).*/\1/p' < lz4.h` 10-LIBVER_MAJOR=`sed -n '/define LZ4_VERSION_MAJOR/s/.*[[:blank:]]\([0-9][0-9]*\).*/\1/p' < lz4.h`
11-LIBVER_MINOR=`sed -n '/LZ4_VERSION_MINOR/s/.*\s\+\([0-9]\+\).*/\1/p' < lz4.h` 11-LIBVER_MINOR=`sed -n '/define LZ4_VERSION_MINOR/s/.*[[:blank:]]\([0-9][0-9]*\).*/\1/p' < lz4.h`
12-LIBVER_PATCH=`sed -n '/LZ4_VERSION_RELEASE/s/.*\s\+\([0-9]\+\).*/\1/p' < lz4.h` 12-LIBVER_PATCH=`sed -n '/define LZ4_VERSION_RELEASE/s/.*[[:blank:]]\([0-9][0-9]*\).*/\1/p' < lz4.h`
13+LIBVER_MAJOR=`awk '$$2=="LZ4_VERSION_MAJOR" {print $$3}' < lz4.h` 13+LIBVER_MAJOR=`awk '$$2=="LZ4_VERSION_MAJOR" {print $$3}' < lz4.h`
14+LIBVER_MINOR=`awk '$$2=="LZ4_VERSION_MINOR" {print $$3}' < lz4.h` 14+LIBVER_MINOR=`awk '$$2=="LZ4_VERSION_MINOR" {print $$3}' < lz4.h`
15+LIBVER_PATCH=`awk '$$2=="LZ4_VERSION_RELEASE" {print $$3}' < lz4.h` 15+LIBVER_PATCH=`awk '$$2=="LZ4_VERSION_RELEASE" {print $$3}' < lz4.h`
16 LIBVER=$(LIBVER_MAJOR).$(LIBVER_MINOR).$(LIBVER_PATCH) 16 LIBVER=$(LIBVER_MAJOR).$(LIBVER_MINOR).$(LIBVER_PATCH)
17  17
18 DESTDIR= 18 DESTDIR?=
19-PREFIX = /usr 19@@ -111,27 +111,23 @@ clean:
20+PREFIX?= /usr 20 @echo Cleaning completed
21 CC := $(CC) 
22 CFLAGS?= -O3 
23 CFLAGS+= -I. -std=c99 -Wall -Wextra -Wundef -Wshadow -Wstrict-prototypes -DLZ4_VERSION=\"$(RELEASE)\" 
24@@ -111,24 +111,22 @@ clean: 
25 #------------------------------------------------------------------------ 
26 #make install option is designed for Linux & OSX targets only 
27  21
28-ifneq (,$(filter $(shell uname),Linux Darwin)) 22
 23-#------------------------------------------------------------------------
 24-#make install is validated only for Linux, OSX, kFreeBSD and Hurd targets
 25-ifneq (,$(filter $(shell uname),Linux Darwin GNU/kFreeBSD GNU))
29- 26-
30 liblz4.pc: liblz4.pc.in Makefile 27 liblz4.pc: liblz4.pc.in Makefile
31- sed -e 's|@PREFIX@|$(PREFIX)|' \ 28 @echo creating pkgconfig
 29- @sed -e 's|@PREFIX@|$(PREFIX)|' \
32- -e 's|@LIBDIR@|$(LIBDIR)|' \ 30- -e 's|@LIBDIR@|$(LIBDIR)|' \
33- -e 's|@INCLUDEDIR@|$(INCLUDEDIR)|' \ 31- -e 's|@INCLUDEDIR@|$(INCLUDEDIR)|' \
34- -e 's|@VERSION@|$(VERSION)|' \ 32- -e 's|@VERSION@|$(VERSION)|' \
35+ sed -e 's|@PREFIX@|$(PREFIX)|g' \ 33+ @sed -e 's|@PREFIX@|$(PREFIX)|g' \
36+ -e 's|@LIBDIR@|$(LIBDIR)|g' \ 34+ -e 's|@LIBDIR@|$(LIBDIR)|g' \
37+ -e 's|@INCLUDEDIR@|$(INCLUDEDIR)|g' \ 35+ -e 's|@INCLUDEDIR@|$(INCLUDEDIR)|g' \
38+ -e 's|@VERSION@|$(VERSION)|g' \ 36+ -e 's|@VERSION@|$(VERSION)|g' \
39 $< >$@ 37 $< >$@
40  38
41 install: liblz4 liblz4.pc 39 install: liblz4 liblz4.pc
42- @install -d -m 755 $(DESTDIR)$(LIBDIR)/pkgconfig/ $(DESTDIR)$(INCLUDEDIR)/ 40- @install -d -m 755 $(DESTDIR)$(LIBDIR)/pkgconfig/ $(DESTDIR)$(INCLUDEDIR)/
43- @install -m 755 liblz4.$(SHARED_EXT_VER) $(DESTDIR)$(LIBDIR)/liblz4.$(SHARED_EXT_VER) 41- @install -m 755 liblz4.$(SHARED_EXT_VER) $(DESTDIR)$(LIBDIR)/liblz4.$(SHARED_EXT_VER)
44- @cp -a liblz4.$(SHARED_EXT_MAJOR) $(DESTDIR)$(LIBDIR) 42- @cp -a liblz4.$(SHARED_EXT_MAJOR) $(DESTDIR)$(LIBDIR)
45- @cp -a liblz4.$(SHARED_EXT) $(DESTDIR)$(LIBDIR) 43- @cp -a liblz4.$(SHARED_EXT) $(DESTDIR)$(LIBDIR)
46- @cp -a liblz4.pc $(DESTDIR)$(LIBDIR)/pkgconfig/ 44- @cp -a liblz4.pc $(DESTDIR)$(LIBDIR)/pkgconfig/
47- @install -m 644 liblz4.a $(DESTDIR)$(LIBDIR)/liblz4.a 45- @install -m 644 liblz4.a $(DESTDIR)$(LIBDIR)/liblz4.a
48- @install -m 644 lz4.h $(DESTDIR)$(INCLUDEDIR)/lz4.h 46- @install -m 644 lz4.h $(DESTDIR)$(INCLUDEDIR)/lz4.h
49- @install -m 644 lz4hc.h $(DESTDIR)$(INCLUDEDIR)/lz4hc.h 47- @install -m 644 lz4hc.h $(DESTDIR)$(INCLUDEDIR)/lz4hc.h
50+ $(BSD_INSTALL_DATA_DIR) -d -m 755 $(DESTDIR)$(LIBDIR)/pkgconfig/ $(DESTDIR)$(INCLUDEDIR)/ 48+ $(BSD_INSTALL_DATA_DIR) -d -m 755 $(DESTDIR)$(LIBDIR)/pkgconfig/ $(DESTDIR)$(INCLUDEDIR)/
51+ $(BSD_INSTALL_LIB) -m 755 liblz4.$(SHARED_EXT_VER) $(DESTDIR)$(LIBDIR)/liblz4.$(SHARED_EXT_VER) 49+ $(BSD_INSTALL_LIB) -m 755 liblz4.$(SHARED_EXT_VER) $(DESTDIR)$(LIBDIR)/liblz4.$(SHARED_EXT_VER)
52+ @ln -sf liblz4.$(SHARED_EXT_VER) $(DESTDIR)$(LIBDIR)/liblz4.$(SHARED_EXT_MAJOR) 50+ @ln -sf liblz4.$(SHARED_EXT_VER) $(DESTDIR)$(LIBDIR)/liblz4.$(SHARED_EXT_MAJOR)
53+ @ln -sf liblz4.$(SHARED_EXT_VER) $(DESTDIR)$(LIBDIR)/liblz4.$(SHARED_EXT) 51+ @ln -sf liblz4.$(SHARED_EXT_VER) $(DESTDIR)$(LIBDIR)/liblz4.$(SHARED_EXT)
54+ $(BSD_INSTALL_DATA) liblz4.pc $(DESTDIR)$(LIBDIR)/pkgconfig/ 52+ $(BSD_INSTALL_DATA) liblz4.pc $(DESTDIR)$(LIBDIR)/pkgconfig/
55+ $(BSD_INSTALL_LIB) -m 644 liblz4.a $(DESTDIR)$(LIBDIR)/liblz4.a 53+ $(BSD_INSTALL_LIB) -m 644 liblz4.a $(DESTDIR)$(LIBDIR)/liblz4.a
56+ $(BSD_INSTALL_DATA) -m 644 lz4.h $(DESTDIR)$(INCLUDEDIR)/lz4.h 54+ $(BSD_INSTALL_DATA) -m 644 lz4.h $(DESTDIR)$(INCLUDEDIR)/lz4.h
57+ $(BSD_INSTALL_DATA) -m 644 lz4hc.h $(DESTDIR)$(INCLUDEDIR)/lz4hc.h 55+ $(BSD_INSTALL_DATA) -m 644 lz4hc.h $(DESTDIR)$(INCLUDEDIR)/lz4hc.h
58 @echo lz4 static and shared library installed 56 @echo lz4 static and shared library installed
59 @cd $(PRGDIR); $(MAKE) -e install 57 @cd $(PRGDIR); $(MAKE) -e install
60  58
61@@ -165,4 +163,3 @@ test: 59@@ -166,4 +162,3 @@ test:
62 test-travis: lz4programs 60 @cd examples; $(MAKE) -e $@
63 @cd $(PRGDIR); $(MAKE) -e $@ 61 @cd $(PRGDIR); $(MAKE) -e $@
64  62
65-endif 63-endif

cvs diff -r1.1 -r1.2 pkgsrc/archivers/lz4/patches/patch-programs_Makefile (expand / switch to unified diff)

--- pkgsrc/archivers/lz4/patches/patch-programs_Makefile 2014/08/06 10:41:34 1.1
+++ pkgsrc/archivers/lz4/patches/patch-programs_Makefile 2014/10/02 08:52:41 1.2
@@ -1,52 +1,46 @@ @@ -1,52 +1,46 @@
1$NetBSD: patch-programs_Makefile,v 1.1 2014/08/06 10:41:34 fhajny Exp $ 1$NetBSD: patch-programs_Makefile,v 1.2 2014/10/02 08:52:41 fhajny Exp $
2 2
3Make portable, use pkgsrc install scripts. 3Make portable, use pkgsrc install scripts.
4--- programs/Makefile.orig 2014-07-24 11:54:05.000000000 +0000 4--- programs/Makefile.orig 2014-09-25 12:03:36.000000000 +0000
5+++ programs/Makefile 5+++ programs/Makefile
6@@ -32,14 +32,14 @@ 6@@ -40,7 +40,7 @@ CFLAGS += -std=c99 -Wall -Wextra -Wundef
7  7 FLAGS = -I.. $(CPPFLAGS) $(CFLAGS) $(LDFLAGS)
8 RELEASE=r120 
9 DESTDIR= 
10-PREFIX=/usr 
11+PREFIX?=/usr 
12 CC:=$(CC) 
13 CFLAGS?= -O3 
14 CFLAGS+= -std=c99 -Wall -Wextra -Wundef -Wshadow -Wstrict-prototypes -DLZ4_VERSION=\"$(RELEASE)\" 
15 FLAGS= -I.. $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) 
16  8
17 BINDIR=$(PREFIX)/bin 9 BINDIR=$(PREFIX)/bin
18-MANDIR=$(PREFIX)/share/man/man1 10-MANDIR=$(PREFIX)/share/man/man1
19+MANDIR=$(PREFIX)/$(PKGMANDIR)/man1 11+MANDIR=$(PREFIX)/$(PKGMANDIR)/man1
20 LZ4DIR=.. 12 LZ4DIR=..
21  13
22 TEST_FILES = COPYING 14 TEST_FILES = COPYING
23@@ -103,18 +103,16 @@ clean: 15@@ -107,20 +107,16 @@ clean:
24 @echo Cleaning completed 16 @echo Cleaning completed
25  17
26  18
27-ifneq (,$(filter $(shell uname),Linux Darwin)) 19-#------------------------------------------------------------------------
 20-#make install is validated only for Linux, OSX, kFreeBSD and Hurd targets
 21-ifneq (,$(filter $(shell uname),Linux Darwin GNU/kFreeBSD GNU))
28- 22-
29 install: lz4 lz4c 23 install: lz4 lz4c
30 @echo Installing binaries 24 @echo Installing binaries
31- @install -d -m 755 $(DESTDIR)$(BINDIR)/ $(DESTDIR)$(MANDIR)/ 25- @install -d -m 755 $(DESTDIR)$(BINDIR)/ $(DESTDIR)$(MANDIR)/
32- @install -m 755 lz4 $(DESTDIR)$(BINDIR)/lz4 26- @install -m 755 lz4 $(DESTDIR)$(BINDIR)/lz4
33+ $(BSD_INSTALL_PROGRAM_DIR) -d -m 755 $(DESTDIR)$(BINDIR)/ $(DESTDIR)$(MANDIR)/ 27+ $(BSD_INSTALL_PROGRAM_DIR) -d -m 755 $(DESTDIR)$(BINDIR)/ $(DESTDIR)$(MANDIR)/
34+ $(BSD_INSTALL_PROGRAM) -m 755 lz4 $(DESTDIR)$(BINDIR)/lz4 28+ $(BSD_INSTALL_PROGRAM) -m 755 lz4 $(DESTDIR)$(BINDIR)/lz4
35 @ln -sf lz4 $(DESTDIR)$(BINDIR)/lz4cat 29 @ln -sf lz4 $(DESTDIR)$(BINDIR)/lz4cat
36- @install -m 755 lz4c $(DESTDIR)$(BINDIR)/lz4c 30- @install -m 755 lz4c $(DESTDIR)$(BINDIR)/lz4c
37+ $(BSD_INSTALL_PROGRAM) -m 755 lz4c $(DESTDIR)$(BINDIR)/lz4c 31+ $(BSD_INSTALL_PROGRAM) -m 755 lz4c $(DESTDIR)$(BINDIR)/lz4c
38 @echo Installing man pages 32 @echo Installing man pages
39- @install -m 644 lz4.1 $(DESTDIR)$(MANDIR)/lz4.1 33- @install -m 644 lz4.1 $(DESTDIR)$(MANDIR)/lz4.1
40- @install -m 644 lz4c.1 $(DESTDIR)$(MANDIR)/lz4c.1 34- @install -m 644 lz4c.1 $(DESTDIR)$(MANDIR)/lz4c.1
41- @install -m 644 lz4cat.1 $(DESTDIR)$(MANDIR)/lz4cat.1 35- @install -m 644 lz4cat.1 $(DESTDIR)$(MANDIR)/lz4cat.1
42+ $(BSD_INSTALL_MAN) -m 644 lz4.1 $(DESTDIR)$(MANDIR)/lz4.1 36+ $(BSD_INSTALL_MAN) -m 644 lz4.1 $(DESTDIR)$(MANDIR)/lz4.1
43+ $(BSD_INSTALL_MAN) -m 644 lz4c.1 $(DESTDIR)$(MANDIR)/lz4c.1 37+ $(BSD_INSTALL_MAN) -m 644 lz4c.1 $(DESTDIR)$(MANDIR)/lz4c.1
44+ $(BSD_INSTALL_MAN) -m 644 lz4cat.1 $(DESTDIR)$(MANDIR)/lz4cat.1 38+ $(BSD_INSTALL_MAN) -m 644 lz4cat.1 $(DESTDIR)$(MANDIR)/lz4cat.1
45 @echo lz4 installation completed 39 @echo lz4 installation completed
46  40
47 uninstall: 41 uninstall:
48@@ -170,4 +168,3 @@ test-mem: lz4 datagen 42@@ -185,4 +181,3 @@ test-mem: lz4 datagen frametest
49 test-mem32: lz4c32 datagen 43 test-mem32: lz4c32 datagen
50 # unfortunately, valgrind doesn't seem to work with non-native binary. If someone knows how to do a valgrind-test on a 32-bits exe with a 64-bits system... 44 # unfortunately, valgrind doesn't seem to work with non-native binary. If someone knows how to do a valgrind-test on a 32-bits exe with a 64-bits system...
51  45
52-endif 46-endif

cvs diff -r1.1 -r1.2 pkgsrc/archivers/lz4/patches/Attic/patch-programs_fuzzer.c (expand / switch to unified diff)

--- pkgsrc/archivers/lz4/patches/Attic/patch-programs_fuzzer.c 2014/08/06 10:41:34 1.1
+++ pkgsrc/archivers/lz4/patches/Attic/patch-programs_fuzzer.c 2014/10/02 08:52:41 1.2
@@ -1,60 +1,60 @@ @@ -1,60 +1,60 @@
1$NetBSD: patch-programs_fuzzer.c,v 1.1 2014/08/06 10:41:34 fhajny Exp $ 1$NetBSD: patch-programs_fuzzer.c,v 1.2 2014/10/02 08:52:41 fhajny Exp $
2 2
3Add portable code for ftime for NetBSD. 3Add portable code for ftime for NetBSD.
4 4
5Based on https://code.google.com/p/lz4/source/detail?r=81. 5Based on https://code.google.com/p/lz4/source/detail?r=81.
6--- programs/fuzzer.c.orig 2014-07-24 11:54:05.000000000 +0000 6--- programs/fuzzer.c.orig 2014-09-25 12:03:36.000000000 +0000
7+++ programs/fuzzer.c 7+++ programs/fuzzer.c
8@@ -29,6 +29,7 @@ 8@@ -30,6 +30,7 @@
9 #ifdef _MSC_VER /* Visual Studio */ 
10 # pragma warning(disable : 4127) /* disable: C4127: conditional expression is constant */ 9 # pragma warning(disable : 4127) /* disable: C4127: conditional expression is constant */
11 # pragma warning(disable : 4146) /* disable: C4146: minus unsigned expression */ 10 # pragma warning(disable : 4146) /* disable: C4146: minus unsigned expression */
 11 # pragma warning(disable : 4310) /* disable: C4310: constant char value > 127 */
12+# define BMK_LEGACY_TIMER 1 12+# define BMK_LEGACY_TIMER 1
13 #endif 13 #endif
14  14
15  15
16@@ -37,12 +38,17 @@ 16@@ -38,12 +39,17 @@
17 **************************************/ 17 **************************************/
18 #include <stdlib.h> 18 #include <stdlib.h>
19 #include <stdio.h> // fgets, sscanf 19 #include <stdio.h> // fgets, sscanf
20-#include <sys/timeb.h> // timeb 20-#include <sys/timeb.h> // timeb
21 #include <string.h> // strcmp 21 #include <string.h> // strcmp
22 #include "lz4.h" 22 #include "lz4.h"
23 #include "lz4hc.h" 23 #include "lz4hc.h"
24 #include "xxhash.h" 24 #include "xxhash.h"
25  25
26+// Use ftime() if gettimeofday() is not available on your target 26+// Use ftime() if gettimeofday() is not available on your target
27+#if defined(BMK_LEGACY_TIMER) 27+#if defined(BMK_LEGACY_TIMER)
28+# include <sys/timeb.h> // timeb, ftime 28+# include <sys/timeb.h> // timeb, ftime
29+#else 29+#else
30+# include <sys/time.h> // gettimeofday 30+# include <sys/time.h> // gettimeofday
31+#endif 31+#endif
32  32
33 /************************************** 33 /**************************************
34 Basic Types 34 Basic Types
35@@ -103,8 +109,11 @@ static int displayLevel = 2; 35@@ -104,8 +110,11 @@ static int displayLevel = 2;
36 /********************************************************* 36 /*********************************************************
37 Fuzzer functions 37 Fuzzer functions
38 *********************************************************/ 38 *********************************************************/
39+#if defined(BMK_LEGACY_TIMER) 39+#if defined(BMK_LEGACY_TIMER)
40+ 40+
41 static int FUZ_GetMilliStart(void) 41 static int FUZ_GetMilliStart(void)
42 { 42 {
43+ // Based on Legacy ftime() 43+ // Based on Legacy ftime()
44 struct timeb tb; 44 struct timeb tb;
45 int nCount; 45 int nCount;
46 ftime( &tb ); 46 ftime( &tb );
47@@ -112,6 +121,20 @@ static int FUZ_GetMilliStart(void) 47@@ -113,6 +122,20 @@ static int FUZ_GetMilliStart(void)
48 return nCount; 48 return nCount;
49 } 49 }
50  50
51+#else 51+#else
52+ 52+
53+static int FUZ_GetMilliStart() 53+static int FUZ_GetMilliStart()
54+{ 54+{
55+ // Based on newer gettimeofday() 55+ // Based on newer gettimeofday()
56+ // Use GetMilliSpan to correct for rollover 56+ // Use GetMilliSpan to correct for rollover
57+ struct timeval tv; 57+ struct timeval tv;
58+ int nCount; 58+ int nCount;
59+ gettimeofday(&tv, NULL); 59+ gettimeofday(&tv, NULL);
60+ nCount = (int) (tv.tv_usec/1000 + (tv.tv_sec & 0xfffff) * 1000); 60+ nCount = (int) (tv.tv_usec/1000 + (tv.tv_sec & 0xfffff) * 1000);