fix symlink handling (generally and on OS X) in run-sbcl.sh
[sbcl.git] / tools-for-build / whitespacely-canonical-filenames
blob42935fe6b53416b7a81dc4ae27d594267339f45a
1 #!/bin/sh
3 # (a script to be run in the root directory of the distribution,
4 # probably as part of an enclosing do-something-with-whitespace script)
6 # Print to stdout the names of files whose whitespace we (SBCLers)
7 # try to keep canonical.
9 # glob patterns for source files in languages for which the
10 # canonicalization is safe (not affecting meaning, at least given the
11 # conservative syntax used in SBCL sources)
12 source_extensions='.lisp .lisp-expr .c .h .asd'
13 # other candidates:
14 # .sh: if ./make.sh is altered, Bad Things happen
15 # ?
17 stamp_file=whitespace-stamp
19 if [ -e $stamp_file ]; then
20 find_opt="-newer $stamp_file"
21 else
22 find_opt=""
25 # SunOS find does not support -path. Try to find a binary which does.
26 if [ -n "$GNUFIND" ]; then :
27 elif which gfind >/dev/null; then GNUFIND=gfind
28 elif which gnufind >/dev/null; then GNUFIND=gnufind
29 else GNUFIND=find; fi
30 if ! "$GNUFIND" /dev/null -path dummy 2>/dev/null; then
31 echo "Warning: $GNUFIND might not be GNU: use of -path fails." 1>&2
34 for source_extension in $source_extensions; do
35 "$GNUFIND" . \( \
36 -path contrib/asdf -o \
37 -name _darcs -o \
38 -name '{arch}' -o \
39 -name CVS -o \
40 -name .hg -o \
41 -name .svn \) -type d -prune -o \
42 $find_opt -name '*'$source_extension -print
43 done
45 touch $stamp_file