[xiph-cvs] cvs commit: w3d/tools makedepend
Holger Waechtler
holger at xiph.org
Fri Jun 29 08:15:55 PDT 2001
holger 01/06/29 08:15:55
Modified: . Makefile
Added: tools makedepend
Log:
- moved makedepend into the tools directory; measurement programs will go
into this directory, too
Revision Changes Path
1.6 +1 -1 w3d/Makefile
Index: Makefile
===================================================================
RCS file: /usr/local/cvsroot/w3d/Makefile,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- Makefile 2001/06/29 15:13:07 1.5
+++ Makefile 2001/06/29 15:15:54 1.6
@@ -39,6 +39,6 @@
.depend: $(SRCS) $(TEST_SRCS)
$(RM) .depend
touch .depend
- sh makedepend -f.depend -- $(CFLAGS) -- $(SRCS) $(TEST_SRCS) tarkin_enc.c tarkin_dec.c
+ sh tools/makedepend -f.depend -- $(CFLAGS) -- $(SRCS) $(TEST_SRCS) tarkin_enc.c tarkin_dec.c
-include .depend
1.1 w3d/tools/makedepend
Index: makedepend
===================================================================
#!/bin/sh
#
# $TOG: mdepend.cpp /main/13 1997/06/20 21:12:18 kaleb $
#
# Do the equivalent of the 'makedepend' program, but do it right.
#
# Usage:
#
# makedepend [cpp-flags] [-w width] [-s magic-string] [-f makefile]
# [-o object-suffix]
#
# Notes:
#
# The C compiler used can be overridden with the environment
# variable "CC".
#
# The "-v" switch of the "makedepend" program is not supported.
#
#
# This script should
# work on both USG and BSD systems. However, when System V.4 comes out,
# USG users will probably have to change "silent" to "-s" instead of
# "-" (at least, that is what the documentation implies).
#
# $XFree86: xc/config/util/mdepend.cpp,v 3.3.2.3 2001/03/15 21:16:08 tsi Exp $
#
CC="gcc -E -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE -D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE "
ilent='-'
TMP=`pwd`/.mdep$$
CPPCMD=${TMP}a
DEPENDLINES=${TMP}b
TMPMAKEFILE=${TMP}c
MAGICLINE=${TMP}d
ARGS=${TMP}e
trap "rm -f ${TMP}*; exit 1" 1 2 15
trap "rm -f ${TMP}*; exit 0" 1 2 13
echo " \c" > $CPPCMD
if [ `wc -c < $CPPCMD` -eq 1 ]
then
c="\c"
n=
else
c=
n="-n"
fi
echo $n "$c" >$ARGS
files=
makefile=
magic_string='# DO NOT DELETE'
objsuffix='.o'
width=78
endmarker=""
verbose=n
append=n
while [ $# != 0 ]
do
if [ "$endmarker"x != x ] && [ "$endmarker" = "$1" ]; then
endmarker=""
else
case "$1" in
-D*|-I*|-U*)
echo $n " '$1'$c" >> $ARGS
;;
-g|-O) # ignore so we can just pass $(CFLAGS) in
;;
*)
if [ "$endmarker"x = x ]; then
case "$1" in
-w)
width="$2"
shift
;;
-s)
magic_string="$2"
shift
;;
-f*)
if [ "$1" = "-f-" ]; then
makefile="-"
elif [ "$1" = "-f" ]; then
makefile="$2"
shift
else
echo "$1" | sed 's/^\-f//' >${TMP}arg
makefile="`cat ${TMP}arg`"
rm -f ${TMP}arg
fi
;;
-o)
objsuffix="$2"
shift
;;
--*)
echo "$1" | sed 's/^\-\-//' >${TMP}end
endmarker="`cat ${TMP}end`"
rm -f ${TMP}end
if [ "$endmarker"x = x ]; then
endmarker="--"
fi
;;
-v)
verbose="y"
;;
-a)
append="y"
;;
-cc)
CC="$2"
shift
;;
-*)
echo "Unknown option '$1' ignored" 1>&2
;;
*)
files="$files $1"
;;
esac
fi
;;
esac
fi
shift
done
echo ' $*' >> $ARGS
echo "#!/bin/sh" > $CPPCMD
echo "exec $CC `cat $ARGS`" >> $CPPCMD
chmod +x $CPPCMD
rm $ARGS
case "$makefile" in
'')
if [ -r makefile ]
then
makefile=makefile
elif [ -r Makefile ]
then
makefile=Makefile
else
echo 'no makefile or Makefile found' 1>&2
exit 1
fi
;;
-)
makefile=$TMPMAKEFILE
;;
esac
if [ "$verbose"x = "y"x ]; then
cat $CPPCMD
fi
echo '' > $DEPENDLINES
for i in $files
do
$CPPCMD $i | sed -n "/^#/s;^;$i ;p"
done | sed -e 's|/[^/.][^/]*/\.\.||g' -e 's|/\.[^.][^/]*/\.\.||g' -e 's|"||g' -e 's| \./| |' | awk '{
if ($1 != $4 && $2 != "#ident" && $2 != "#pragma")
{
ofile = substr ($1, 1, length ($1) - 2) "'"$objsuffix"'"
print ofile, $4
}
}' | sort -u | awk '
{
newrec = rec " " $2
if ($1 != old1)
{
old1 = $1
if (rec != "")
print rec
rec = $1 ": " $2
}
else if (length (newrec) > '"$width"')
{
print rec
rec = $1 ": " $2
}
else
rec = newrec
}
END {
if (rec != "")
print rec
}' | egrep -v '^[^:]*:[ ]*$' >> $DEPENDLINES
trap "" 1 2 13 15 # Now we are committed
case "$makefile" in
$TMPMAKEFILE)
;;
*)
rm -f $makefile.bak
cp $makefile $makefile.bak
echo "Appending dependencies to $makefile"
;;
esac
#
# If not -a, append the magic string and a blank line so that
# /^$magic_string/+1,\$d can be used to delete everything from after
# the magic string to the end of the file. Then, append a blank
# line again and then the dependencies.
#
if [ "$append" = "n" ]
then
cat >> $makefile << END_OF_APPEND
$magic_string
END_OF_APPEND
ed $silent $makefile << END_OF_ED_SCRIPT
/^$magic_string/+1,\$d
w
q
END_OF_ED_SCRIPT
echo '' >>$makefile
fi
cat $DEPENDLINES >>$makefile
case "$makefile" in
$TMPMAKEFILE)
cat $TMPMAKEFILE
;;
esac
rm -f ${TMP}*
exit 0
--- >8 ----
List archives: http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'cvs-request at xiph.org'
containing only the word 'unsubscribe' in the body. No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.
More information about the commits
mailing list