Ludovic Courtès
87399dfc20
lzlib: 'make-lzip-input-port' better handles end of decompression.
...
Suggested by Pierre Neidhardt <mail@ambrevar.xyz>.
* guix/lzlib.scm (lzread!): Call 'lz-decompress-finish' when
'feed-decoder!' returns EOF. Call 'lz-decompress-finished?' to
determine end of compression.
2019-06-01 15:26:30 +02:00
Ludovic Courtès
c131bea276
lzlib: 'lzread!' never returns more than it was asked for.
...
Fixes a bug whereby 'lzread!' could return more than COUNT.
* guix/lzlib.scm (lzread!): Rewrite in a semi-functional style.
2019-05-27 22:47:24 +02:00
Ludovic Courtès
2a991f3ae4
lzlib: Add 'make-lzip-input-port/compressed'.
...
* guix/lzlib.scm (lzwrite!, make-lzip-input-port/compressed): New
procedures.
* tests/lzlib.scm ("make-lzip-input-port/compressed"): New test.
* guix/tests.scm (%seed): Export.
2019-05-27 22:47:24 +02:00
Ludovic Courtès
e13354a7ca
lzlib: Adjust 'lz-compress-read' docstring.
...
* guix/lzlib.scm (lz-compress-read): The integer return can be zero;
adjust docstring accordingly.
2019-05-27 22:47:23 +02:00
Pierre Neidhardt
ecfc54403e
guix: Simplify and robustify lzread!.
...
* guix/lzlib.scm (lzread!): Do it.
Previously lzread! would fail if COUNT was bigger
than (lz-decompress-write-size). This is possible if a previous call to
lzread! didn't empty the LZ_decompress input buffer (e.g. BV was too small to
fit all the data).
2019-05-07 18:40:40 +02:00
Pierre Neidhardt
fea338c6ca
Add (guix lzlib).
...
* guix/lzlib.scm, tests/lzlib.scm: New files.
* Makefile.am (MODULES): Add guix/lzlib.scm.
(SCM_TESTS): Add tests/lzlib.scm.
* m4/guix.m4 (GUIX_LIBLZ_LIBDIR): New macro.
* configure.ac (LIBLZ_LIBDIR): Use it. Define and substitute
'LIBLZ'.
* guix/config.scm.in (%liblz): New variable.
* guix/self.scm (make-config.scm): Add TODO comment.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2019-05-06 23:21:33 +02:00