~ubuntu-branches/ubuntu/intrepid/plplot/intrepid

« back to all changes in this revision

Viewing changes to cf/depcomp

  • Committer: Bazaar Package Importer
  • Author(s): Rafael Laboissiere
  • Date: 2006-11-04 10:19:34 UTC
  • mfrom: (2.1.8 edgy)
  • Revision ID: james.westby@ubuntu.com-20061104101934-mlirvdg4gpwi6i5q
Tags: 5.6.1-10
* Orphaning the package
* debian/control: Changed the maintainer to the Debian QA Group

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
#! /bin/sh
2
2
# depcomp - compile a program generating dependencies as side-effects
3
3
 
4
 
scriptversion=2004-04-25.13
 
4
scriptversion=2005-07-09.11
5
5
 
6
 
# Copyright (C) 1999, 2000, 2003, 2004 Free Software Foundation, Inc.
 
6
# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
7
7
 
8
8
# This program is free software; you can redistribute it and/or modify
9
9
# it under the terms of the GNU General Public License as published by
17
17
 
18
18
# You should have received a copy of the GNU General Public License
19
19
# along with this program; if not, write to the Free Software
20
 
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
21
 
# 02111-1307, USA.
 
20
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 
21
# 02110-1301, USA.
22
22
 
23
23
# As a special exception to the GNU General Public License, if you
24
24
# distribute this file as part of a program that contains a
43
43
  depmode     Dependency tracking mode.
44
44
  source      Source file read by `PROGRAMS ARGS'.
45
45
  object      Object file output by `PROGRAMS ARGS'.
 
46
  DEPDIR      directory where to store dependencies.
46
47
  depfile     Dependency file to output.
47
48
  tmpdepfile  Temporary file to use when outputing dependencies.
48
49
  libtool     Whether libtool is used (yes/no).
49
50
 
50
51
Report bugs to <bug-automake@gnu.org>.
51
52
EOF
52
 
    exit 0
 
53
    exit $?
53
54
    ;;
54
55
  -v | --v*)
55
56
    echo "depcomp $scriptversion"
56
 
    exit 0
 
57
    exit $?
57
58
    ;;
58
59
esac
59
60
 
61
62
  echo "depcomp: Variables source, object and depmode must be set" 1>&2
62
63
  exit 1
63
64
fi
64
 
# `libtool' can also be set to `yes' or `no'.
65
 
 
66
 
if test -z "$depfile"; then
67
 
   base=`echo "$object" | sed -e 's,^.*/,,' -e 's,\.\([^.]*\)$,.P\1,'`
68
 
   dir=`echo "$object" | sed 's,/.*$,/,'`
69
 
   if test "$dir" = "$object"; then
70
 
      dir=
71
 
   fi
72
 
   # FIXME: should be _deps on DOS.
73
 
   depfile="$dir.deps/$base"
74
 
fi
75
 
 
 
65
 
 
66
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
 
67
depfile=${depfile-`echo "$object" |
 
68
  sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
76
69
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
77
70
 
78
71
rm -f "$tmpdepfile"
294
287
   base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
295
288
 
296
289
   if test "$libtool" = yes; then
297
 
      # Dependencies are output in .lo.d with libtool 1.4.
298
 
      # They are output in .o.d with libtool 1.5.
299
 
      tmpdepfile1="$dir.libs/$base.lo.d"
300
 
      tmpdepfile2="$dir.libs/$base.o.d"
301
 
      tmpdepfile3="$dir.libs/$base.d"
 
290
      # With Tru64 cc, shared objects can also be used to make a
 
291
      # static library.  This mecanism is used in libtool 1.4 series to
 
292
      # handle both shared and static libraries in a single compilation.
 
293
      # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
 
294
      #
 
295
      # With libtool 1.5 this exception was removed, and libtool now
 
296
      # generates 2 separate objects for the 2 libraries.  These two
 
297
      # compilations output dependencies in in $dir.libs/$base.o.d and
 
298
      # in $dir$base.o.d.  We have to check for both files, because
 
299
      # one of the two compilations can be disabled.  We should prefer
 
300
      # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
 
301
      # automatically cleaned when .libs/ is deleted, while ignoring
 
302
      # the former would cause a distcleancheck panic.
 
303
      tmpdepfile1=$dir.libs/$base.lo.d   # libtool 1.4
 
304
      tmpdepfile2=$dir$base.o.d          # libtool 1.5
 
305
      tmpdepfile3=$dir.libs/$base.o.d    # libtool 1.5
 
306
      tmpdepfile4=$dir.libs/$base.d      # Compaq CCC V6.2-504
302
307
      "$@" -Wc,-MD
303
308
   else
304
 
      tmpdepfile1="$dir$base.o.d"
305
 
      tmpdepfile2="$dir$base.d"
306
 
      tmpdepfile3="$dir$base.d"
 
309
      tmpdepfile1=$dir$base.o.d
 
310
      tmpdepfile2=$dir$base.d
 
311
      tmpdepfile3=$dir$base.d
 
312
      tmpdepfile4=$dir$base.d
307
313
      "$@" -MD
308
314
   fi
309
315
 
310
316
   stat=$?
311
317
   if test $stat -eq 0; then :
312
318
   else
313
 
      rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
 
319
      rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
314
320
      exit $stat
315
321
   fi
316
322
 
317
 
   if test -f "$tmpdepfile1"; then
318
 
      tmpdepfile="$tmpdepfile1"
319
 
   elif test -f "$tmpdepfile2"; then
320
 
      tmpdepfile="$tmpdepfile2"
321
 
   else
322
 
      tmpdepfile="$tmpdepfile3"
323
 
   fi
 
323
   for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
 
324
   do
 
325
     test -f "$tmpdepfile" && break
 
326
   done
324
327
   if test -f "$tmpdepfile"; then
325
328
      sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
326
329
      # That's a tab and a space in the [].
464
467
  done
465
468
 
466
469
  "$@" -E |
467
 
    sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
 
470
    sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
 
471
       -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
468
472
    sed '$ s: \\$::' > "$tmpdepfile"
469
473
  rm -f "$depfile"
470
474
  echo "$object : \\" > "$depfile"