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 Matsuokadiff -r1.1 -r1.2 pkgsrc/archivers/lz4/Makefile
(fhajny)
@@ -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 | |||
3 | DISTNAME= lz4-r120 | 3 | DISTNAME= lz4-r123 | |
4 | PKGNAME= ${DISTNAME:S/-r/-/} | 4 | PKGNAME= ${DISTNAME:S/-r/-/} | |
5 | CATEGORIES= archivers | 5 | CATEGORIES= archivers | |
6 | MASTER_SITES= -https://github.com/Cyan4973/lz4/archive/${DISTNAME:S/lz4-//}${EXTRACT_SUFX} | 6 | MASTER_SITES= -https://github.com/Cyan4973/lz4/archive/${DISTNAME:S/lz4-//}${EXTRACT_SUFX} | |
7 | 7 | |||
8 | MAINTAINER= filip@joyent.com | 8 | MAINTAINER= filip@joyent.com | |
9 | HOMEPAGE= http://code.google.com/p/lz4/ | 9 | HOMEPAGE= http://code.google.com/p/lz4/ | |
10 | COMMENT= Extremely Fast Compression algorithm | 10 | COMMENT= Extremely Fast Compression algorithm | |
11 | LICENSE= 2-clause-bsd | 11 | LICENSE= 2-clause-bsd | |
12 | 12 | |||
13 | USE_LANGUAGES= c c99 | 13 | USE_LANGUAGES= c c99 | |
14 | USE_TOOLS+= gmake pkg-config | 14 | USE_TOOLS+= gmake pkg-config | |
15 | 15 | |||
16 | CPPFLAGS.SunOS+= -D_XOPEN_SOURCE=600 | 16 | CPPFLAGS.SunOS+= -D_XOPEN_SOURCE=600 |
@@ -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 $ | |
2 | bin/lz4 | 2 | bin/lz4 | |
3 | bin/lz4c | 3 | bin/lz4c | |
4 | bin/lz4cat | 4 | bin/lz4cat | |
5 | include/lz4.h | 5 | include/lz4.h | |
6 | include/lz4hc.h | 6 | include/lz4hc.h | |
7 | lib/liblz4.a | 7 | lib/liblz4.a | |
8 | lib/liblz4.so | 8 | lib/liblz4.so | |
9 | lib/liblz4.so.1 | 9 | lib/liblz4.so.1 | |
10 | lib/liblz4.so.1.3.0 | 10 | lib/liblz4.so.1.3.1 | |
11 | lib/pkgconfig/liblz4.pc | 11 | lib/pkgconfig/liblz4.pc | |
12 | man/man1/lz4.1 | 12 | man/man1/lz4.1 | |
13 | man/man1/lz4c.1 | 13 | man/man1/lz4c.1 | |
14 | man/man1/lz4cat.1 | 14 | man/man1/lz4cat.1 |
@@ -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 | |||
3 | SHA1 (lz4-r120.tar.gz) = 6c657297eb9bd47f2f4de76fbc89204b652377c9 | 3 | SHA1 (lz4-r123.tar.gz) = 588d51ea02a0bc325229601412b1e829a4806413 | |
4 | RMD160 (lz4-r120.tar.gz) = fa76b7dff8a5bda1de370a28ca7d7719031ef7a6 | 4 | RMD160 (lz4-r123.tar.gz) = 2a6c899dee8f84b619f7cdb8ec0cea3ebb273910 | |
5 | Size (lz4-r120.tar.gz) = 161950 bytes | 5 | Size (lz4-r123.tar.gz) = 137315 bytes | |
6 | SHA1 (patch-Makefile) = 30b138d69267c9d3b110165e2b709e8e1b01f552 | 6 | SHA1 (patch-Makefile) = 223bf2c60dfd050ef4eb2e03feda988011686cdb | |
7 | SHA1 (patch-programs_Makefile) = 8d633547c1bac2710d49c859be41463a32693408 | 7 | SHA1 (patch-programs_Makefile) = b248d8967966c482f9d2ee6d51faf245aca3aab1 | |
8 | SHA1 (patch-programs_fuzzer.c) = fc7560d0257e8e90bcccf7ae8082061ff0d9ebf4 | 8 | SHA1 (patch-programs_fuzzer.c) = 711c0e37128d983000bde1b42afec6f9ee9f0e85 |
@@ -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 | |||
3 | Make portable, use pkgsrc install scripts. | 3 | Make 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 |
@@ -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 | |||
3 | Make portable, use pkgsrc install scripts. | 3 | Make 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 |
@@ -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 | |||
3 | Add portable code for ftime for NetBSD. | 3 | Add portable code for ftime for NetBSD. | |
4 | 4 | |||
5 | Based on https://code.google.com/p/lz4/source/detail?r=81. | 5 | Based 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); |