Files
scst/scripts/list-source-files
Gleb Chesnokov 56bb6c0fa6 nightly build, scripts: Remove svn support
Remove deprecated svn support.
2024-05-02 17:20:01 +03:00

67 lines
1.6 KiB
Bash
Executable File

#!/bin/bash
list_source_files() {
local d r
d="$(cd "$1" && echo "$PWD")"
r="$d"
while [ "$r" != "/" ] && [ ! -e "$r/.git" ] &&
[ ! -e "$r/.hg" ]; do
r="$(dirname "$r")"
done
if [ -e "$r/.git" ]; then
subdir="${d#"${r}"}"
if [ "$r" != "" ]; then
( cd "$d" && git ls-tree --name-only -r HEAD ) | sed "s|^$subdir/||"
else
echo "Ignored directory $1" >&2
fi
elif [ -e "$r/.hg" ]; then
subdir="${d#"${r}"}"
if [ -n "${subdir}" ]; then
subdir="${subdir#/}/"
hg manifest | sed -n "s|^$subdir||p"
else
hg manifest
fi
else
(
cd "$d" &&
find . -type f -o -type l |
sed -e 's/^\.\///' \
-e '/\.depend_\(adm\|d\|f\)$/d' \
-e '/\.o$/d' \
-e '/\.o\.d$/d' \
-e '/\.o\.cmd$/d' \
-e '/\.ko$/d' \
-e '/\.ko\.cmd$/d' \
-e '/\.mod$/d' \
-e '/\.mod\.c$/d' \
-e '/\.mod\.cmd$/d' \
-e '/\/Module\.\(symver\|marker\)s$/d' \
-e '/\/\.Module\.symvers\.cmd$/d' \
-e '/\/\.modules\.order\.cmd$/d' \
-e '/\/\.tmp_versions\(\/\|$\)/d' \
-e '/\/blib\//d' \
-e '/\/conftest\/.*\/build-output-.*\.txt$/d' \
-e '/\/conftest\/.*\/result-.*\.txt$/d' \
-e '/\/modules\.order$/d' \
-e '/\/rpmbuilddir\//d' \
-e '/^iscsi-scst\/usr\/iscsi-scst-adm$/d' \
-e '/^iscsi-scst\/usr\/iscsi-scstd$/d' \
-e '/^rpmbuilddir\//d' \
-e '/^usr\/fileio\/fileio_tgt$/d' \
-e '/^usr\/stpgd\/stpgd$/d' \
-e '/debian\/tmp\//d' \
-e '/~$/d'
)
fi | sort
}
if [ $# = 0 ]; then
list_source_files "$PWD"
else
for d in "$@"; do list_source_files "$d"; done
fi