From: Gao Xiang <hsiang...@aol.com> Hi folks,
Thanks to Lasse, liblzma finally has a preliminary usable fixed-sized output compression support. I've made a quick integration and it seems work. The preliminary C/R result of this is: 459382784 enwik9_4k.squashfs.xz.img 401649664 enwik9_8k.squashfs.xz.img 371617792 enwik9_4k.lzma.erofs.img 360972288 enwik9_16k.squashfs.xz.img * Also -zlzma,1, 389115904 enwik9_4k.lzma.erofs.img So it's worthwhile to take the further step and get an entire solution. TODOs: - make a formal configure.ac / Makefile.am rather than such hack; - save DICT_SIZE to super block rather than using a fixed value; - support threaded compression to boost up build time (including segment compression); - look on sorting out kernel side support. Thanks, Gao Xiang Cc: Lasse Collin <lasse.col...@tukaani.org> Gao Xiang (4): erofs-utils: clevel set up as an individual function erofs-utils: add liblzma dependency erofs-utils: mkfs: add LZMA algorithm support erofs-utils: fuse: add LZMA algorithm support fuse/Makefile.am | 2 +- include/erofs_fs.h | 3 +- lib/Makefile.am | 2 + lib/compress.c | 16 ++++--- lib/compressor.c | 23 +++++++--- lib/compressor.h | 7 ++- lib/compressor_liblzma.c | 93 ++++++++++++++++++++++++++++++++++++++++ lib/compressor_lz4.c | 1 - lib/compressor_lz4hc.c | 21 ++++++--- lib/data.c | 7 +-- lib/decompress.c | 62 +++++++++++++++++++++++++++ mkfs/Makefile.am | 2 +- 12 files changed, 211 insertions(+), 28 deletions(-) create mode 100644 lib/compressor_liblzma.c -- 2.24.0