I figured that it would be nice to support other compression programs for installed files, and Zstandard[1] seems like a good alternative for gzip in this area due to its fast decompression and wide range of options. This patch series depends on the patch I posted for bug#33880[2]. I have a few questions/comments: 1) I tested about everything except the Tramp part. One possible issue is that zstd prints a progress/summary line to stdout without the -q flag when compressing a single file; does Tramp care about that here? 2) Is there a convenient method to avoid the duplication of setting up the COMPR* (and perhaps other) variables in the doc/*/Makefile.in files? What about making a common file that other files load at the beginning? 3) Hopefully using eval is not an issue here. I believe the security should be the same, since I double quoted the filename strings (which I confirmed could be used to execute code without the extra quotes), and the old GZIP_PROG could also be exploited. [1] https://facebook.github.io/zstd/ [2] https://lists.gnu.org/archive/html/bug-gnu-emacs/2018-12/msg00926.html Alexander Gramiak (5): Add Zstandard compression support for etags Add Zstandard compression support for dired Add Zstandard compression support for Tramp * make-dist: Add option for zstd compression Add Zstandard compression option for make install INSTALL | 34 +++++++++++++++++++---- Makefile.in | 57 ++++++++++++++++++++++++++------------- admin/admin.el | 2 +- configure.ac | 36 ++++++++++++++++++------- doc/emacs/Makefile.in | 25 ++++++++++++----- doc/lispintro/Makefile.in | 25 ++++++++++++----- doc/lispref/Makefile.in | 25 ++++++++++++----- doc/man/etags.1 | 2 +- doc/misc/Makefile.in | 25 ++++++++++++----- doc/misc/tramp.texi | 9 ++++--- etc/NEWS | 30 +++++++++++++++++++++ lib-src/etags.c | 3 ++- lisp/dired-aux.el | 21 ++++++++++----- lisp/jka-cmpr-hook.el | 4 +-- lisp/net/tramp-archive.el | 8 +++--- lisp/net/tramp-sh.el | 1 + make-dist | 8 +++++- 17 files changed, 239 insertions(+), 76 deletions(-)