linux-man.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Alexander Miller <alex.miller-Mmb7MZpHnFY@public.gmane.org>
To: mtk.manpages-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
Cc: linux-man-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: [PATCH 6/7] Makefile: Avoid compressing very small files in gz/bz2/xz targets
Date: Sat, 16 Apr 2016 03:09:03 +0200	[thread overview]
Message-ID: <20160416030903.624571b1.alex.miller@gmx.de> (raw)
In-Reply-To: <20160416022503.1df762cb.alex.miller-Mmb7MZpHnFY@public.gmane.org>

Compressing very small files has only disadvantages. There is
the overhead of running a decompressor, and because of the
added file headers they become even bigger.

Since the scan and uninstall targets now properly handle
mixing compressed and uncompressed files, it becomes possible
to avoid compression where it's not beneficial.

Signed-off-by: Alexander Miller <alex.miller-Mmb7MZpHnFY@public.gmane.org>
---
If you want to support this feature but disable it by default,
you can set NOCOMPRESS_SIZE=0.
---
 Makefile | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/Makefile b/Makefile
index 86b1568..2c5719c 100644
--- a/Makefile
+++ b/Makefile
@@ -10,6 +10,7 @@ MANDIR=$(prefix)/share/man
 GZIP=gzip -9
 BZIP2=bzip2 -9
 LZMA=xz --lzma2=dict=1M,pb=0
+NOCOMPRESS_SIZE=256
 
 all: screen remove install
 
@@ -53,15 +54,15 @@ uninstall remove:
 
 gz:
 	find man? -mindepth 1 -maxdepth 1 -name '*.[gx]z' -o -name '*.bz2' \
-		-o -exec $(GZIP) '{}' +
+		-o -size +$(NOCOMPRESS_SIZE)c -exec $(GZIP) '{}' +
 
 bz2:
 	find man? -mindepth 1 -maxdepth 1 -name '*.[gx]z' -o -name '*.bz2' \
-		-o -exec $(BZIP2) '{}' +
+		-o -size +$(NOCOMPRESS_SIZE)c -exec $(BZIP2) '{}' +
 
 xz:
 	find man? -mindepth 1 -maxdepth 1 -name '*.[gx]z' -o -name '*.bz2' \
-		-o -exec $(LZMA) '{}' +
+		-o -size +$(NOCOMPRESS_SIZE)c -exec $(LZMA) '{}' +
 
 uncompress:
 	find man? -name '*.gz' -exec gunzip '{}' + \
-- 
2.7.3

--
To unsubscribe from this list: send the line "unsubscribe linux-man" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  parent reply	other threads:[~2016-04-16  1:09 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-16  0:25 [PATCH 0/7] Improve support for compressed man pages Alexander Miller
     [not found] ` <20160416022503.1df762cb.alex.miller-Mmb7MZpHnFY@public.gmane.org>
2016-04-16  0:45   ` [PATCH 1/7] Makefile: Use better xz options Alexander Miller
2016-04-16  0:52   ` [PATCH 2/7] Makefile: Improve uninstall target for compressed man pages Alexander Miller
2016-04-16  0:59   ` [PATCH 3/7] Makefile: Support compressed files for screen target Alexander Miller
2016-04-16  1:01   ` [PATCH 4/7] Makefile: Skip already compressed files in gz/bz2/xz targets Alexander Miller
2016-04-16  1:09   ` Alexander Miller [this message]
2016-04-16  1:09   ` [PATCH 7/7] Makefile: Mention xz in the instructive comment at top Alexander Miller
2016-04-16  4:50   ` [PATCH 0/7] Improve support for compressed man pages Mike Frysinger
     [not found]     ` <20160416045058.GS6588-UgUKS2FnFs9+urZeOPWqwQ@public.gmane.org>
2016-04-16 16:30       ` Alexander Miller
     [not found]         ` <20160416183013.352f4ba6.alex.miller-Mmb7MZpHnFY@public.gmane.org>
2016-04-18 12:57           ` Michael Kerrisk (man-pages)
     [not found]             ` <5714D9D2.8050501-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2016-04-18 17:10               ` Alexander Miller
     [not found]                 ` <20160418191026.7fa8c669.alex.miller-Mmb7MZpHnFY@public.gmane.org>
2016-04-18 18:30                   ` Mike Frysinger
     [not found]                     ` <20160418212955.498ce1dd.alex.miller@gmx.de>
     [not found]                       ` <20160418212955.498ce1dd.alex.miller-Mmb7MZpHnFY@public.gmane.org>
2016-04-18 19:45                         ` [PATCH] Makefile: Drop compression support and screen target Alexander Miller
2016-04-18 14:49           ` [PATCH 0/7] Improve support for compressed man pages Mike Frysinger
     [not found]             ` <20160418144918.GK5369-UgUKS2FnFs9+urZeOPWqwQ@public.gmane.org>
2016-04-18 15:08               ` walter harms
     [not found]                 ` <5714F856.9090206-fPG8STNUNVg@public.gmane.org>
2016-04-18 15:12                   ` Mike Frysinger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160416030903.624571b1.alex.miller@gmx.de \
    --to=alex.miller-mmb7mzphnfy@public.gmane.org \
    --cc=linux-man-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=mtk.manpages-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).