Commit Graph

532 Commits

Author SHA1 Message Date
Cyan4973
644b7bd2b6 fixed minor declaration issue with clang on msys 2018-04-23 15:52:44 -07:00
Yann Collet
133a50b780 fixed DISPLAYUPDATE()
wrong comparison, which was always overflowing (hence was always true)
except when it was not (i386, reported by pmc)
in which case it would never show any information.
2018-04-06 14:16:23 -07:00
Yann Collet
1faa7e2698 bench: introduced hidden command -S
to benchmark multiple files with separate results
2018-03-19 17:19:25 -07:00
Yann Collet
5b67c7d185 Merge branch 'dev' of github.com:Cyan4973/lz4 into dev 2018-03-19 16:18:25 -07:00
Yann Collet
d6711a7cff minor man fix on clevels 2018-03-19 16:18:10 -07:00
W. Felix Handte
9dcd9abc14 Make LZ4F_compressFrame_usingCDict Take a Compression Context 2018-03-12 14:58:43 -04:00
Yann Collet
179670f32f use TIMELOOP_NANOSEC,
as suggested by @terrelln
2018-02-20 15:26:59 -08:00
Yann Collet
34c1634d4b fixed minor conversion warning 2018-02-20 14:13:13 -08:00
Yann Collet
ae3dededed ensure bench speed measurement is more accurate for small inputs
Previous method would produce too many time() invocations,
becoming a significant fraction of workload measured.

The new strategy is to use time() only once per batch,
and dynamically resize batch size so that each round lasts approximately 1 second.

This only matters for small inputs.
Measurement for large files (such as silesia.tar) are much less impacted
(though decoding speed is so fast that even medium-size files will notice an improvement).
2018-02-20 13:09:13 -08:00
Yann Collet
1a233c5f0f update bench.c to use less time invocations
translating into more accurate speed measurements for small sources
2018-02-20 11:37:19 -08:00
hobomind
b202c67234
fix: missed semicolon at programs/lz4io.c:954 2018-02-14 18:47:56 +03:00
Yann Collet
7dba09af47 use more restrictive conditions for clock_gettime() 2018-01-16 10:21:37 -08:00
Yann Collet
75e22d133e minor : try to tell static analyzer that we don't care if fseek() fails
as already explained in comments.
2018-01-13 22:52:17 -08:00
Yann Collet
8e69328d61 programs/datagen : attempt to please static analyzer
with an assert()
to reduce false positive
2018-01-13 22:24:32 -08:00
Yann Collet
fe66e78b96 lz4io: fixed minor ressource leak 2018-01-13 22:18:04 -08:00
Yann Collet
52a76ff682 update man page 2018-01-13 19:06:33 -08:00
Yann Collet
ac38ffa9af updated manuals to v1.8.1 2018-01-13 18:46:13 -08:00
Nick Terrell
00eac87dda [lz4io] Refuse to set file stat for non-regular files 2018-01-05 11:54:35 -08:00
Nick Terrell
9474b706a5 [lz4io] Fix decompression file stat with --rm 2018-01-05 11:27:24 -08:00
Yann Collet
506ae9c333
Merge pull request #439 from eli-b/doc-nohup-behavior
Docs: describe behavior under nohup
2018-01-02 00:19:59 +01:00
Eli Boyarski
329dcd4765
Docs: describe behavior under nohup 2018-01-01 15:38:48 +02:00
Eli Boyarski
c8411ea880
Grammar: "to silent" -> "to silence" 2018-01-01 14:15:31 +02:00
Alice Atlas
42a31aee50 Fix bug which could sometimes result in the lz4 cli chmodding /dev/null if running as root 2017-12-04 16:07:31 -05:00
Yann Collet
6c94c94d46 minor updates to examples
see 810e2ca27b (commitcomment-25810887)
2017-11-24 17:18:46 -08:00
Nick Terrell
74d8688bc8 [bench] Use higher resolution timer on POSIX
The timer used was only accurate up to 0.01 seconds. This timer is accurate up to 1 ns.
It is a monotonic timer that measures the real time difference, not on CPU time.

Copied the benchmark code from 6ab4d5e904
2017-10-17 13:55:35 -07:00
Yann Collet
dccf8826f1 lz4cli : minor rewrite of lz4c legacy commands
for clarity
2017-10-14 23:50:07 -07:00
Yann Collet
2d827e1b28 lz4cli : removed extension artefacts
It used to be useful for an old Windows variant which is no longer maintained.
2017-10-14 18:48:00 -07:00
W. Felix Handte
9a16272261 Read the Dictionary into a Circular Buffer 2017-10-09 20:18:21 -04:00
W. Felix Handte
2bd85f4199 Add Dictionary Support to the Command Line Tool 2017-10-09 20:16:00 -04:00
Yann Collet
a30cba08f4 fixed a bunch of -Wcomma warnings
reported by @rvandermeulen (#398)
2017-09-10 14:32:38 -07:00
Yann Collet
00418f7611 bench : made decompression speed evaluation same time as compression
minor : slightly modified an example do avoid disabling a gcc warning through #pragma
2017-09-07 12:12:36 -07:00
Yann Collet
ee5332438b minor Makefile fixes 2017-09-06 17:41:44 -07:00
Yann Collet
c4d6884cd8 build: source files sorted in a FS independent manner
to be more compatible with reproducible builds.
patch inspired by @bmwiedemann
2017-08-26 12:22:51 -07:00
Yann Collet
c04655bebf fixed make recurrence from /tests 2017-08-24 17:58:13 -07:00
Yann Collet
82ccdec2fb minor : added header license 2017-08-24 16:59:47 -07:00
Yann Collet
68040a76ad fixed man directory installation (#337)
also : lz4c is now a symlink to lz4
2017-08-23 17:53:45 -07:00
Yann Collet
a1f3a27e9b Merge branch 'dev' into installVars and fixed conflicts 2017-08-15 16:57:00 -07:00
Yann Collet
01cdbfb5fe lz4c legacy commands are now enabled at runtime based on link/binary name "lz4c"
instead of selected at compilation time depending on a macro.
This design makes it possible to have a single binary which supports both modes.

An advantageous side effect is that when doing `make; make install`
no additional binary is created during `make install`
(it used to create `lz4c`, because `make` would only build `lz4`)
2017-08-14 16:56:05 -07:00
Yann Collet
aea7d521ae better respect GNU standard Makefile conventions
supports lowercase directory variables
add an "Installation" section in README.md
added an INSTALL file
2017-08-14 15:13:23 -07:00
Yann Collet
930a692110 cli : restored command -BX to enable block checksum (#322) 2017-08-11 17:58:46 -07:00
Yann Collet
dba4d70a1d updated man page 2017-08-06 21:04:46 -07:00
FeRD (Frank Dana)
872f767fec Fix formatting of concatenation example
The "Concatenation of .lz4 files" section contains example commands
that are run together on one line, making them invalid. Wrap them
in a code block and clean up surrounding formatting.
2017-07-08 07:43:51 -04:00
Chocobo1
a4ec7fa7b7 Fix gcc7 Wimplicit-fallthrough warnings
For the default Wimplicit-fallthrough=3 level,
the comment should start with "fall*"
2017-06-19 13:57:35 +08:00
Yann Collet
a6fd0f9d0b -g compilation flag not by default for lz4 cli 2017-06-13 14:45:48 -07:00
Yann Collet
d18084c655 report where decompression ends (#313)
suggested by @ehem
note : only works for files < 2 GB
2017-06-12 15:47:43 -07:00
Yann Collet
03d8586fca cli accept block sizes with KB / MB prefixes 2017-05-26 14:38:47 -07:00
Yann Collet
b8575f2d2b updated Makefile
to automatically build manual files with
make all
2017-05-10 13:26:04 -07:00
Alexey Tourbin
a41df535f7 lz4cli.c: fix a comment: LZ4HC_DEFAULT_CLEVEL -> LZ4HC_CLEVEL_MAX
Actually the program only mentions LZ4HC_CLEVEL_MAX.
2017-04-29 16:18:37 +03:00
Sean Purcell
9b1f00056a Fix inline compile errors 2017-03-27 12:26:12 -07:00
Sean Purcell
afde27acf2 Fix IS_CONSOLE returning 1 for NUL on windows 2017-03-27 12:10:10 -07:00
Yann Collet
84246b974e Merge pull request #341 from iburinoc/exematch
Ignore extensions in exe name matching
2017-03-24 20:42:27 -07:00
Sean Purcell
e9c3b14f29 Ignore extensions in exe name matching 2017-03-24 16:33:14 -07:00
Dmitry V. Levin
b1daffc4e5 cli: add GNU separator -- specifying that all following arguments are files
This option is supported by other compressors with compatible cli,
so add it to lz4 as well for better compatibility.
2017-03-23 03:48:51 +00:00
Yann Collet
cd35f0d98c LZ4_compress_HC_destSize() uses LZ4HC_compress_generic() code path
Limits compression level to 10,
to remain compatible with Hash Chain.
2017-03-16 15:10:38 -07:00
Yann Collet
9144520dc9 fixed Visual compilation error
static const must be a "constant", like a macro
even if it can be determined at compile time ...
2017-03-15 18:59:26 -07:00
Yann Collet
a33bf89c62 fix #332 : do not modify /dev/null permissions 2017-03-15 17:26:50 -07:00
Przemyslaw Skibinski
cb1671955a bench.c: respect LZ4_MAX_INPUT_SIZE limit 2017-03-10 20:49:25 +01:00
Przemyslaw Skibinski
ca2c5fd3c6 CFLAGS=-I/usr/include/x86_64-linux-gnu 2017-02-16 00:17:42 +01:00
Przemyslaw Skibinski
ace22424d8 circle.yml: fixed lz4c32 target (2) 2017-02-15 23:19:30 +01:00
Przemyslaw Skibinski
68a358769e Avoid fseek()'s 2GiB barrier with MinGW 2017-02-15 17:17:57 +01:00
Przemyslaw Skibinski
40ad1e85d4 upgraded util.h 2017-02-15 17:16:15 +01:00
Przemyslaw Skibinski
c7b14967ab updated platform.h 2017-02-10 14:53:58 +01:00
Przemyslaw Skibinski
489d1618c9 added "This Makefile is validated for" 2017-01-19 16:28:08 +01:00
Chocobo1
db6f733ecc Use logical or instead of bitwise or 2017-01-13 00:43:25 +08:00
Chocobo1
44f95e92ea Fix printf specifier 2017-01-13 00:36:24 +08:00
Przemyslaw Skibinski
7a73c5c1fe changed default PREFIX and MANDIR 2016-12-28 11:34:23 +01:00
Przemyslaw Skibinski
efaa9b7bc7 Merge remote-tracking branch 'refs/remotes/lz4/dev' into dev
# Conflicts:
#	lib/Makefile
2016-12-27 10:43:07 +01:00
Przemyslaw Skibinski
b22e2bed5e BSD: improved "make install" 2016-12-23 10:05:41 +01:00
Przemyslaw Skibinski
ea51ad0cee Solaris: working "make install" 2016-12-23 00:02:01 +01:00
Yann Collet
19c0f21b00 updated Makefile : lz4 no longer recompiled when already up-to-date 2016-12-22 18:02:09 +01:00
Przemyslaw Skibinski
9b4b081c15 "make test" is now compatible with Solaris 2016-12-22 17:18:39 +01:00
Yann Collet
b41f9bb132 Merge pull request #292 from inikep/dev
improved POSIX
2016-12-22 11:58:29 +01:00
Yann Collet
52cac9a973 updated a few macros names 2016-12-22 11:41:05 +01:00
Przemyslaw Skibinski
fea95c1567 use FindFirstFileA and FindNextFileA on Windows 2016-12-22 10:58:58 +01:00
Przemyslaw Skibinski
e6af952f84 improved comments 2016-12-21 19:49:06 +01:00
Przemyslaw Skibinski
5812450635 use fseeko for 32-bit MacOS 2016-12-21 18:46:14 +01:00
Przemyslaw Skibinski
f084b65383 test Large File support for Mac OS-X in 32-bits mode 2016-12-21 17:13:38 +01:00
Przemyslaw Skibinski
973bc79740 util.h and platform.h based on zstd 2016-12-21 16:10:09 +01:00
Przemyslaw Skibinski
2fd7eb554a fixed Visual Studio compilation 2016-12-21 11:53:16 +01:00
Przemyslaw Skibinski
64cbc4e1dc improved MinGW support 2016-12-21 10:22:40 +01:00
Przemyslaw Skibinski
9546ba62d0 executables use basic types from util.h 2016-12-21 09:44:59 +01:00
Przemyslaw Skibinski
452cc970d6 reordered definitons in platform.h 2016-12-20 23:38:32 +01:00
Przemyslaw Skibinski
090cb887a3 improved formatting (2) 2016-12-20 22:21:03 +01:00
Przemyslaw Skibinski
e1332241a5 improved formatting 2016-12-20 21:11:39 +01:00
Przemyslaw Skibinski
5f0cc8e2d0 fixed gcc warnings (2) 2016-12-20 20:52:18 +01:00
Przemyslaw Skibinski
2efedaf7dc fixed gcc warnings 2016-12-20 19:31:05 +01:00
Przemyslaw Skibinski
6adf05d1ed improved platform.h 2016-12-20 18:56:09 +01:00
Przemyslaw Skibinski
2cfef13952 executables use platform.h 2016-12-20 18:05:43 +01:00
Przemyslaw Skibinski
bb69cdf258 updated util.h 2016-12-20 18:03:30 +01:00
Przemyslaw Skibinski
45b14ab8e0 added platfom.h 2016-12-20 18:03:13 +01:00
Przemyslaw Skibinski
e7c42d757d Merge remote-tracking branch 'refs/remotes/lz4/dev' into dev 2016-12-09 12:37:21 +01:00
Yann Collet
de93e9e5d8 fix #285 : lz4cat doesn't work with stdin (reported by @beiDei8z) 2016-12-08 14:25:04 -08:00
Przemyslaw Skibinski
20183ad7af Merge remote-tracking branch 'refs/remotes/lz4/dev' into dev 2016-12-08 15:22:02 +01:00
Yann Collet
0280cf40dd fixed path-1, as suggested by @t-mat 2016-12-08 02:47:42 +01:00
Yann Collet
750a50cf67 fix #284, reported by @beiDei8z : added test cases for path/to/lz4cat 2016-12-07 14:49:04 -08:00
Yann Collet
01ffed25ad fix : invocation of path/to/unlz4 (#284), reported by @beiDei8z 2016-12-07 14:29:22 -08:00
Przemyslaw Skibinski
1289038240 15-bit LZ4HC_HASH_LOG 2016-12-07 14:31:46 +01:00
Przemyslaw Skibinski
1833be1cf0 fixed gcc warnings 2016-12-07 12:59:05 +01:00
Przemyslaw Skibinski
5ae0e789fc Merge remote-tracking branch 'refs/remotes/lz4/dev' into dev 2016-12-06 13:44:42 +01:00
Yann Collet
5eb547a608 fix #283 : implement LZ4_versionString(). 2016-12-04 20:05:36 +01:00