mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-28 04:33:05 +00:00
8141e37109
allowing the set of directories searched to be specified either by the LLVMDO_DIRS env var or by the -dirs "dirs..." command line option. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16441 91177308-0d34-0410-b5e6-96231b3b80d8
63 lines
1.6 KiB
Bash
Executable File
63 lines
1.6 KiB
Bash
Executable File
#!/bin/sh
|
|
# This is useful because it prints out all of the source files. Useful for
|
|
# greps.
|
|
|
|
if test $# -lt 1 ; then
|
|
echo "Usage: llvmdo [-dirs "DIRNAMES..."] PROGRAM ARGS...";
|
|
exit 1;
|
|
fi
|
|
|
|
if test "$1" = "-dirs" ; then
|
|
LLVMDO_DIRS="$2";
|
|
shift ; shift
|
|
elif test -z "$LLVMDO_DIRS" ; then
|
|
LLVMDO_DIRS="include lib tools test utils docs examples projects"
|
|
fi
|
|
PROGRAM=`which $1`
|
|
if test ! -x "$PROGRAM" ; then
|
|
echo "Can't execute $1"
|
|
exit 1
|
|
fi
|
|
shift;
|
|
ARGS="$*"
|
|
TOPDIR=`pwd | sed -e 's#\(.*/llvm\).*#\1#'`
|
|
if test -d "$TOPDIR" ; then
|
|
cd $TOPDIR
|
|
find $LLVMDO_DIRS -type f \
|
|
\( \
|
|
-path 'docs/doxygen/*' -o \
|
|
-path 'docs/CommandGuide/html/*' -o \
|
|
-path 'docs/CommandGuide/man/*' -o \
|
|
-path 'docs/CommandGuide/ps/*' -o \
|
|
-path 'docs/CommandGuide/man/*' -o \
|
|
-path 'docs/HistoricalNotes/*' -o \
|
|
-path 'utils/Burg/*' -o \
|
|
-path 'docs/img/*' -o \
|
|
-path '*/.libs/*' \
|
|
\) -prune -o \( \
|
|
-name '*.[cdhyltp]*' \
|
|
\! -name '.*' \
|
|
\! -name '*~' \
|
|
\! -name '#*' \
|
|
\! -name '*.d' \
|
|
\! -name '*.dir' \
|
|
\! -name '*.flc' \
|
|
\! -name '*.inc' \
|
|
\! -name '*.ll' \
|
|
\! -name '*.llx' \
|
|
\! -name '*.la' \
|
|
\! -name '*.lo' \
|
|
\! -name 'Sparc.burm.c' \
|
|
\! -name 'llvmAsmParser.cpp' \
|
|
\! -name 'llvmAsmParser.h' \
|
|
\! -name 'FileParser.cpp' \
|
|
\! -name 'FileParser.h' \
|
|
\! -name 'StackerParser.h' \
|
|
\! -name 'StackerParser.cpp' \
|
|
-exec $PROGRAM $ARGS {} \; \
|
|
\)
|
|
else
|
|
echo "Can't find LLVM top directory in $TOPDIR"
|
|
fi
|
|
|