ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid-8/depcomp
(Generate patch)

Comparing ircd-hybrid-7.2/depcomp (file contents):
Revision 912 by michael, Wed Nov 7 22:47:44 2007 UTC vs.
Revision 945 by michael, Mon Jul 20 15:48:27 2009 UTC

# Line 1 | Line 1
1   #! /bin/sh
2   # depcomp - compile a program generating dependencies as side-effects
3  
4 < scriptversion=2006-10-15.18
4 > scriptversion=2009-04-28.21; # UTC
5  
6 < # Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006 Free Software
7 < # Foundation, Inc.
6 > # Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free
7 > # Software Foundation, Inc.
8  
9   # This program is free software; you can redistribute it and/or modify
10   # it under the terms of the GNU General Public License as published by
# Line 17 | Line 17 | scriptversion=2006-10-15.18
17   # GNU General Public License for more details.
18  
19   # You should have received a copy of the GNU General Public License
20 < # along with this program; if not, write to the Free Software
21 < # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
22 < # 02110-1301, USA.
20 > # along with this program.  If not, see <http://www.gnu.org/licenses/>.
21  
22   # As a special exception to the GNU General Public License, if you
23   # distribute this file as part of a program that contains a
# Line 87 | Line 85 | if test "$depmode" = dashXmstdout; then
85     depmode=dashmstdout
86   fi
87  
88 + cygpath_u="cygpath -u -f -"
89 + if test "$depmode" = msvcmsys; then
90 +   # This is just like msvisualcpp but w/o cygpath translation.
91 +   # Just convert the backslash-escaped backslashes to single forward
92 +   # slashes to satisfy depend.m4
93 +   cygpath_u="sed s,\\\\\\\\,/,g"
94 +   depmode=msvisualcpp
95 + fi
96 +
97   case "$depmode" in
98   gcc3)
99   ## gcc 3 implements dependency tracking that does exactly what
# Line 192 | Line 199 | sgi)
199   ' < "$tmpdepfile" \
200      | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
201      tr '
202 < ' ' ' >> $depfile
203 <    echo >> $depfile
202 > ' ' ' >> "$depfile"
203 >    echo >> "$depfile"
204  
205      # The second pass generates a dummy entry for each header file.
206      tr ' ' '
207   ' < "$tmpdepfile" \
208     | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
209 <   >> $depfile
209 >   >> "$depfile"
210    else
211      # The sourcefile does not contain any dependencies, so just
212      # store a dummy comment line, to avoid errors with the Makefile
# Line 215 | Line 222 | aix)
222    # current directory.  Also, the AIX compiler puts `$object:' at the
223    # start of each line; $object doesn't have directory information.
224    # Version 6 uses the directory in both cases.
225 <  stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'`
226 <  tmpdepfile="$stripped.u"
225 >  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
226 >  test "x$dir" = "x$object" && dir=
227 >  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
228    if test "$libtool" = yes; then
229 +    tmpdepfile1=$dir$base.u
230 +    tmpdepfile2=$base.u
231 +    tmpdepfile3=$dir.libs/$base.u
232      "$@" -Wc,-M
233    else
234 +    tmpdepfile1=$dir$base.u
235 +    tmpdepfile2=$dir$base.u
236 +    tmpdepfile3=$dir$base.u
237      "$@" -M
238    fi
239    stat=$?
240  
227  if test -f "$tmpdepfile"; then :
228  else
229    stripped=`echo "$stripped" | sed 's,^.*/,,'`
230    tmpdepfile="$stripped.u"
231  fi
232
241    if test $stat -eq 0; then :
242    else
243 <    rm -f "$tmpdepfile"
243 >    rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
244      exit $stat
245    fi
246  
247 +  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
248 +  do
249 +    test -f "$tmpdepfile" && break
250 +  done
251    if test -f "$tmpdepfile"; then
240    outname="$stripped.o"
252      # Each line is of the form `foo.o: dependent.h'.
253      # Do two passes, one to just change these to
254      # `$object: dependent.h' and one to simply `dependent.h:'.
255 <    sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile"
256 <    sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile"
255 >    sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
256 >    # That's a tab and a space in the [].
257 >    sed -e 's,^.*\.[a-z]*:[      ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
258    else
259      # The sourcefile does not contain any dependencies, so just
260      # store a dummy comment line, to avoid errors with the Makefile
# Line 323 | Line 335 | hp2)
335    if test -f "$tmpdepfile"; then
336      sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
337      # Add `dependent.h:' lines.
338 <    sed -ne '2,${; s/^ *//; s/ \\*$//; s/$/:/; p;}' "$tmpdepfile" >> "$depfile"
338 >    sed -ne '2,${
339 >               s/^ *//
340 >               s/ \\*$//
341 >               s/$/:/
342 >               p
343 >             }' "$tmpdepfile" >> "$depfile"
344    else
345      echo "#dummy" > "$depfile"
346    fi
# Line 399 | Line 416 | dashmstdout)
416  
417    # Remove the call to Libtool.
418    if test "$libtool" = yes; then
419 <    while test $1 != '--mode=compile'; do
419 >    while test "X$1" != 'X--mode=compile'; do
420        shift
421      done
422      shift
# Line 450 | Line 467 | makedepend)
467    "$@" || exit $?
468    # Remove any Libtool call
469    if test "$libtool" = yes; then
470 <    while test $1 != '--mode=compile'; do
470 >    while test "X$1" != 'X--mode=compile'; do
471        shift
472      done
473      shift
474    fi
475    # X makedepend
476    shift
477 <  cleared=no
478 <  for arg in "$@"; do
477 >  cleared=no eat=no
478 >  for arg
479 >  do
480      case $cleared in
481      no)
482        set ""; shift
483        cleared=yes ;;
484      esac
485 +    if test $eat = yes; then
486 +      eat=no
487 +      continue
488 +    fi
489      case "$arg" in
490      -D*|-I*)
491        set fnord "$@" "$arg"; shift ;;
492      # Strip any option that makedepend may not understand.  Remove
493      # the object too, otherwise makedepend will parse it as a source file.
494 +    -arch)
495 +      eat=yes ;;
496      -*|$object)
497        ;;
498      *)
499        set fnord "$@" "$arg"; shift ;;
500      esac
501    done
502 <  obj_suffix="`echo $object | sed 's/^.*\././'`"
502 >  obj_suffix=`echo "$object" | sed 's/^.*\././'`
503    touch "$tmpdepfile"
504    ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
505    rm -f "$depfile"
# Line 495 | Line 519 | cpp)
519  
520    # Remove the call to Libtool.
521    if test "$libtool" = yes; then
522 <    while test $1 != '--mode=compile'; do
522 >    while test "X$1" != 'X--mode=compile'; do
523        shift
524      done
525      shift
# Line 533 | Line 557 | cpp)
557  
558   msvisualcpp)
559    # Important note: in order to support this mode, a compiler *must*
560 <  # always write the preprocessed file to stdout, regardless of -o,
537 <  # because we must use -o when running libtool.
560 >  # always write the preprocessed file to stdout.
561    "$@" || exit $?
562 +
563 +  # Remove the call to Libtool.
564 +  if test "$libtool" = yes; then
565 +    while test "X$1" != 'X--mode=compile'; do
566 +      shift
567 +    done
568 +    shift
569 +  fi
570 +
571    IFS=" "
572    for arg
573    do
574      case "$arg" in
575 +    -o)
576 +      shift
577 +      ;;
578 +    $object)
579 +      shift
580 +      ;;
581      "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
582          set fnord "$@"
583          shift
# Line 552 | Line 590 | msvisualcpp)
590          ;;
591      esac
592    done
593 <  "$@" -E |
594 <  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
593 >  "$@" -E 2>/dev/null |
594 >  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
595    rm -f "$depfile"
596    echo "$object : \\" > "$depfile"
597 <  . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::    \1 \\:p' >> "$depfile"
597 >  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::      \1 \\:p' >> "$depfile"
598    echo "        " >> "$depfile"
599 <  . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
599 >  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
600    rm -f "$tmpdepfile"
601    ;;
602  
603 + msvcmsys)
604 +  # This case exists only to let depend.m4 do its work.  It works by
605 +  # looking at the text of this script.  This case will never be run,
606 +  # since it is checked for above.
607 +  exit 1
608 +  ;;
609 +
610   none)
611    exec "$@"
612    ;;
# Line 580 | Line 625 | exit 0
625   # eval: (add-hook 'write-file-hooks 'time-stamp)
626   # time-stamp-start: "scriptversion="
627   # time-stamp-format: "%:y-%02m-%02d.%02H"
628 < # time-stamp-end: "$"
628 > # time-stamp-time-zone: "UTC"
629 > # time-stamp-end: "; # UTC"
630   # End:

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines