blob: fcf91f71d376490b91a7ea6abdf0e0696903b3f1 [file] [log] [blame]
add support for xz
http://bugs.gentoo.org/302380
--- a/src/makewhatis.sh
+++ b/src/makewhatis.sh
@@ -230,7 +230,7 @@
find $mandir/${pages}$i/. -name '*' $findarg0 $findarg -print | $AWK '
function readline() {
- if (use_zcat || use_bzcat || use_lzcat) {
+ if (use_zcat || use_bzcat || use_lzcat || use_xzcat) {
result = (pipe_cmd | getline);
if (result < 0) {
print "Pipe error: " pipe_cmd " " ERRNO > "/dev/stderr";
@@ -245,7 +245,7 @@
}
function closeline() {
- if (use_zcat || use_bzcat || use_lzcat) {
+ if (use_zcat || use_bzcat || use_lzcat || use_xzcat) {
return close(pipe_cmd);
} else {
return close(filename);
@@ -266,7 +266,9 @@
use_bzcat = match(filename,"\\.bz2");
if(!use_bzcat)
use_lzcat = match(filename,"\\.lzma");
- if (use_zcat || use_bzcat || use_lzcat ) {
+ if(!use_lzcat)
+ use_xzcat = match(filename,"\\.xz");
+ if (use_zcat || use_bzcat || use_lzcat || use_xzcat) {
filename_no_gz = substr(filename, 0, RSTART - 1);
} else {
filename_no_gz = filename;
@@ -279,13 +281,15 @@
actual_section = section;
}
sub(/\..*/, "", progname);
- if (use_zcat || use_bzcat || use_lzcat) {
+ if (use_zcat || use_bzcat || use_lzcat || use_xzcat) {
if (use_zcat) {
pipe_cmd = "zcat \"" filename "\"";
} else if (use_bzcat) {
pipe_cmd = "bzcat \"" filename "\"";
- } else {
+ } else if (use_lzcat) {
pipe_cmd = "lzcat \"" filename "\"";
+ } else {
+ pipe_cmd = "xzcat \"" filename "\"";
}
# try to avoid suspicious stuff
if (filename ~ /[;&|`$(]/) {