From: Francois Fleuret Date: Fri, 19 Mar 2010 16:48:00 +0000 (+0100) Subject: The MD5 hashing is now a compilation option, and off by default. X-Git-Url: https://fleuret.org/cgi-bin/gitweb/gitweb.cgi?a=commitdiff_plain;h=46181230584702e9d59e54890ee761d9373c4dd3;p=finddup.git The MD5 hashing is now a compilation option, and off by default. --- diff --git a/finddup.1 b/finddup.1 index 46a4326..faaef4d 100644 --- a/finddup.1 +++ b/finddup.1 @@ -63,7 +63,7 @@ show the real path of the files files with same inode are considered as different .TP \fB-m\fR, \fB--md5\fR -use MD5 hashing +use MD5 hashing (if compiled with the option) .SH "BUGS" @@ -74,15 +74,18 @@ the said file has to be read fully for a comparison (i.e. two files match and we have to read them completely). Hence, in practice lot of partial MD5s are computed, which costs a lot -of cpu and is useless. This often hurts more than it helps, hence it -is off by default. The only case when it should really be useful is -when you have plenty of different files of same size, and lot of -similar ones, which does not happen often. +of cpu and is useless. This often hurts more than it helps. The only +case when it should really be useful is when you have plenty of +different files of same size, and lot of similar ones, which does not +happen often. Forcing the files to be read fully so that the MD5s are properly computed is not okay neither, since it would fully read certain files, even if we will never need their MD5s. +Anyway, it has to be compiled in with 'make WITH_MD5=yes', and even in +that case it will be off by default + .SH "WISH LIST" The format of the output should definitely be improved. Not clear how. diff --git a/finddup.c b/finddup.c index 1ea54ce..98008f4 100644 --- a/finddup.c +++ b/finddup.c @@ -520,7 +520,7 @@ void start(const char *dirname1, const char *dirname2) { free(buffer2); } -void print_help(FILE *out) { +void usage(FILE *out) { fprintf(out, "Usage: finddup [OPTION]... DIR1 [[and:|not:]DIR2]\n"); fprintf(out, "Version %s (%s)\n", VERSION_NUMBER, UNAME); fprintf(out, "Without DIR2, lists duplicated files found in DIR1. With DIR2, lists files common to both directories. With the not: prefix, lists files found in DIR1 which do not exist in DIR2. The and: prefix is the default and should be used only if you have a directory starting with 'not:'\n"); @@ -568,7 +568,7 @@ int main(int argc, char **argv) { switch (c) { case 'h': - print_help(stdout); + usage(stdout); exit(EXIT_SUCCESS); break; @@ -606,12 +606,14 @@ int main(int argc, char **argv) { use_md5 = 1; #else fprintf(stderr, - "finddup has not be compiled with MD5 hashing.\n"); + "finddup has not been compiled with MD5 hashing.\n"); + usage(stderr); exit(EXIT_FAILURE); #endif break; default: + usage(stderr); exit(EXIT_FAILURE); } } @@ -622,7 +624,7 @@ int main(int argc, char **argv) { same_inodes_are_different = 1; start(argv[optind], 0); } else { - print_help(stderr); + usage(stderr); exit(EXIT_FAILURE); }