~awn-core/awn/trunk-rewrite

« back to all changes in this revision

Viewing changes to shave/shave.in

  • Committer: Mark Lee
  • Date: 2009-03-02 06:50:31 UTC
  • Revision ID: bzr@lazymalevolence.com-20090302065031-lvvzkqyq12x2oaqg
Build system: Add shave support (generates much less verbose autotools output).

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/bin/sh
 
2
 
 
3
# we need sed
 
4
SED=@SED@
 
5
if test -z "$SED" ; then
 
6
SED=sed
 
7
fi
 
8
 
 
9
lt_unmangle ()
 
10
{
 
11
   last_result=`echo $1 | $SED -e 's#.libs/##' -e 's#[0-9a-zA-Z_\-\.]*_la-##'`
 
12
}
 
13
 
 
14
# the tool to wrap (cc, cxx, ar, ranlib, ..)
 
15
tool="$1"
 
16
shift
 
17
 
 
18
# the reel tool (to call)
 
19
REEL_TOOL="$1"
 
20
shift
 
21
 
 
22
pass_through=0
 
23
preserved_args=
 
24
while test "$#" -gt 0; do
 
25
    opt="$1"
 
26
    shift
 
27
 
 
28
    case $opt in
 
29
    --shave-mode=*)
 
30
        mode=`echo $opt | $SED -e 's/[-_a-zA-Z0-9]*=//'`
 
31
        ;;
 
32
    -o)
 
33
        lt_output="$1"
 
34
        preserved_args="$preserved_args $opt"
 
35
        ;;
 
36
    *)
 
37
        preserved_args="$preserved_args $opt"
 
38
        ;;
 
39
      esac
 
40
done
 
41
 
 
42
# mode=link is handled in the libtool wrapper
 
43
case "$mode,$tool" in
 
44
link,*)
 
45
    pass_through=1
 
46
    ;;
 
47
*,cxx)
 
48
    Q="  CXX   "
 
49
    ;;
 
50
*,cc)
 
51
    Q="  CC    "
 
52
    ;;
 
53
*,fc)
 
54
    Q="  FC    "
 
55
    ;;
 
56
*,f77)
 
57
    Q="  F77   "
 
58
    ;;
 
59
*,*)
 
60
    # should not happen
 
61
    Q="  CC    "
 
62
    ;;
 
63
esac
 
64
 
 
65
lt_unmangle "$lt_output"
 
66
output=$last_result
 
67
 
 
68
if test -z $V; then
 
69
    if test $pass_through -eq 0; then
 
70
        echo "$Q$output"
 
71
    fi
 
72
    $REEL_TOOL $preserved_args
 
73
else
 
74
    echo $REEL_TOOL $preserved_args
 
75
    $REEL_TOOL $preserved_args
 
76
fi