X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=tools%2Ffind-sources.sh;h=0c6c56ffcb1948519faee4ba7faf605915e2e170;hb=HEAD;hp=b1481548e24f807a0cad789a2305e22a69ef70b4;hpb=737789818bf8658d3b3f4444a273b2d44021e51a;p=senf.git diff --git a/tools/find-sources.sh b/tools/find-sources.sh index b148154..0c6c56f 100755 --- a/tools/find-sources.sh +++ b/tools/find-sources.sh @@ -1,33 +1,31 @@ #!/bin/sh -e -if [ -z "$1" ]; then - echo "Usage:" - echo " $0 [-c] " - echo - echo "-c Only list C/C++ source files" - echo - echo " are any find commands (which should contain a -print somewhere)" - echo "which are matched for any file fond" - exit 1 -fi - +print="-print" cond="" -if [ "$1" = "-c" ]; then - shift - cond='( -name *.h -o -name *.hh -o -name *.ih -o -name *.c -o -name *.cc -o -name *.cci -o -name *.ct -o -name *.cti -o -name *.mpp -o -name *.dox )' -fi +while true ; do + case "$1" in + -n) print=""; shift ;; + -c) cond='( -name *.h -o -name *.hh -o -name *.ih -o -name *.c -o -name *.cc -o -name *.cci -o -name *.ct -o -name *.cti -o -name *.mpp -o -name *.dox )'; shift ;; + *) break ;; + esac +done set -f find . \ -name .svn -prune -o \ -name .git -prune -o \ + -name .sconf_temp -prune -o \ -name doc -prune -o \ -name debian -prune -o \ -name dist -prune -o \ -name build -prune -o \ + -path "*/tools/scons-*" -prune -o \ -name "*.a" -o \ -name "*.o" -o \ + -name "*.os" -o \ + -name "*.so" -o \ + \( -type f -a ! -name "*.*" -a -exec sh -c "file --brief {} | grep -q ELF" \; \) -o \ -name "*~" -o \ -name "#*#" -o \ -name "*.pyc" -o \ @@ -36,4 +34,4 @@ find . \ -name ".sconsign*" -o \ -name "semantic.cache" -o \ -name "all_includes.hh" -o \ - -type f $cond \( "$@" \) + -type f $cond \( "$@" $print \)