#!/bin/sh # (a script to be run in the root directory of the distribution, # probably as part of an enclosing do-something-with-whitespace script) # # Print to stdout the names of files whose whitespace we (SBCLers) # try to keep canonical. # glob patterns for source files in languages for which the # canonicalization is safe (not affecting meaning, at least given the # conservative syntax used in SBCL sources) source_extensions='.lisp .lisp-expr .c .h .asd' # other candidates: # .sh: if ./make.sh is altered, Bad Things happen # ? stamp_file=whitespace-stamp if [ -e $stamp_file ]; then find_opt="-newer $stamp_file" else find_opt="" fi # SunOS find does not support -path. Try to find a binary which does. if [ -n "$GNUFIND" ]; then : elif which gfind >/dev/null; then GNUFIND=gfind elif which gnufind >/dev/null; then GNUFIND=gnufind else GNUFIND=find; fi if ! "$GNUFIND" /dev/null -path dummy 2>/dev/null; then echo "Warning: $GNUFIND might not be GNU: use of -path fails." 1>&2 fi for source_extension in $source_extensions; do "$GNUFIND" . \( \ -path contrib/asdf -o \ -name _darcs -o \ -name '{arch}' -o \ -name CVS -o \ -name .hg -o \ -name .svn \) -type d -prune -o \ $find_opt -name '*'$source_extension -print done touch $stamp_file