~ubuntu-branches/ubuntu/natty/tcpreen/natty

« back to all changes in this revision

Viewing changes to admin/depcomp

  • Committer: Bazaar Package Importer
  • Author(s): Alberto Capella Silva
  • Date: 2010-09-04 21:47:45 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20100904214745-zbmkgvzjpx3e9lzc
Tags: 1.4.4-1
* New upstream release
* New maintainer. Closes: #581386.
* Switch to dpkg-source 3.0 (quilt) format.
* Upadate debian/watch.
* Standard-Versions updated to 3.9.1.
* debian/control, debian/compat: bump to DH7.
* debian/copyright updated to DEP5.

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=2005-02-09.22
 
4
scriptversion=2006-10-15.18
5
5
 
6
 
# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
 
6
# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006 Free Software
 
7
# Foundation, Inc.
7
8
 
8
9
# This program is free software; you can redistribute it and/or modify
9
10
# it under the terms of the GNU General Public License as published by
17
18
 
18
19
# You should have received a copy of the GNU General Public License
19
20
# 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.
 
21
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 
22
# 02110-1301, USA.
22
23
 
23
24
# As a special exception to the GNU General Public License, if you
24
25
# distribute this file as part of a program that contains a
91
92
## gcc 3 implements dependency tracking that does exactly what
92
93
## we want.  Yay!  Note: for some reason libtool 1.4 doesn't like
93
94
## it if -MD -MP comes after the -MF stuff.  Hmm.
94
 
  "$@" -MT "$object" -MD -MP -MF "$tmpdepfile"
 
95
## Unfortunately, FreeBSD c89 acceptance of flags depends upon
 
96
## the command line argument order; so add the flags where they
 
97
## appear in depend2.am.  Note that the slowdown incurred here
 
98
## affects only configure: in makefiles, %FASTDEP% shortcuts this.
 
99
  for arg
 
100
  do
 
101
    case $arg in
 
102
    -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
 
103
    *)  set fnord "$@" "$arg" ;;
 
104
    esac
 
105
    shift # fnord
 
106
    shift # $arg
 
107
  done
 
108
  "$@"
95
109
  stat=$?
96
110
  if test $stat -eq 0; then :
97
111
  else
276
290
  rm -f "$tmpdepfile"
277
291
  ;;
278
292
 
 
293
hp2)
 
294
  # The "hp" stanza above does not work with aCC (C++) and HP's ia64
 
295
  # compilers, which have integrated preprocessors.  The correct option
 
296
  # to use with these is +Maked; it writes dependencies to a file named
 
297
  # 'foo.d', which lands next to the object file, wherever that
 
298
  # happens to be.
 
299
  # Much of this is similar to the tru64 case; see comments there.
 
300
  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
 
301
  test "x$dir" = "x$object" && dir=
 
302
  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
 
303
  if test "$libtool" = yes; then
 
304
    tmpdepfile1=$dir$base.d
 
305
    tmpdepfile2=$dir.libs/$base.d
 
306
    "$@" -Wc,+Maked
 
307
  else
 
308
    tmpdepfile1=$dir$base.d
 
309
    tmpdepfile2=$dir$base.d
 
310
    "$@" +Maked
 
311
  fi
 
312
  stat=$?
 
313
  if test $stat -eq 0; then :
 
314
  else
 
315
     rm -f "$tmpdepfile1" "$tmpdepfile2"
 
316
     exit $stat
 
317
  fi
 
318
 
 
319
  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
 
320
  do
 
321
    test -f "$tmpdepfile" && break
 
322
  done
 
323
  if test -f "$tmpdepfile"; then
 
324
    sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
 
325
    # Add `dependent.h:' lines.
 
326
    sed -ne '2,${; s/^ *//; s/ \\*$//; s/$/:/; p;}' "$tmpdepfile" >> "$depfile"
 
327
  else
 
328
    echo "#dummy" > "$depfile"
 
329
  fi
 
330
  rm -f "$tmpdepfile" "$tmpdepfile2"
 
331
  ;;
 
332
 
279
333
tru64)
280
334
   # The Tru64 compiler uses -MD to generate dependencies as a side
281
335
   # effect.  `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
288
342
 
289
343
   if test "$libtool" = yes; then
290
344
      # 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
 
345
      # static library.  This mechanism is used in libtool 1.4 series to
292
346
      # handle both shared and static libraries in a single compilation.
293
347
      # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
294
348
      #
295
349
      # With libtool 1.5 this exception was removed, and libtool now
296
350
      # generates 2 separate objects for the 2 libraries.  These two
297
 
      # compilations output dependencies in in $dir.libs/$base.o.d and
 
351
      # compilations output dependencies in $dir.libs/$base.o.d and
298
352
      # in $dir$base.o.d.  We have to check for both files, because
299
353
      # one of the two compilations can be disabled.  We should prefer
300
354
      # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
467
521
  done
468
522
 
469
523
  "$@" -E |
470
 
    sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
 
524
    sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
 
525
       -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
471
526
    sed '$ s: \\$::' > "$tmpdepfile"
472
527
  rm -f "$depfile"
473
528
  echo "$object : \\" > "$depfile"