P8000/WEGA/contrib/K5JB/mkdep

47 lines
832 B
Plaintext
Executable File

:
# @(#) depend v1.0 Create a makefile of dependencies
# Author: Jeffrey Kegler
#
cpparg=
linelen=60 # desired length of dependency line
system=`uname -s`
if [ "$system" = "P8000" ] ; then
cpp_cmd=/z/LCC/lib/lcpp
else
cpp_cmd=/lib/cpp
fi
for arg in "$@"
do
case $arg in
-[CT] | -[UID]*) cpparg="$cpparg $arg"
esac
done
for source in "$@"
do
target=`expr "$source" : '\\(.*\\)\\.c$'`
if [ -n "$target" ]; then
target=`basename "$target"`
$cpp_cmd $cpparg "$source" |
sed -n -e 's/^# 1 "\(.*\)"/\1/p' |
awk '
BEGIN { deplist = "'$target.o:'" }
NR > 1 {
used++;
if (length(deplist "\t" $0) >= '$linelen') {
print deplist "\\"
deplist = "\t" $0
} else deplist = deplist "\t" $0
}
END {
if (used)
{
if (deplist != "") print deplist
print
}
}
'
fi
done
exit 0