Commit graph

21 commits

Author SHA1 Message Date
Thomas Waldmann
1bdaffc62c crypto.low_level extension: build blake2 like zstd, see #3415
(cherry picked from commit 4a2fec32b6)
2017-12-18 04:29:33 +01:00
Thomas Waldmann
0118b939d9 update blake2 reference impl file (cosmetic)
only whitespace changes.

(cherry picked from commit b56f6cdbc0)
2017-12-18 04:26:15 +01:00
Thomas Waldmann
ba38d5199b move blake2 files to subdir ref/ (as seen in orig. repo)
(cherry picked from commit 8924d78d44)
2017-12-18 04:25:57 +01:00
Thomas Waldmann
7d8ec62b50 compress extension: build lz4 like zstd, see #3415
(cherry picked from commit 73a70082c2)
2017-12-18 02:41:30 +01:00
Thomas Waldmann
49f76a1e32 bundle lz4 1.8.0 src code, license
(cherry picked from commit c8b2820225)
2017-12-18 02:38:52 +01:00
Thomas Waldmann
c7383589cc bundle zstd 1.3.2 source code
only .c and .h files + license

(cherry picked from commit dc883f62ae)
2017-12-15 03:14:33 +01:00
Thomas Waldmann
0271ae6f95 support code to build bundled zstd code into the compress extension
setup_zstd.py modified so it is just amending the Extension() kwargs,
but the Extension is initialized by the caller.

this way, amending can happend multiple times (e.g. for multiple
compression algorithms).

also:
- move include/library dirs processing for system-library case
- move system zstd prefix detection to setup_zstd module
- cosmetic: setup.py whitespace fixes
- prefer system zstd option, document zstd min. requirement

(cherry picked from commit 34b92ffdaa)
2017-12-15 03:13:54 +01:00
Thomas Waldmann
01078328e2 zstd: use own Cython-based binding, remove python-zstandard dep
currently requires an externally available libzstd >= 1.3.0,
no bundled zstd yet.

(cherry picked from commit aec36f64a2)
2017-12-15 03:08:28 +01:00
Thomas Waldmann
23a1d62b25 crc32-slice-by-8.c: fix for C90 compilers
crc32_slice_by_8.c:344:3: error: ISO C90 forbids mixed declarations
and code [-Werror=declaration-after-statement]
2017-11-27 01:01:34 +01:00
Thomas Waldmann
831a06a07d move 3rd party docs/license file from package dir to docs/3rd_party
setup.py excludes all .c .h .pyx files from installation, but such
docs / license files would still be copied to the target directory
if they are inside the python "borg" package dir.
2017-11-27 00:02:37 +01:00
Thomas Waldmann
3d3f3500f9 crc32: deal with unaligned buffer, tests, fixes #3317
fixing only the (generic) slice-by-8 crc32 implementation,
it is assumed that CPUs supporting CLMUL can also efficiently
and correctly deal with unaligned accesses.

slice-by-8 is used e.g. on ARM cpus and they might not (efficiently)
support unaligned memory access, leading to bus errors or low
performance.

(cherry picked from commit f9cd6f7512)
2017-11-14 15:33:28 +01:00
Marian Beermann
019a258709 create _endian.h 2017-07-11 19:12:19 +02:00
Andrea Gelmini
e4247cc0d2 Fix typos 2017-06-09 16:49:30 +02:00
Marian Beermann
5b9c34f523 borg.algorithms definition 2017-06-07 23:53:19 +02:00
Marian Beermann
3f8a0221ee Revert "move chunker to borg.algorithms"
This reverts commit 956b50b29c.

# Conflicts:
#	setup.py
#	src/borg/archive.py
#	src/borg/helpers.py
2017-06-07 23:51:42 +02:00
Marian Beermann
909f099b1a algorithms.checksums: work around GCC 4.4 bug by disabling CLMUL
Also disabling this code path for 4.5; 4.6 was tested iirc.
2017-06-05 15:07:49 +02:00
Marian Beermann
6c91a750d1 algorithms: rename crc32 to checksums 2017-06-01 21:26:42 +02:00
Marian Beermann
0221e31058 file_integrity: use xxh64 2017-06-01 21:26:42 +02:00
Marian Beermann
956b50b29c move chunker to borg.algorithms 2017-05-02 19:15:01 +02:00
Marian Beermann
390aa76c72 move blake2 to borg/algorithms 2017-05-02 18:53:54 +02:00
Marian Beermann
fa381ffcbe create package borg.algorithms with borg.algorithms.crc32 module 2017-05-02 18:53:54 +02:00