~vibhavp/ubuntu/raring/libcaca/add-autopkgtest

« back to all changes in this revision

Viewing changes to .auto/compile

  • Committer: Package Import Robot
  • Author(s): Sam Hocevar
  • Date: 2012-04-06 23:14:18 UTC
  • mfrom: (1.1.9) (4.1.9 sid)
  • Revision ID: package-import@ubuntu.com-20120406231418-3328yjbwwiotng8p
Tags: 0.99.beta18-1
* New upstream release.
* Acknowledge Gregor Herrmann's NMU (Closes: #616254, #638589).
* Add multiarch support, courtesy of William A Van Hevelingen and
  Johannes Kloos (Closes: #651009).
* debian/control: drop the libncurses5-dev dependency in the -dev package
  (Closes: #646515).

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
#! /bin/sh
2
 
# Wrapper for compilers which do not understand `-c -o'.
3
 
 
4
 
scriptversion=2009-10-06.20; # UTC
5
 
 
6
 
# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009  Free Software
7
 
# Foundation, Inc.
 
2
# Wrapper for compilers which do not understand '-c -o'.
 
3
 
 
4
scriptversion=2012-01-04.17; # UTC
 
5
 
 
6
# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009, 2010, 2012 Free
 
7
# Software Foundation, Inc.
8
8
# Written by Tom Tromey <tromey@cygnus.com>.
9
9
#
10
10
# This program is free software; you can redistribute it and/or modify
29
29
# bugs to <bug-automake@gnu.org> or send patches to
30
30
# <automake-patches@gnu.org>.
31
31
 
 
32
nl='
 
33
'
 
34
 
 
35
# We need space, tab and new line, in precisely that order.  Quoting is
 
36
# there to prevent tools from complaining about whitespace usage.
 
37
IFS=" ""        $nl"
 
38
 
 
39
file_conv=
 
40
 
 
41
# func_file_conv build_file lazy
 
42
# Convert a $build file to $host form and store it in $file
 
43
# Currently only supports Windows hosts. If the determined conversion
 
44
# type is listed in (the comma separated) LAZY, no conversion will
 
45
# take place.
 
46
func_file_conv ()
 
47
{
 
48
  file=$1
 
49
  case $file in
 
50
    / | /[!/]*) # absolute file, and not a UNC file
 
51
      if test -z "$file_conv"; then
 
52
        # lazily determine how to convert abs files
 
53
        case `uname -s` in
 
54
          MINGW*)
 
55
            file_conv=mingw
 
56
            ;;
 
57
          CYGWIN*)
 
58
            file_conv=cygwin
 
59
            ;;
 
60
          *)
 
61
            file_conv=wine
 
62
            ;;
 
63
        esac
 
64
      fi
 
65
      case $file_conv/,$2, in
 
66
        *,$file_conv,*)
 
67
          ;;
 
68
        mingw/*)
 
69
          file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
 
70
          ;;
 
71
        cygwin/*)
 
72
          file=`cygpath -m "$file" || echo "$file"`
 
73
          ;;
 
74
        wine/*)
 
75
          file=`winepath -w "$file" || echo "$file"`
 
76
          ;;
 
77
      esac
 
78
      ;;
 
79
  esac
 
80
}
 
81
 
 
82
# func_cl_wrapper cl arg...
 
83
# Adjust compile command to suit cl
 
84
func_cl_wrapper ()
 
85
{
 
86
  # Assume a capable shell
 
87
  lib_path=
 
88
  shared=:
 
89
  linker_opts=
 
90
  for arg
 
91
  do
 
92
    if test -n "$eat"; then
 
93
      eat=
 
94
    else
 
95
      case $1 in
 
96
        -o)
 
97
          # configure might choose to run compile as 'compile cc -o foo foo.c'.
 
98
          eat=1
 
99
          case $2 in
 
100
            *.o | *.[oO][bB][jJ])
 
101
              func_file_conv "$2"
 
102
              set x "$@" -Fo"$file"
 
103
              shift
 
104
              ;;
 
105
            *)
 
106
              func_file_conv "$2"
 
107
              set x "$@" -Fe"$file"
 
108
              shift
 
109
              ;;
 
110
          esac
 
111
          ;;
 
112
        -I*)
 
113
          func_file_conv "${1#-I}" mingw
 
114
          set x "$@" -I"$file"
 
115
          shift
 
116
          ;;
 
117
        -l*)
 
118
          lib=${1#-l}
 
119
          found=no
 
120
          save_IFS=$IFS
 
121
          IFS=';'
 
122
          for dir in $lib_path $LIB
 
123
          do
 
124
            IFS=$save_IFS
 
125
            if $shared && test -f "$dir/$lib.dll.lib"; then
 
126
              found=yes
 
127
              set x "$@" "$dir/$lib.dll.lib"
 
128
              break
 
129
            fi
 
130
            if test -f "$dir/$lib.lib"; then
 
131
              found=yes
 
132
              set x "$@" "$dir/$lib.lib"
 
133
              break
 
134
            fi
 
135
          done
 
136
          IFS=$save_IFS
 
137
 
 
138
          test "$found" != yes && set x "$@" "$lib.lib"
 
139
          shift
 
140
          ;;
 
141
        -L*)
 
142
          func_file_conv "${1#-L}"
 
143
          if test -z "$lib_path"; then
 
144
            lib_path=$file
 
145
          else
 
146
            lib_path="$lib_path;$file"
 
147
          fi
 
148
          linker_opts="$linker_opts -LIBPATH:$file"
 
149
          ;;
 
150
        -static)
 
151
          shared=false
 
152
          ;;
 
153
        -Wl,*)
 
154
          arg=${1#-Wl,}
 
155
          save_ifs="$IFS"; IFS=','
 
156
          for flag in $arg; do
 
157
            IFS="$save_ifs"
 
158
            linker_opts="$linker_opts $flag"
 
159
          done
 
160
          IFS="$save_ifs"
 
161
          ;;
 
162
        -Xlinker)
 
163
          eat=1
 
164
          linker_opts="$linker_opts $2"
 
165
          ;;
 
166
        -*)
 
167
          set x "$@" "$1"
 
168
          shift
 
169
          ;;
 
170
        *.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
 
171
          func_file_conv "$1"
 
172
          set x "$@" -Tp"$file"
 
173
          shift
 
174
          ;;
 
175
        *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
 
176
          func_file_conv "$1" mingw
 
177
          set x "$@" "$file"
 
178
          shift
 
179
          ;;
 
180
        *)
 
181
          set x "$@" "$1"
 
182
          shift
 
183
          ;;
 
184
      esac
 
185
    fi
 
186
    shift
 
187
  done
 
188
  if test -n "$linker_opts"; then
 
189
    linker_opts="-link$linker_opts"
 
190
  fi
 
191
  exec "$@" $linker_opts
 
192
  exit 1
 
193
}
 
194
 
 
195
eat=
 
196
 
32
197
case $1 in
33
198
  '')
34
 
     echo "$0: No command.  Try \`$0 --help' for more information." 1>&2
 
199
     echo "$0: No command.  Try '$0 --help' for more information." 1>&2
35
200
     exit 1;
36
201
     ;;
37
202
  -h | --h*)
38
203
    cat <<\EOF
39
204
Usage: compile [--help] [--version] PROGRAM [ARGS]
40
205
 
41
 
Wrapper for compilers which do not understand `-c -o'.
42
 
Remove `-o dest.o' from ARGS, run PROGRAM with the remaining
 
206
Wrapper for compilers which do not understand '-c -o'.
 
207
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
43
208
arguments, and rename the output as expected.
44
209
 
45
210
If you are trying to build a whole package this is not the
46
 
right script to run: please start by reading the file `INSTALL'.
 
211
right script to run: please start by reading the file 'INSTALL'.
47
212
 
48
213
Report bugs to <bug-automake@gnu.org>.
49
214
EOF
53
218
    echo "compile $scriptversion"
54
219
    exit $?
55
220
    ;;
 
221
  cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
 
222
    func_cl_wrapper "$@"      # Doesn't return...
 
223
    ;;
56
224
esac
57
225
 
58
226
ofile=
59
227
cfile=
60
 
eat=
61
228
 
62
229
for arg
63
230
do
66
233
  else
67
234
    case $1 in
68
235
      -o)
69
 
        # configure might choose to run compile as `compile cc -o foo foo.c'.
70
 
        # So we strip `-o arg' only if arg is an object.
 
236
        # configure might choose to run compile as 'compile cc -o foo foo.c'.
 
237
        # So we strip '-o arg' only if arg is an object.
71
238
        eat=1
72
239
        case $2 in
73
240
          *.o | *.obj)
94
261
done
95
262
 
96
263
if test -z "$ofile" || test -z "$cfile"; then
97
 
  # If no `-o' option was seen then we might have been invoked from a
 
264
  # If no '-o' option was seen then we might have been invoked from a
98
265
  # pattern rule where we don't need one.  That is ok -- this is a
99
266
  # normal compilation that the losing compiler can handle.  If no
100
 
  # `.c' file was seen then we are probably linking.  That is also
 
267
  # '.c' file was seen then we are probably linking.  That is also
101
268
  # ok.
102
269
  exec "$@"
103
270
fi
106
273
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
107
274
 
108
275
# Create the lock directory.
109
 
# Note: use `[/\\:.-]' here to ensure that we don't use the same name
 
276
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
110
277
# that we are using for the .o file.  Also, base the name on the expected
111
278
# object file name, since that is what matters with a parallel build.
112
279
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d