diff options
Diffstat (limited to 'winsup/cygwin/cygmagic')
-rwxr-xr-x | winsup/cygwin/cygmagic | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/winsup/cygwin/cygmagic b/winsup/cygwin/cygmagic index 87e571d9c..16053624d 100755 --- a/winsup/cygwin/cygmagic +++ b/winsup/cygwin/cygmagic @@ -17,10 +17,16 @@ cat <<EOF > $file_magic /* autogenerated - do not edit */ #include "$file" EOF +if sum -r /dev/null; then + sumit(){ sum -r $*; } +else + sumit(){ sum $*; } +fi + while [ -n "$1" ]; do define=$1; shift struct=$1; shift - sum=`$gcc -E $file | sed -n "/^$struct/,/^};/p" | sed -e 's/[ ]//g' -e '/^$/d' | sum | awk '{printf "0x%x", $1}'` + sum=`$gcc -E $file | sed -n "/^$struct/,/^};/p" | sed -e 's/[ ]//g' -e '/^$/d' | sumit | awk '{printf "0x%x", $1}'` echo "#define $define $sum" curr=`sed -n "s/^#[ ]*define CURR_$define[ ][ ]*\([^ ][^ ]*\)/\1/p" $file` [ "$curr" != "$sum" ] && echo "*** WARNING WARNING WARNING WARNING WARNING *** |