From: Jim Meyering Date: Mon, 29 Dec 2008 19:43:48 +0000 (+0100) Subject: bootstrap: don't use cmp's -s option when reading from a pipe X-Git-Tag: v7.1~73 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cf5616a0aaa6f357b5d74e495dddcc0d8dac100c;p=thirdparty%2Fcoreutils.git bootstrap: don't use cmp's -s option when reading from a pipe GNU cmp exits without reading all input when given the -s option, and that can cause termination of the writing process via SIGPIPE. Instead, when reading from a pipe, just redirect output to /dev/null so that all input is read. --- diff --git a/bootstrap b/bootstrap index 0b015ef60c..326417172f 100755 --- a/bootstrap +++ b/bootstrap @@ -198,7 +198,7 @@ insert_sorted_if_absent() { file=$1 str=$2 test -f $file || touch $file - echo "$str" | sort -u - $file | cmp -s - $file \ + echo "$str" | sort -u - $file | cmp - $file > /dev/null \ || echo "$str" | sort -u - $file -o $file \ || exit 1 } @@ -585,7 +585,7 @@ slurp() { if test $file = Makefile.am; then copied=$copied${sep}$gnulib_mk; sep=$nl remove_intl='/^[^#].*\/intl/s/^/#/;'"s!$bt_regex/!!g" - sed "$remove_intl" $1/$dir/$file | cmp -s - $dir/$gnulib_mk || { + sed "$remove_intl" $1/$dir/$file | cmp - $dir/$gnulib_mk > /dev/null || { echo "$0: Copying $1/$dir/$file to $dir/$gnulib_mk ..." && rm -f $dir/$gnulib_mk && sed "$remove_intl" $1/$dir/$file >$dir/$gnulib_mk