OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [or1ksim/] [depcomp] - Diff between revs 19 and 82

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 19 Rev 82
#! /bin/sh
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
# depcomp - compile a program generating dependencies as side-effects
 
 
scriptversion=2007-03-29.01
scriptversion=2009-04-28.21; # UTC
 
 
# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007 Free Software
# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free
# Foundation, Inc.
# Software Foundation, Inc.
 
 
# This program is free software; you can redistribute it and/or modify
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
# any later version.
# This program is distributed in the hope that it will be useful,
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# along with this program.  If not, see .
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 
# 02110-1301, USA.
 
 
 
# As a special exception to the GNU General Public License, if you
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# the same distribution terms that you use for the rest of that program.
# Originally written by Alexandre Oliva .
# Originally written by Alexandre Oliva .
case $1 in
case $1 in
  '')
  '')
     echo "$0: No command.  Try \`$0 --help' for more information." 1>&2
     echo "$0: No command.  Try \`$0 --help' for more information." 1>&2
     exit 1;
     exit 1;
     ;;
     ;;
  -h | --h*)
  -h | --h*)
    cat <<\EOF
    cat <<\EOF
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
Run PROGRAMS ARGS to compile a file, generating dependencies
Run PROGRAMS ARGS to compile a file, generating dependencies
as side-effects.
as side-effects.
Environment variables:
Environment variables:
  depmode     Dependency tracking mode.
  depmode     Dependency tracking mode.
  source      Source file read by `PROGRAMS ARGS'.
  source      Source file read by `PROGRAMS ARGS'.
  object      Object file output by `PROGRAMS ARGS'.
  object      Object file output by `PROGRAMS ARGS'.
  DEPDIR      directory where to store dependencies.
  DEPDIR      directory where to store dependencies.
  depfile     Dependency file to output.
  depfile     Dependency file to output.
  tmpdepfile  Temporary file to use when outputing dependencies.
  tmpdepfile  Temporary file to use when outputing dependencies.
  libtool     Whether libtool is used (yes/no).
  libtool     Whether libtool is used (yes/no).
Report bugs to .
Report bugs to .
EOF
EOF
    exit $?
    exit $?
    ;;
    ;;
  -v | --v*)
  -v | --v*)
    echo "depcomp $scriptversion"
    echo "depcomp $scriptversion"
    exit $?
    exit $?
    ;;
    ;;
esac
esac
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
  echo "depcomp: Variables source, object and depmode must be set" 1>&2
  echo "depcomp: Variables source, object and depmode must be set" 1>&2
  exit 1
  exit 1
fi
fi
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
depfile=${depfile-`echo "$object" |
depfile=${depfile-`echo "$object" |
  sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
  sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
rm -f "$tmpdepfile"
rm -f "$tmpdepfile"
# Some modes work just like other modes, but use different flags.  We
# Some modes work just like other modes, but use different flags.  We
# parameterize here, but still list the modes in the big case below,
# parameterize here, but still list the modes in the big case below,
# to make depend.m4 easier to write.  Note that we *cannot* use a case
# to make depend.m4 easier to write.  Note that we *cannot* use a case
# here, because this file can only contain one case statement.
# here, because this file can only contain one case statement.
if test "$depmode" = hp; then
if test "$depmode" = hp; then
  # HP compiler uses -M and no extra arg.
  # HP compiler uses -M and no extra arg.
  gccflag=-M
  gccflag=-M
  depmode=gcc
  depmode=gcc
fi
fi
if test "$depmode" = dashXmstdout; then
if test "$depmode" = dashXmstdout; then
   # This is just like dashmstdout with a different argument.
   # This is just like dashmstdout with a different argument.
   dashmflag=-xM
   dashmflag=-xM
   depmode=dashmstdout
   depmode=dashmstdout
fi
fi
 
 
 
cygpath_u="cygpath -u -f -"
 
if test "$depmode" = msvcmsys; then
 
   # This is just like msvisualcpp but w/o cygpath translation.
 
   # Just convert the backslash-escaped backslashes to single forward
 
   # slashes to satisfy depend.m4
 
   cygpath_u="sed s,\\\\\\\\,/,g"
 
   depmode=msvisualcpp
 
fi
 
 
case "$depmode" in
case "$depmode" in
gcc3)
gcc3)
## gcc 3 implements dependency tracking that does exactly what
## gcc 3 implements dependency tracking that does exactly what
## we want.  Yay!  Note: for some reason libtool 1.4 doesn't like
## we want.  Yay!  Note: for some reason libtool 1.4 doesn't like
## it if -MD -MP comes after the -MF stuff.  Hmm.
## it if -MD -MP comes after the -MF stuff.  Hmm.
## Unfortunately, FreeBSD c89 acceptance of flags depends upon
## Unfortunately, FreeBSD c89 acceptance of flags depends upon
## the command line argument order; so add the flags where they
## the command line argument order; so add the flags where they
## appear in depend2.am.  Note that the slowdown incurred here
## appear in depend2.am.  Note that the slowdown incurred here
## affects only configure: in makefiles, %FASTDEP% shortcuts this.
## affects only configure: in makefiles, %FASTDEP% shortcuts this.
  for arg
  for arg
  do
  do
    case $arg in
    case $arg in
    -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
    -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
    *)  set fnord "$@" "$arg" ;;
    *)  set fnord "$@" "$arg" ;;
    esac
    esac
    shift # fnord
    shift # fnord
    shift # $arg
    shift # $arg
  done
  done
  "$@"
  "$@"
  stat=$?
  stat=$?
  if test $stat -eq 0; then :
  if test $stat -eq 0; then :
  else
  else
    rm -f "$tmpdepfile"
    rm -f "$tmpdepfile"
    exit $stat
    exit $stat
  fi
  fi
  mv "$tmpdepfile" "$depfile"
  mv "$tmpdepfile" "$depfile"
  ;;
  ;;
gcc)
gcc)
## There are various ways to get dependency output from gcc.  Here's
## There are various ways to get dependency output from gcc.  Here's
## why we pick this rather obscure method:
## why we pick this rather obscure method:
## - Don't want to use -MD because we'd like the dependencies to end
## - Don't want to use -MD because we'd like the dependencies to end
##   up in a subdir.  Having to rename by hand is ugly.
##   up in a subdir.  Having to rename by hand is ugly.
##   (We might end up doing this anyway to support other compilers.)
##   (We might end up doing this anyway to support other compilers.)
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
##   -MM, not -M (despite what the docs say).
##   -MM, not -M (despite what the docs say).
## - Using -M directly means running the compiler twice (even worse
## - Using -M directly means running the compiler twice (even worse
##   than renaming).
##   than renaming).
  if test -z "$gccflag"; then
  if test -z "$gccflag"; then
    gccflag=-MD,
    gccflag=-MD,
  fi
  fi
  "$@" -Wp,"$gccflag$tmpdepfile"
  "$@" -Wp,"$gccflag$tmpdepfile"
  stat=$?
  stat=$?
  if test $stat -eq 0; then :
  if test $stat -eq 0; then :
  else
  else
    rm -f "$tmpdepfile"
    rm -f "$tmpdepfile"
    exit $stat
    exit $stat
  fi
  fi
  rm -f "$depfile"
  rm -f "$depfile"
  echo "$object : \\" > "$depfile"
  echo "$object : \\" > "$depfile"
  alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
  alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
## The second -e expression handles DOS-style file names with drive letters.
## The second -e expression handles DOS-style file names with drive letters.
  sed -e 's/^[^:]*: / /' \
  sed -e 's/^[^:]*: / /' \
      -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
      -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
## This next piece of magic avoids the `deleted header file' problem.
## This next piece of magic avoids the `deleted header file' problem.
## The problem is that when a header file which appears in a .P file
## The problem is that when a header file which appears in a .P file
## is deleted, the dependency causes make to die (because there is
## is deleted, the dependency causes make to die (because there is
## typically no way to rebuild the header).  We avoid this by adding
## typically no way to rebuild the header).  We avoid this by adding
## dummy dependencies for each header file.  Too bad gcc doesn't do
## dummy dependencies for each header file.  Too bad gcc doesn't do
## this for us directly.
## this for us directly.
  tr ' ' '
  tr ' ' '
' < "$tmpdepfile" |
' < "$tmpdepfile" |
## Some versions of gcc put a space before the `:'.  On the theory
## Some versions of gcc put a space before the `:'.  On the theory
## that the space means something, we add a space to the output as
## that the space means something, we add a space to the output as
## well.
## well.
## Some versions of the HPUX 10.20 sed can't process this invocation
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly.  Breaking it into two sed invocations is a workaround.
## correctly.  Breaking it into two sed invocations is a workaround.
    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
  rm -f "$tmpdepfile"
  rm -f "$tmpdepfile"
  ;;
  ;;
hp)
hp)
  # This case exists only to let depend.m4 do its work.  It works by
  # This case exists only to let depend.m4 do its work.  It works by
  # looking at the text of this script.  This case will never be run,
  # looking at the text of this script.  This case will never be run,
  # since it is checked for above.
  # since it is checked for above.
  exit 1
  exit 1
  ;;
  ;;
sgi)
sgi)
  if test "$libtool" = yes; then
  if test "$libtool" = yes; then
    "$@" "-Wp,-MDupdate,$tmpdepfile"
    "$@" "-Wp,-MDupdate,$tmpdepfile"
  else
  else
    "$@" -MDupdate "$tmpdepfile"
    "$@" -MDupdate "$tmpdepfile"
  fi
  fi
  stat=$?
  stat=$?
  if test $stat -eq 0; then :
  if test $stat -eq 0; then :
  else
  else
    rm -f "$tmpdepfile"
    rm -f "$tmpdepfile"
    exit $stat
    exit $stat
  fi
  fi
  rm -f "$depfile"
  rm -f "$depfile"
  if test -f "$tmpdepfile"; then  # yes, the sourcefile depend on other files
  if test -f "$tmpdepfile"; then  # yes, the sourcefile depend on other files
    echo "$object : \\" > "$depfile"
    echo "$object : \\" > "$depfile"
    # Clip off the initial element (the dependent).  Don't try to be
    # Clip off the initial element (the dependent).  Don't try to be
    # clever and replace this with sed code, as IRIX sed won't handle
    # clever and replace this with sed code, as IRIX sed won't handle
    # lines with more than a fixed number of characters (4096 in
    # lines with more than a fixed number of characters (4096 in
    # IRIX 6.2 sed, 8192 in IRIX 6.5).  We also remove comment lines;
    # IRIX 6.2 sed, 8192 in IRIX 6.5).  We also remove comment lines;
    # the IRIX cc adds comments like `#:fec' to the end of the
    # the IRIX cc adds comments like `#:fec' to the end of the
    # dependency line.
    # dependency line.
    tr ' ' '
    tr ' ' '
' < "$tmpdepfile" \
' < "$tmpdepfile" \
    | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
    | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
    tr '
    tr '
' ' ' >> $depfile
' ' ' >> "$depfile"
    echo >> $depfile
    echo >> "$depfile"
 
 
    # The second pass generates a dummy entry for each header file.
    # The second pass generates a dummy entry for each header file.
    tr ' ' '
    tr ' ' '
' < "$tmpdepfile" \
' < "$tmpdepfile" \
   | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
   | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
   >> $depfile
   >> "$depfile"
  else
  else
    # The sourcefile does not contain any dependencies, so just
    # The sourcefile does not contain any dependencies, so just
    # store a dummy comment line, to avoid errors with the Makefile
    # store a dummy comment line, to avoid errors with the Makefile
    # "include basename.Plo" scheme.
    # "include basename.Plo" scheme.
    echo "#dummy" > "$depfile"
    echo "#dummy" > "$depfile"
  fi
  fi
  rm -f "$tmpdepfile"
  rm -f "$tmpdepfile"
  ;;
  ;;
aix)
aix)
  # The C for AIX Compiler uses -M and outputs the dependencies
  # The C for AIX Compiler uses -M and outputs the dependencies
  # in a .u file.  In older versions, this file always lives in the
  # in a .u file.  In older versions, this file always lives in the
  # current directory.  Also, the AIX compiler puts `$object:' at the
  # current directory.  Also, the AIX compiler puts `$object:' at the
  # start of each line; $object doesn't have directory information.
  # start of each line; $object doesn't have directory information.
  # Version 6 uses the directory in both cases.
  # Version 6 uses the directory in both cases.
  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
  test "x$dir" = "x$object" && dir=
  test "x$dir" = "x$object" && dir=
  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
  if test "$libtool" = yes; then
  if test "$libtool" = yes; then
    tmpdepfile1=$dir$base.u
    tmpdepfile1=$dir$base.u
    tmpdepfile2=$base.u
    tmpdepfile2=$base.u
    tmpdepfile3=$dir.libs/$base.u
    tmpdepfile3=$dir.libs/$base.u
    "$@" -Wc,-M
    "$@" -Wc,-M
  else
  else
    tmpdepfile1=$dir$base.u
    tmpdepfile1=$dir$base.u
    tmpdepfile2=$dir$base.u
    tmpdepfile2=$dir$base.u
    tmpdepfile3=$dir$base.u
    tmpdepfile3=$dir$base.u
    "$@" -M
    "$@" -M
  fi
  fi
  stat=$?
  stat=$?
  if test $stat -eq 0; then :
  if test $stat -eq 0; then :
  else
  else
    rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
    rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
    exit $stat
    exit $stat
  fi
  fi
  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
  do
  do
    test -f "$tmpdepfile" && break
    test -f "$tmpdepfile" && break
  done
  done
  if test -f "$tmpdepfile"; then
  if test -f "$tmpdepfile"; then
    # Each line is of the form `foo.o: dependent.h'.
    # Each line is of the form `foo.o: dependent.h'.
    # Do two passes, one to just change these to
    # Do two passes, one to just change these to
    # `$object: dependent.h' and one to simply `dependent.h:'.
    # `$object: dependent.h' and one to simply `dependent.h:'.
    sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
    sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
    # That's a tab and a space in the [].
    # That's a tab and a space in the [].
    sed -e 's,^.*\.[a-z]*:[      ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
    sed -e 's,^.*\.[a-z]*:[      ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
  else
  else
    # The sourcefile does not contain any dependencies, so just
    # The sourcefile does not contain any dependencies, so just
    # store a dummy comment line, to avoid errors with the Makefile
    # store a dummy comment line, to avoid errors with the Makefile
    # "include basename.Plo" scheme.
    # "include basename.Plo" scheme.
    echo "#dummy" > "$depfile"
    echo "#dummy" > "$depfile"
  fi
  fi
  rm -f "$tmpdepfile"
  rm -f "$tmpdepfile"
  ;;
  ;;
icc)
icc)
  # Intel's C compiler understands `-MD -MF file'.  However on
  # Intel's C compiler understands `-MD -MF file'.  However on
  #    icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
  #    icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
  # ICC 7.0 will fill foo.d with something like
  # ICC 7.0 will fill foo.d with something like
  #    foo.o: sub/foo.c
  #    foo.o: sub/foo.c
  #    foo.o: sub/foo.h
  #    foo.o: sub/foo.h
  # which is wrong.  We want:
  # which is wrong.  We want:
  #    sub/foo.o: sub/foo.c
  #    sub/foo.o: sub/foo.c
  #    sub/foo.o: sub/foo.h
  #    sub/foo.o: sub/foo.h
  #    sub/foo.c:
  #    sub/foo.c:
  #    sub/foo.h:
  #    sub/foo.h:
  # ICC 7.1 will output
  # ICC 7.1 will output
  #    foo.o: sub/foo.c sub/foo.h
  #    foo.o: sub/foo.c sub/foo.h
  # and will wrap long lines using \ :
  # and will wrap long lines using \ :
  #    foo.o: sub/foo.c ... \
  #    foo.o: sub/foo.c ... \
  #     sub/foo.h ... \
  #     sub/foo.h ... \
  #     ...
  #     ...
  "$@" -MD -MF "$tmpdepfile"
  "$@" -MD -MF "$tmpdepfile"
  stat=$?
  stat=$?
  if test $stat -eq 0; then :
  if test $stat -eq 0; then :
  else
  else
    rm -f "$tmpdepfile"
    rm -f "$tmpdepfile"
    exit $stat
    exit $stat
  fi
  fi
  rm -f "$depfile"
  rm -f "$depfile"
  # Each line is of the form `foo.o: dependent.h',
  # Each line is of the form `foo.o: dependent.h',
  # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
  # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
  # Do two passes, one to just change these to
  # Do two passes, one to just change these to
  # `$object: dependent.h' and one to simply `dependent.h:'.
  # `$object: dependent.h' and one to simply `dependent.h:'.
  sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
  sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
  # Some versions of the HPUX 10.20 sed can't process this invocation
  # Some versions of the HPUX 10.20 sed can't process this invocation
  # correctly.  Breaking it into two sed invocations is a workaround.
  # correctly.  Breaking it into two sed invocations is a workaround.
  sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
  sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
    sed -e 's/$/ :/' >> "$depfile"
    sed -e 's/$/ :/' >> "$depfile"
  rm -f "$tmpdepfile"
  rm -f "$tmpdepfile"
  ;;
  ;;
hp2)
hp2)
  # The "hp" stanza above does not work with aCC (C++) and HP's ia64
  # The "hp" stanza above does not work with aCC (C++) and HP's ia64
  # compilers, which have integrated preprocessors.  The correct option
  # compilers, which have integrated preprocessors.  The correct option
  # to use with these is +Maked; it writes dependencies to a file named
  # to use with these is +Maked; it writes dependencies to a file named
  # 'foo.d', which lands next to the object file, wherever that
  # 'foo.d', which lands next to the object file, wherever that
  # happens to be.
  # happens to be.
  # Much of this is similar to the tru64 case; see comments there.
  # Much of this is similar to the tru64 case; see comments there.
  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
  test "x$dir" = "x$object" && dir=
  test "x$dir" = "x$object" && dir=
  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
  if test "$libtool" = yes; then
  if test "$libtool" = yes; then
    tmpdepfile1=$dir$base.d
    tmpdepfile1=$dir$base.d
    tmpdepfile2=$dir.libs/$base.d
    tmpdepfile2=$dir.libs/$base.d
    "$@" -Wc,+Maked
    "$@" -Wc,+Maked
  else
  else
    tmpdepfile1=$dir$base.d
    tmpdepfile1=$dir$base.d
    tmpdepfile2=$dir$base.d
    tmpdepfile2=$dir$base.d
    "$@" +Maked
    "$@" +Maked
  fi
  fi
  stat=$?
  stat=$?
  if test $stat -eq 0; then :
  if test $stat -eq 0; then :
  else
  else
     rm -f "$tmpdepfile1" "$tmpdepfile2"
     rm -f "$tmpdepfile1" "$tmpdepfile2"
     exit $stat
     exit $stat
  fi
  fi
  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
  do
  do
    test -f "$tmpdepfile" && break
    test -f "$tmpdepfile" && break
  done
  done
  if test -f "$tmpdepfile"; then
  if test -f "$tmpdepfile"; then
    sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
    sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
    # Add `dependent.h:' lines.
    # Add `dependent.h:' lines.
    sed -ne '2,${; s/^ *//; s/ \\*$//; s/$/:/; p;}' "$tmpdepfile" >> "$depfile"
    sed -ne '2,${
 
               s/^ *//
 
               s/ \\*$//
 
               s/$/:/
 
               p
 
             }' "$tmpdepfile" >> "$depfile"
  else
  else
    echo "#dummy" > "$depfile"
    echo "#dummy" > "$depfile"
  fi
  fi
  rm -f "$tmpdepfile" "$tmpdepfile2"
  rm -f "$tmpdepfile" "$tmpdepfile2"
  ;;
  ;;
tru64)
tru64)
   # The Tru64 compiler uses -MD to generate dependencies as a side
   # The Tru64 compiler uses -MD to generate dependencies as a side
   # effect.  `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
   # effect.  `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
   # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
   # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
   # dependencies in `foo.d' instead, so we check for that too.
   # dependencies in `foo.d' instead, so we check for that too.
   # Subdirectories are respected.
   # Subdirectories are respected.
   dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
   dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
   test "x$dir" = "x$object" && dir=
   test "x$dir" = "x$object" && dir=
   base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
   base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
   if test "$libtool" = yes; then
   if test "$libtool" = yes; then
      # With Tru64 cc, shared objects can also be used to make a
      # With Tru64 cc, shared objects can also be used to make a
      # static library.  This mechanism is used in libtool 1.4 series to
      # static library.  This mechanism is used in libtool 1.4 series to
      # handle both shared and static libraries in a single compilation.
      # handle both shared and static libraries in a single compilation.
      # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
      # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
      #
      #
      # With libtool 1.5 this exception was removed, and libtool now
      # With libtool 1.5 this exception was removed, and libtool now
      # generates 2 separate objects for the 2 libraries.  These two
      # generates 2 separate objects for the 2 libraries.  These two
      # compilations output dependencies in $dir.libs/$base.o.d and
      # compilations output dependencies in $dir.libs/$base.o.d and
      # in $dir$base.o.d.  We have to check for both files, because
      # in $dir$base.o.d.  We have to check for both files, because
      # one of the two compilations can be disabled.  We should prefer
      # one of the two compilations can be disabled.  We should prefer
      # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
      # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
      # automatically cleaned when .libs/ is deleted, while ignoring
      # automatically cleaned when .libs/ is deleted, while ignoring
      # the former would cause a distcleancheck panic.
      # the former would cause a distcleancheck panic.
      tmpdepfile1=$dir.libs/$base.lo.d   # libtool 1.4
      tmpdepfile1=$dir.libs/$base.lo.d   # libtool 1.4
      tmpdepfile2=$dir$base.o.d          # libtool 1.5
      tmpdepfile2=$dir$base.o.d          # libtool 1.5
      tmpdepfile3=$dir.libs/$base.o.d    # libtool 1.5
      tmpdepfile3=$dir.libs/$base.o.d    # libtool 1.5
      tmpdepfile4=$dir.libs/$base.d      # Compaq CCC V6.2-504
      tmpdepfile4=$dir.libs/$base.d      # Compaq CCC V6.2-504
      "$@" -Wc,-MD
      "$@" -Wc,-MD
   else
   else
      tmpdepfile1=$dir$base.o.d
      tmpdepfile1=$dir$base.o.d
      tmpdepfile2=$dir$base.d
      tmpdepfile2=$dir$base.d
      tmpdepfile3=$dir$base.d
      tmpdepfile3=$dir$base.d
      tmpdepfile4=$dir$base.d
      tmpdepfile4=$dir$base.d
      "$@" -MD
      "$@" -MD
   fi
   fi
   stat=$?
   stat=$?
   if test $stat -eq 0; then :
   if test $stat -eq 0; then :
   else
   else
      rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
      rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
      exit $stat
      exit $stat
   fi
   fi
   for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
   for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
   do
   do
     test -f "$tmpdepfile" && break
     test -f "$tmpdepfile" && break
   done
   done
   if test -f "$tmpdepfile"; then
   if test -f "$tmpdepfile"; then
      sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
      sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
      # That's a tab and a space in the [].
      # That's a tab and a space in the [].
      sed -e 's,^.*\.[a-z]*:[    ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
      sed -e 's,^.*\.[a-z]*:[    ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
   else
   else
      echo "#dummy" > "$depfile"
      echo "#dummy" > "$depfile"
   fi
   fi
   rm -f "$tmpdepfile"
   rm -f "$tmpdepfile"
   ;;
   ;;
#nosideeffect)
#nosideeffect)
  # This comment above is used by automake to tell side-effect
  # This comment above is used by automake to tell side-effect
  # dependency tracking mechanisms from slower ones.
  # dependency tracking mechanisms from slower ones.
dashmstdout)
dashmstdout)
  # Important note: in order to support this mode, a compiler *must*
  # Important note: in order to support this mode, a compiler *must*
  # always write the preprocessed file to stdout, regardless of -o.
  # always write the preprocessed file to stdout, regardless of -o.
  "$@" || exit $?
  "$@" || exit $?
  # Remove the call to Libtool.
  # Remove the call to Libtool.
  if test "$libtool" = yes; then
  if test "$libtool" = yes; then
    while test $1 != '--mode=compile'; do
    while test "X$1" != 'X--mode=compile'; do
      shift
      shift
    done
    done
    shift
    shift
  fi
  fi
  # Remove `-o $object'.
  # Remove `-o $object'.
  IFS=" "
  IFS=" "
  for arg
  for arg
  do
  do
    case $arg in
    case $arg in
    -o)
    -o)
      shift
      shift
      ;;
      ;;
    $object)
    $object)
      shift
      shift
      ;;
      ;;
    *)
    *)
      set fnord "$@" "$arg"
      set fnord "$@" "$arg"
      shift # fnord
      shift # fnord
      shift # $arg
      shift # $arg
      ;;
      ;;
    esac
    esac
  done
  done
  test -z "$dashmflag" && dashmflag=-M
  test -z "$dashmflag" && dashmflag=-M
  # Require at least two characters before searching for `:'
  # Require at least two characters before searching for `:'
  # in the target name.  This is to cope with DOS-style filenames:
  # in the target name.  This is to cope with DOS-style filenames:
  # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
  # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
  "$@" $dashmflag |
  "$@" $dashmflag |
    sed 's:^[  ]*[^: ][^:][^:]*\:[    ]*:'"$object"'\: :' > "$tmpdepfile"
    sed 's:^[  ]*[^: ][^:][^:]*\:[    ]*:'"$object"'\: :' > "$tmpdepfile"
  rm -f "$depfile"
  rm -f "$depfile"
  cat < "$tmpdepfile" > "$depfile"
  cat < "$tmpdepfile" > "$depfile"
  tr ' ' '
  tr ' ' '
' < "$tmpdepfile" | \
' < "$tmpdepfile" | \
## Some versions of the HPUX 10.20 sed can't process this invocation
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly.  Breaking it into two sed invocations is a workaround.
## correctly.  Breaking it into two sed invocations is a workaround.
    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
  rm -f "$tmpdepfile"
  rm -f "$tmpdepfile"
  ;;
  ;;
dashXmstdout)
dashXmstdout)
  # This case only exists to satisfy depend.m4.  It is never actually
  # This case only exists to satisfy depend.m4.  It is never actually
  # run, as this mode is specially recognized in the preamble.
  # run, as this mode is specially recognized in the preamble.
  exit 1
  exit 1
  ;;
  ;;
makedepend)
makedepend)
  "$@" || exit $?
  "$@" || exit $?
  # Remove any Libtool call
  # Remove any Libtool call
  if test "$libtool" = yes; then
  if test "$libtool" = yes; then
    while test $1 != '--mode=compile'; do
    while test "X$1" != 'X--mode=compile'; do
      shift
      shift
    done
    done
    shift
    shift
  fi
  fi
  # X makedepend
  # X makedepend
  shift
  shift
  cleared=no
  cleared=no eat=no
  for arg in "$@"; do
  for arg
 
  do
    case $cleared in
    case $cleared in
    no)
    no)
      set ""; shift
      set ""; shift
      cleared=yes ;;
      cleared=yes ;;
    esac
    esac
 
    if test $eat = yes; then
 
      eat=no
 
      continue
 
    fi
    case "$arg" in
    case "$arg" in
    -D*|-I*)
    -D*|-I*)
      set fnord "$@" "$arg"; shift ;;
      set fnord "$@" "$arg"; shift ;;
    # Strip any option that makedepend may not understand.  Remove
    # Strip any option that makedepend may not understand.  Remove
    # the object too, otherwise makedepend will parse it as a source file.
    # the object too, otherwise makedepend will parse it as a source file.
 
    -arch)
 
      eat=yes ;;
    -*|$object)
    -*|$object)
      ;;
      ;;
    *)
    *)
      set fnord "$@" "$arg"; shift ;;
      set fnord "$@" "$arg"; shift ;;
    esac
    esac
  done
  done
  obj_suffix="`echo $object | sed 's/^.*\././'`"
  obj_suffix=`echo "$object" | sed 's/^.*\././'`
  touch "$tmpdepfile"
  touch "$tmpdepfile"
  ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
  ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
  rm -f "$depfile"
  rm -f "$depfile"
  cat < "$tmpdepfile" > "$depfile"
  cat < "$tmpdepfile" > "$depfile"
  sed '1,2d' "$tmpdepfile" | tr ' ' '
  sed '1,2d' "$tmpdepfile" | tr ' ' '
' | \
' | \
## Some versions of the HPUX 10.20 sed can't process this invocation
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly.  Breaking it into two sed invocations is a workaround.
## correctly.  Breaking it into two sed invocations is a workaround.
    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
  rm -f "$tmpdepfile" "$tmpdepfile".bak
  rm -f "$tmpdepfile" "$tmpdepfile".bak
  ;;
  ;;
cpp)
cpp)
  # Important note: in order to support this mode, a compiler *must*
  # Important note: in order to support this mode, a compiler *must*
  # always write the preprocessed file to stdout.
  # always write the preprocessed file to stdout.
  "$@" || exit $?
  "$@" || exit $?
  # Remove the call to Libtool.
  # Remove the call to Libtool.
  if test "$libtool" = yes; then
  if test "$libtool" = yes; then
    while test $1 != '--mode=compile'; do
    while test "X$1" != 'X--mode=compile'; do
      shift
      shift
    done
    done
    shift
    shift
  fi
  fi
  # Remove `-o $object'.
  # Remove `-o $object'.
  IFS=" "
  IFS=" "
  for arg
  for arg
  do
  do
    case $arg in
    case $arg in
    -o)
    -o)
      shift
      shift
      ;;
      ;;
    $object)
    $object)
      shift
      shift
      ;;
      ;;
    *)
    *)
      set fnord "$@" "$arg"
      set fnord "$@" "$arg"
      shift # fnord
      shift # fnord
      shift # $arg
      shift # $arg
      ;;
      ;;
    esac
    esac
  done
  done
  "$@" -E |
  "$@" -E |
    sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
    sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
       -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
       -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
    sed '$ s: \\$::' > "$tmpdepfile"
    sed '$ s: \\$::' > "$tmpdepfile"
  rm -f "$depfile"
  rm -f "$depfile"
  echo "$object : \\" > "$depfile"
  echo "$object : \\" > "$depfile"
  cat < "$tmpdepfile" >> "$depfile"
  cat < "$tmpdepfile" >> "$depfile"
  sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
  sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
  rm -f "$tmpdepfile"
  rm -f "$tmpdepfile"
  ;;
  ;;
msvisualcpp)
msvisualcpp)
  # Important note: in order to support this mode, a compiler *must*
  # Important note: in order to support this mode, a compiler *must*
  # always write the preprocessed file to stdout, regardless of -o,
  # always write the preprocessed file to stdout.
  # because we must use -o when running libtool.
 
  "$@" || exit $?
  "$@" || exit $?
 
 
 
  # Remove the call to Libtool.
 
  if test "$libtool" = yes; then
 
    while test "X$1" != 'X--mode=compile'; do
 
      shift
 
    done
 
    shift
 
  fi
 
 
  IFS=" "
  IFS=" "
  for arg
  for arg
  do
  do
    case "$arg" in
    case "$arg" in
 
    -o)
 
      shift
 
      ;;
 
    $object)
 
      shift
 
      ;;
    "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
    "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
        set fnord "$@"
        set fnord "$@"
        shift
        shift
        shift
        shift
        ;;
        ;;
    *)
    *)
        set fnord "$@" "$arg"
        set fnord "$@" "$arg"
        shift
        shift
        shift
        shift
        ;;
        ;;
    esac
    esac
  done
  done
  "$@" -E |
  "$@" -E 2>/dev/null |
  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
  rm -f "$depfile"
  rm -f "$depfile"
  echo "$object : \\" > "$depfile"
  echo "$object : \\" > "$depfile"
  . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::    \1 \\:p' >> "$depfile"
  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::	\1 \\:p' >> "$depfile"
  echo "        " >> "$depfile"
  echo "        " >> "$depfile"
  . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
  rm -f "$tmpdepfile"
  rm -f "$tmpdepfile"
  ;;
  ;;
 
 
 
msvcmsys)
 
  # This case exists only to let depend.m4 do its work.  It works by
 
  # looking at the text of this script.  This case will never be run,
 
  # since it is checked for above.
 
  exit 1
 
  ;;
 
 
none)
none)
  exec "$@"
  exec "$@"
  ;;
  ;;
*)
*)
  echo "Unknown depmode $depmode" 1>&2
  echo "Unknown depmode $depmode" 1>&2
  exit 1
  exit 1
  ;;
  ;;
esac
esac
exit 0
exit 0
# Local Variables:
# Local Variables:
# mode: shell-script
# mode: shell-script
# sh-indentation: 2
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-end: "$"
# time-stamp-time-zone: "UTC"
 
# time-stamp-end: "; # UTC"
# End:
# End:
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.