#endif
int to_stdout; /* output to stdout (-c) */
-#ifndef decompress
+#ifdef decompress
+int decompress_wanted;
+#else
int decompress; /* decompress (-d) */
+#define decompress_wanted decompress
#endif
int force; /* don't ask questions, compress links (-f) */
int no_name = -1; /* don't save or restore the original file name */
* Systems which do not support links can still use -d or -dc.
* Ignore an .exe extension for MSDOS, OS/2 and VMS.
*/
-#ifndef decompress
if ( strncmp(progname, "un", 2) == 0 /* ungzip, uncompress */
|| strncmp(progname, "gun", 3) == 0) { /* gunzip */
- decompress = 1;
+ decompress_wanted = 1;
}
-#endif
if (strequ(progname+1, "cat") /* zcat, pcat, gcat */
|| strequ(progname, "gzcat")) { /* gzcat */
-#ifndef decompress
- decompress = 1;
-#endif
+ decompress_wanted = 1;
to_stdout = 1;
}
#endif
case 'c':
to_stdout = 1; break;
case 'd':
-#ifndef decompress
- decompress = 1;
-#endif
+ decompress_wanted = 1;
break;
case 'f':
force++; break;
break;
case 't':
test = to_stdout = 1;
-#ifndef decompress
- decompress = 1;
-#endif
+ decompress_wanted = 1;
break;
case 'v':
verbose++; quiet = 0; break;
}
} /* loop on all arguments */
+#ifndef SUPPORT_ZIP
+ if (!decompress_wanted) {
+ fprintf(stderr, "%s: this version does not support compression\n",
+ progname);
+ do_exit(ERROR);
+ }
+#endif
+
/* By default, save name and timestamp on compression but do not
* restore them on decompression.
*/