aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/libraries/irrlicht-1.8/source/Irrlicht/jpeglib/depcomp
diff options
context:
space:
mode:
authorDavid Walter Seikel2013-01-13 18:54:10 +1000
committerDavid Walter Seikel2013-01-13 18:54:10 +1000
commit959831f4ef5a3e797f576c3de08cd65032c997ad (patch)
treee7351908be5995f0b325b2ebeaa02d5a34b82583 /libraries/irrlicht-1.8/source/Irrlicht/jpeglib/depcomp
parentAdd info about changes to Irrlicht. (diff)
downloadSledjHamr-959831f4ef5a3e797f576c3de08cd65032c997ad.zip
SledjHamr-959831f4ef5a3e797f576c3de08cd65032c997ad.tar.gz
SledjHamr-959831f4ef5a3e797f576c3de08cd65032c997ad.tar.bz2
SledjHamr-959831f4ef5a3e797f576c3de08cd65032c997ad.tar.xz
Remove damned ancient DOS line endings from Irrlicht. Hopefully I did not go overboard.
Diffstat (limited to 'libraries/irrlicht-1.8/source/Irrlicht/jpeglib/depcomp')
-rw-r--r--libraries/irrlicht-1.8/source/Irrlicht/jpeglib/depcomp1376
1 files changed, 688 insertions, 688 deletions
diff --git a/libraries/irrlicht-1.8/source/Irrlicht/jpeglib/depcomp b/libraries/irrlicht-1.8/source/Irrlicht/jpeglib/depcomp
index 2c491ab..bd0ac08 100644
--- a/libraries/irrlicht-1.8/source/Irrlicht/jpeglib/depcomp
+++ b/libraries/irrlicht-1.8/source/Irrlicht/jpeglib/depcomp
@@ -1,688 +1,688 @@
1#! /bin/sh 1#! /bin/sh
2# depcomp - compile a program generating dependencies as side-effects 2# depcomp - compile a program generating dependencies as side-effects
3 3
4scriptversion=2011-12-04.11; # UTC 4scriptversion=2011-12-04.11; # UTC
5 5
6# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010, 6# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010,
7# 2011 Free Software Foundation, Inc. 7# 2011 Free Software Foundation, Inc.
8 8
9# This program is free software; you can redistribute it and/or modify 9# This program is free software; you can redistribute it and/or modify
10# it under the terms of the GNU General Public License as published by 10# it under the terms of the GNU General Public License as published by
11# the Free Software Foundation; either version 2, or (at your option) 11# the Free Software Foundation; either version 2, or (at your option)
12# any later version. 12# any later version.
13 13
14# This program is distributed in the hope that it will be useful, 14# This program is distributed in the hope that it will be useful,
15# but WITHOUT ANY WARRANTY; without even the implied warranty of 15# but WITHOUT ANY WARRANTY; without even the implied warranty of
16# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17# GNU General Public License for more details. 17# GNU General Public License for more details.
18 18
19# You should have received a copy of the GNU General Public License 19# You should have received a copy of the GNU General Public License
20# along with this program. If not, see <http://www.gnu.org/licenses/>. 20# along with this program. If not, see <http://www.gnu.org/licenses/>.
21 21
22# As a special exception to the GNU General Public License, if you 22# As a special exception to the GNU General Public License, if you
23# distribute this file as part of a program that contains a 23# distribute this file as part of a program that contains a
24# configuration script generated by Autoconf, you may include it under 24# configuration script generated by Autoconf, you may include it under
25# the same distribution terms that you use for the rest of that program. 25# the same distribution terms that you use for the rest of that program.
26 26
27# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>. 27# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
28 28
29case $1 in 29case $1 in
30 '') 30 '')
31 echo "$0: No command. Try \`$0 --help' for more information." 1>&2 31 echo "$0: No command. Try \`$0 --help' for more information." 1>&2
32 exit 1; 32 exit 1;
33 ;; 33 ;;
34 -h | --h*) 34 -h | --h*)
35 cat <<\EOF 35 cat <<\EOF
36Usage: depcomp [--help] [--version] PROGRAM [ARGS] 36Usage: depcomp [--help] [--version] PROGRAM [ARGS]
37 37
38Run PROGRAMS ARGS to compile a file, generating dependencies 38Run PROGRAMS ARGS to compile a file, generating dependencies
39as side-effects. 39as side-effects.
40 40
41Environment variables: 41Environment variables:
42 depmode Dependency tracking mode. 42 depmode Dependency tracking mode.
43 source Source file read by `PROGRAMS ARGS'. 43 source Source file read by `PROGRAMS ARGS'.
44 object Object file output by `PROGRAMS ARGS'. 44 object Object file output by `PROGRAMS ARGS'.
45 DEPDIR directory where to store dependencies. 45 DEPDIR directory where to store dependencies.
46 depfile Dependency file to output. 46 depfile Dependency file to output.
47 tmpdepfile Temporary file to use when outputting dependencies. 47 tmpdepfile Temporary file to use when outputting dependencies.
48 libtool Whether libtool is used (yes/no). 48 libtool Whether libtool is used (yes/no).
49 49
50Report bugs to <bug-automake@gnu.org>. 50Report bugs to <bug-automake@gnu.org>.
51EOF 51EOF
52 exit $? 52 exit $?
53 ;; 53 ;;
54 -v | --v*) 54 -v | --v*)
55 echo "depcomp $scriptversion" 55 echo "depcomp $scriptversion"
56 exit $? 56 exit $?
57 ;; 57 ;;
58esac 58esac
59 59
60if test -z "$depmode" || test -z "$source" || test -z "$object"; then 60if test -z "$depmode" || test -z "$source" || test -z "$object"; then
61 echo "depcomp: Variables source, object and depmode must be set" 1>&2 61 echo "depcomp: Variables source, object and depmode must be set" 1>&2
62 exit 1 62 exit 1
63fi 63fi
64 64
65# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. 65# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
66depfile=${depfile-`echo "$object" | 66depfile=${depfile-`echo "$object" |
67 sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} 67 sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
68tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} 68tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
69 69
70rm -f "$tmpdepfile" 70rm -f "$tmpdepfile"
71 71
72# Some modes work just like other modes, but use different flags. We 72# Some modes work just like other modes, but use different flags. We
73# parameterize here, but still list the modes in the big case below, 73# parameterize here, but still list the modes in the big case below,
74# to make depend.m4 easier to write. Note that we *cannot* use a case 74# to make depend.m4 easier to write. Note that we *cannot* use a case
75# here, because this file can only contain one case statement. 75# here, because this file can only contain one case statement.
76if test "$depmode" = hp; then 76if test "$depmode" = hp; then
77 # HP compiler uses -M and no extra arg. 77 # HP compiler uses -M and no extra arg.
78 gccflag=-M 78 gccflag=-M
79 depmode=gcc 79 depmode=gcc
80fi 80fi
81 81
82if test "$depmode" = dashXmstdout; then 82if test "$depmode" = dashXmstdout; then
83 # This is just like dashmstdout with a different argument. 83 # This is just like dashmstdout with a different argument.
84 dashmflag=-xM 84 dashmflag=-xM
85 depmode=dashmstdout 85 depmode=dashmstdout
86fi 86fi
87 87
88cygpath_u="cygpath -u -f -" 88cygpath_u="cygpath -u -f -"
89if test "$depmode" = msvcmsys; then 89if test "$depmode" = msvcmsys; then
90 # This is just like msvisualcpp but w/o cygpath translation. 90 # This is just like msvisualcpp but w/o cygpath translation.
91 # Just convert the backslash-escaped backslashes to single forward 91 # Just convert the backslash-escaped backslashes to single forward
92 # slashes to satisfy depend.m4 92 # slashes to satisfy depend.m4
93 cygpath_u='sed s,\\\\,/,g' 93 cygpath_u='sed s,\\\\,/,g'
94 depmode=msvisualcpp 94 depmode=msvisualcpp
95fi 95fi
96 96
97if test "$depmode" = msvc7msys; then 97if test "$depmode" = msvc7msys; then
98 # This is just like msvc7 but w/o cygpath translation. 98 # This is just like msvc7 but w/o cygpath translation.
99 # Just convert the backslash-escaped backslashes to single forward 99 # Just convert the backslash-escaped backslashes to single forward
100 # slashes to satisfy depend.m4 100 # slashes to satisfy depend.m4
101 cygpath_u='sed s,\\\\,/,g' 101 cygpath_u='sed s,\\\\,/,g'
102 depmode=msvc7 102 depmode=msvc7
103fi 103fi
104 104
105case "$depmode" in 105case "$depmode" in
106gcc3) 106gcc3)
107## gcc 3 implements dependency tracking that does exactly what 107## gcc 3 implements dependency tracking that does exactly what
108## we want. Yay! Note: for some reason libtool 1.4 doesn't like 108## we want. Yay! Note: for some reason libtool 1.4 doesn't like
109## it if -MD -MP comes after the -MF stuff. Hmm. 109## it if -MD -MP comes after the -MF stuff. Hmm.
110## Unfortunately, FreeBSD c89 acceptance of flags depends upon 110## Unfortunately, FreeBSD c89 acceptance of flags depends upon
111## the command line argument order; so add the flags where they 111## the command line argument order; so add the flags where they
112## appear in depend2.am. Note that the slowdown incurred here 112## appear in depend2.am. Note that the slowdown incurred here
113## affects only configure: in makefiles, %FASTDEP% shortcuts this. 113## affects only configure: in makefiles, %FASTDEP% shortcuts this.
114 for arg 114 for arg
115 do 115 do
116 case $arg in 116 case $arg in
117 -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;; 117 -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
118 *) set fnord "$@" "$arg" ;; 118 *) set fnord "$@" "$arg" ;;
119 esac 119 esac
120 shift # fnord 120 shift # fnord
121 shift # $arg 121 shift # $arg
122 done 122 done
123 "$@" 123 "$@"
124 stat=$? 124 stat=$?
125 if test $stat -eq 0; then : 125 if test $stat -eq 0; then :
126 else 126 else
127 rm -f "$tmpdepfile" 127 rm -f "$tmpdepfile"
128 exit $stat 128 exit $stat
129 fi 129 fi
130 mv "$tmpdepfile" "$depfile" 130 mv "$tmpdepfile" "$depfile"
131 ;; 131 ;;
132 132
133gcc) 133gcc)
134## There are various ways to get dependency output from gcc. Here's 134## There are various ways to get dependency output from gcc. Here's
135## why we pick this rather obscure method: 135## why we pick this rather obscure method:
136## - Don't want to use -MD because we'd like the dependencies to end 136## - Don't want to use -MD because we'd like the dependencies to end
137## up in a subdir. Having to rename by hand is ugly. 137## up in a subdir. Having to rename by hand is ugly.
138## (We might end up doing this anyway to support other compilers.) 138## (We might end up doing this anyway to support other compilers.)
139## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like 139## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
140## -MM, not -M (despite what the docs say). 140## -MM, not -M (despite what the docs say).
141## - Using -M directly means running the compiler twice (even worse 141## - Using -M directly means running the compiler twice (even worse
142## than renaming). 142## than renaming).
143 if test -z "$gccflag"; then 143 if test -z "$gccflag"; then
144 gccflag=-MD, 144 gccflag=-MD,
145 fi 145 fi
146 "$@" -Wp,"$gccflag$tmpdepfile" 146 "$@" -Wp,"$gccflag$tmpdepfile"
147 stat=$? 147 stat=$?
148 if test $stat -eq 0; then : 148 if test $stat -eq 0; then :
149 else 149 else
150 rm -f "$tmpdepfile" 150 rm -f "$tmpdepfile"
151 exit $stat 151 exit $stat
152 fi 152 fi
153 rm -f "$depfile" 153 rm -f "$depfile"
154 echo "$object : \\" > "$depfile" 154 echo "$object : \\" > "$depfile"
155 alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz 155 alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
156## The second -e expression handles DOS-style file names with drive letters. 156## The second -e expression handles DOS-style file names with drive letters.
157 sed -e 's/^[^:]*: / /' \ 157 sed -e 's/^[^:]*: / /' \
158 -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" 158 -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
159## This next piece of magic avoids the `deleted header file' problem. 159## This next piece of magic avoids the `deleted header file' problem.
160## The problem is that when a header file which appears in a .P file 160## The problem is that when a header file which appears in a .P file
161## is deleted, the dependency causes make to die (because there is 161## is deleted, the dependency causes make to die (because there is
162## typically no way to rebuild the header). We avoid this by adding 162## typically no way to rebuild the header). We avoid this by adding
163## dummy dependencies for each header file. Too bad gcc doesn't do 163## dummy dependencies for each header file. Too bad gcc doesn't do
164## this for us directly. 164## this for us directly.
165 tr ' ' ' 165 tr ' ' '
166' < "$tmpdepfile" | 166' < "$tmpdepfile" |
167## Some versions of gcc put a space before the `:'. On the theory 167## Some versions of gcc put a space before the `:'. On the theory
168## that the space means something, we add a space to the output as 168## that the space means something, we add a space to the output as
169## well. hp depmode also adds that space, but also prefixes the VPATH 169## well. hp depmode also adds that space, but also prefixes the VPATH
170## to the object. Take care to not repeat it in the output. 170## to the object. Take care to not repeat it in the output.
171## Some versions of the HPUX 10.20 sed can't process this invocation 171## Some versions of the HPUX 10.20 sed can't process this invocation
172## correctly. Breaking it into two sed invocations is a workaround. 172## correctly. Breaking it into two sed invocations is a workaround.
173 sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \ 173 sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
174 | sed -e 's/$/ :/' >> "$depfile" 174 | sed -e 's/$/ :/' >> "$depfile"
175 rm -f "$tmpdepfile" 175 rm -f "$tmpdepfile"
176 ;; 176 ;;
177 177
178hp) 178hp)
179 # This case exists only to let depend.m4 do its work. It works by 179 # This case exists only to let depend.m4 do its work. It works by
180 # looking at the text of this script. This case will never be run, 180 # looking at the text of this script. This case will never be run,
181 # since it is checked for above. 181 # since it is checked for above.
182 exit 1 182 exit 1
183 ;; 183 ;;
184 184
185sgi) 185sgi)
186 if test "$libtool" = yes; then 186 if test "$libtool" = yes; then
187 "$@" "-Wp,-MDupdate,$tmpdepfile" 187 "$@" "-Wp,-MDupdate,$tmpdepfile"
188 else 188 else
189 "$@" -MDupdate "$tmpdepfile" 189 "$@" -MDupdate "$tmpdepfile"
190 fi 190 fi
191 stat=$? 191 stat=$?
192 if test $stat -eq 0; then : 192 if test $stat -eq 0; then :
193 else 193 else
194 rm -f "$tmpdepfile" 194 rm -f "$tmpdepfile"
195 exit $stat 195 exit $stat
196 fi 196 fi
197 rm -f "$depfile" 197 rm -f "$depfile"
198 198
199 if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files 199 if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
200 echo "$object : \\" > "$depfile" 200 echo "$object : \\" > "$depfile"
201 201
202 # Clip off the initial element (the dependent). Don't try to be 202 # Clip off the initial element (the dependent). Don't try to be
203 # clever and replace this with sed code, as IRIX sed won't handle 203 # clever and replace this with sed code, as IRIX sed won't handle
204 # lines with more than a fixed number of characters (4096 in 204 # lines with more than a fixed number of characters (4096 in
205 # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; 205 # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
206 # the IRIX cc adds comments like `#:fec' to the end of the 206 # the IRIX cc adds comments like `#:fec' to the end of the
207 # dependency line. 207 # dependency line.
208 tr ' ' ' 208 tr ' ' '
209' < "$tmpdepfile" \ 209' < "$tmpdepfile" \
210 | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ 210 | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
211 tr ' 211 tr '
212' ' ' >> "$depfile" 212' ' ' >> "$depfile"
213 echo >> "$depfile" 213 echo >> "$depfile"
214 214
215 # The second pass generates a dummy entry for each header file. 215 # The second pass generates a dummy entry for each header file.
216 tr ' ' ' 216 tr ' ' '
217' < "$tmpdepfile" \ 217' < "$tmpdepfile" \
218 | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ 218 | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
219 >> "$depfile" 219 >> "$depfile"
220 else 220 else
221 # The sourcefile does not contain any dependencies, so just 221 # The sourcefile does not contain any dependencies, so just
222 # store a dummy comment line, to avoid errors with the Makefile 222 # store a dummy comment line, to avoid errors with the Makefile
223 # "include basename.Plo" scheme. 223 # "include basename.Plo" scheme.
224 echo "#dummy" > "$depfile" 224 echo "#dummy" > "$depfile"
225 fi 225 fi
226 rm -f "$tmpdepfile" 226 rm -f "$tmpdepfile"
227 ;; 227 ;;
228 228
229aix) 229aix)
230 # The C for AIX Compiler uses -M and outputs the dependencies 230 # The C for AIX Compiler uses -M and outputs the dependencies
231 # in a .u file. In older versions, this file always lives in the 231 # in a .u file. In older versions, this file always lives in the
232 # current directory. Also, the AIX compiler puts `$object:' at the 232 # current directory. Also, the AIX compiler puts `$object:' at the
233 # start of each line; $object doesn't have directory information. 233 # start of each line; $object doesn't have directory information.
234 # Version 6 uses the directory in both cases. 234 # Version 6 uses the directory in both cases.
235 dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` 235 dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
236 test "x$dir" = "x$object" && dir= 236 test "x$dir" = "x$object" && dir=
237 base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` 237 base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
238 if test "$libtool" = yes; then 238 if test "$libtool" = yes; then
239 tmpdepfile1=$dir$base.u 239 tmpdepfile1=$dir$base.u
240 tmpdepfile2=$base.u 240 tmpdepfile2=$base.u
241 tmpdepfile3=$dir.libs/$base.u 241 tmpdepfile3=$dir.libs/$base.u
242 "$@" -Wc,-M 242 "$@" -Wc,-M
243 else 243 else
244 tmpdepfile1=$dir$base.u 244 tmpdepfile1=$dir$base.u
245 tmpdepfile2=$dir$base.u 245 tmpdepfile2=$dir$base.u
246 tmpdepfile3=$dir$base.u 246 tmpdepfile3=$dir$base.u
247 "$@" -M 247 "$@" -M
248 fi 248 fi
249 stat=$? 249 stat=$?
250 250
251 if test $stat -eq 0; then : 251 if test $stat -eq 0; then :
252 else 252 else
253 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" 253 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
254 exit $stat 254 exit $stat
255 fi 255 fi
256 256
257 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" 257 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
258 do 258 do
259 test -f "$tmpdepfile" && break 259 test -f "$tmpdepfile" && break
260 done 260 done
261 if test -f "$tmpdepfile"; then 261 if test -f "$tmpdepfile"; then
262 # Each line is of the form `foo.o: dependent.h'. 262 # Each line is of the form `foo.o: dependent.h'.
263 # Do two passes, one to just change these to 263 # Do two passes, one to just change these to
264 # `$object: dependent.h' and one to simply `dependent.h:'. 264 # `$object: dependent.h' and one to simply `dependent.h:'.
265 sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" 265 sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
266 # That's a tab and a space in the []. 266 # That's a tab and a space in the [].
267 sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" 267 sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
268 else 268 else
269 # The sourcefile does not contain any dependencies, so just 269 # The sourcefile does not contain any dependencies, so just
270 # store a dummy comment line, to avoid errors with the Makefile 270 # store a dummy comment line, to avoid errors with the Makefile
271 # "include basename.Plo" scheme. 271 # "include basename.Plo" scheme.
272 echo "#dummy" > "$depfile" 272 echo "#dummy" > "$depfile"
273 fi 273 fi
274 rm -f "$tmpdepfile" 274 rm -f "$tmpdepfile"
275 ;; 275 ;;
276 276
277icc) 277icc)
278 # Intel's C compiler understands `-MD -MF file'. However on 278 # Intel's C compiler understands `-MD -MF file'. However on
279 # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c 279 # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
280 # ICC 7.0 will fill foo.d with something like 280 # ICC 7.0 will fill foo.d with something like
281 # foo.o: sub/foo.c 281 # foo.o: sub/foo.c
282 # foo.o: sub/foo.h 282 # foo.o: sub/foo.h
283 # which is wrong. We want: 283 # which is wrong. We want:
284 # sub/foo.o: sub/foo.c 284 # sub/foo.o: sub/foo.c
285 # sub/foo.o: sub/foo.h 285 # sub/foo.o: sub/foo.h
286 # sub/foo.c: 286 # sub/foo.c:
287 # sub/foo.h: 287 # sub/foo.h:
288 # ICC 7.1 will output 288 # ICC 7.1 will output
289 # foo.o: sub/foo.c sub/foo.h 289 # foo.o: sub/foo.c sub/foo.h
290 # and will wrap long lines using \ : 290 # and will wrap long lines using \ :
291 # foo.o: sub/foo.c ... \ 291 # foo.o: sub/foo.c ... \
292 # sub/foo.h ... \ 292 # sub/foo.h ... \
293 # ... 293 # ...
294 294
295 "$@" -MD -MF "$tmpdepfile" 295 "$@" -MD -MF "$tmpdepfile"
296 stat=$? 296 stat=$?
297 if test $stat -eq 0; then : 297 if test $stat -eq 0; then :
298 else 298 else
299 rm -f "$tmpdepfile" 299 rm -f "$tmpdepfile"
300 exit $stat 300 exit $stat
301 fi 301 fi
302 rm -f "$depfile" 302 rm -f "$depfile"
303 # Each line is of the form `foo.o: dependent.h', 303 # Each line is of the form `foo.o: dependent.h',
304 # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. 304 # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
305 # Do two passes, one to just change these to 305 # Do two passes, one to just change these to
306 # `$object: dependent.h' and one to simply `dependent.h:'. 306 # `$object: dependent.h' and one to simply `dependent.h:'.
307 sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" 307 sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
308 # Some versions of the HPUX 10.20 sed can't process this invocation 308 # Some versions of the HPUX 10.20 sed can't process this invocation
309 # correctly. Breaking it into two sed invocations is a workaround. 309 # correctly. Breaking it into two sed invocations is a workaround.
310 sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | 310 sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
311 sed -e 's/$/ :/' >> "$depfile" 311 sed -e 's/$/ :/' >> "$depfile"
312 rm -f "$tmpdepfile" 312 rm -f "$tmpdepfile"
313 ;; 313 ;;
314 314
315hp2) 315hp2)
316 # The "hp" stanza above does not work with aCC (C++) and HP's ia64 316 # The "hp" stanza above does not work with aCC (C++) and HP's ia64
317 # compilers, which have integrated preprocessors. The correct option 317 # compilers, which have integrated preprocessors. The correct option
318 # to use with these is +Maked; it writes dependencies to a file named 318 # to use with these is +Maked; it writes dependencies to a file named
319 # 'foo.d', which lands next to the object file, wherever that 319 # 'foo.d', which lands next to the object file, wherever that
320 # happens to be. 320 # happens to be.
321 # Much of this is similar to the tru64 case; see comments there. 321 # Much of this is similar to the tru64 case; see comments there.
322 dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` 322 dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
323 test "x$dir" = "x$object" && dir= 323 test "x$dir" = "x$object" && dir=
324 base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` 324 base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
325 if test "$libtool" = yes; then 325 if test "$libtool" = yes; then
326 tmpdepfile1=$dir$base.d 326 tmpdepfile1=$dir$base.d
327 tmpdepfile2=$dir.libs/$base.d 327 tmpdepfile2=$dir.libs/$base.d
328 "$@" -Wc,+Maked 328 "$@" -Wc,+Maked
329 else 329 else
330 tmpdepfile1=$dir$base.d 330 tmpdepfile1=$dir$base.d
331 tmpdepfile2=$dir$base.d 331 tmpdepfile2=$dir$base.d
332 "$@" +Maked 332 "$@" +Maked
333 fi 333 fi
334 stat=$? 334 stat=$?
335 if test $stat -eq 0; then : 335 if test $stat -eq 0; then :
336 else 336 else
337 rm -f "$tmpdepfile1" "$tmpdepfile2" 337 rm -f "$tmpdepfile1" "$tmpdepfile2"
338 exit $stat 338 exit $stat
339 fi 339 fi
340 340
341 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" 341 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
342 do 342 do
343 test -f "$tmpdepfile" && break 343 test -f "$tmpdepfile" && break
344 done 344 done
345 if test -f "$tmpdepfile"; then 345 if test -f "$tmpdepfile"; then
346 sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile" 346 sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
347 # Add `dependent.h:' lines. 347 # Add `dependent.h:' lines.
348 sed -ne '2,${ 348 sed -ne '2,${
349 s/^ *// 349 s/^ *//
350 s/ \\*$// 350 s/ \\*$//
351 s/$/:/ 351 s/$/:/
352 p 352 p
353 }' "$tmpdepfile" >> "$depfile" 353 }' "$tmpdepfile" >> "$depfile"
354 else 354 else
355 echo "#dummy" > "$depfile" 355 echo "#dummy" > "$depfile"
356 fi 356 fi
357 rm -f "$tmpdepfile" "$tmpdepfile2" 357 rm -f "$tmpdepfile" "$tmpdepfile2"
358 ;; 358 ;;
359 359
360tru64) 360tru64)
361 # The Tru64 compiler uses -MD to generate dependencies as a side 361 # The Tru64 compiler uses -MD to generate dependencies as a side
362 # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. 362 # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
363 # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put 363 # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
364 # dependencies in `foo.d' instead, so we check for that too. 364 # dependencies in `foo.d' instead, so we check for that too.
365 # Subdirectories are respected. 365 # Subdirectories are respected.
366 dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` 366 dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
367 test "x$dir" = "x$object" && dir= 367 test "x$dir" = "x$object" && dir=
368 base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` 368 base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
369 369
370 if test "$libtool" = yes; then 370 if test "$libtool" = yes; then
371 # With Tru64 cc, shared objects can also be used to make a 371 # With Tru64 cc, shared objects can also be used to make a
372 # static library. This mechanism is used in libtool 1.4 series to 372 # static library. This mechanism is used in libtool 1.4 series to
373 # handle both shared and static libraries in a single compilation. 373 # handle both shared and static libraries in a single compilation.
374 # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. 374 # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
375 # 375 #
376 # With libtool 1.5 this exception was removed, and libtool now 376 # With libtool 1.5 this exception was removed, and libtool now
377 # generates 2 separate objects for the 2 libraries. These two 377 # generates 2 separate objects for the 2 libraries. These two
378 # compilations output dependencies in $dir.libs/$base.o.d and 378 # compilations output dependencies in $dir.libs/$base.o.d and
379 # in $dir$base.o.d. We have to check for both files, because 379 # in $dir$base.o.d. We have to check for both files, because
380 # one of the two compilations can be disabled. We should prefer 380 # one of the two compilations can be disabled. We should prefer
381 # $dir$base.o.d over $dir.libs/$base.o.d because the latter is 381 # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
382 # automatically cleaned when .libs/ is deleted, while ignoring 382 # automatically cleaned when .libs/ is deleted, while ignoring
383 # the former would cause a distcleancheck panic. 383 # the former would cause a distcleancheck panic.
384 tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4 384 tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
385 tmpdepfile2=$dir$base.o.d # libtool 1.5 385 tmpdepfile2=$dir$base.o.d # libtool 1.5
386 tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5 386 tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
387 tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504 387 tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
388 "$@" -Wc,-MD 388 "$@" -Wc,-MD
389 else 389 else
390 tmpdepfile1=$dir$base.o.d 390 tmpdepfile1=$dir$base.o.d
391 tmpdepfile2=$dir$base.d 391 tmpdepfile2=$dir$base.d
392 tmpdepfile3=$dir$base.d 392 tmpdepfile3=$dir$base.d
393 tmpdepfile4=$dir$base.d 393 tmpdepfile4=$dir$base.d
394 "$@" -MD 394 "$@" -MD
395 fi 395 fi
396 396
397 stat=$? 397 stat=$?
398 if test $stat -eq 0; then : 398 if test $stat -eq 0; then :
399 else 399 else
400 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" 400 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
401 exit $stat 401 exit $stat
402 fi 402 fi
403 403
404 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" 404 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
405 do 405 do
406 test -f "$tmpdepfile" && break 406 test -f "$tmpdepfile" && break
407 done 407 done
408 if test -f "$tmpdepfile"; then 408 if test -f "$tmpdepfile"; then
409 sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" 409 sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
410 # That's a tab and a space in the []. 410 # That's a tab and a space in the [].
411 sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" 411 sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
412 else 412 else
413 echo "#dummy" > "$depfile" 413 echo "#dummy" > "$depfile"
414 fi 414 fi
415 rm -f "$tmpdepfile" 415 rm -f "$tmpdepfile"
416 ;; 416 ;;
417 417
418msvc7) 418msvc7)
419 if test "$libtool" = yes; then 419 if test "$libtool" = yes; then
420 showIncludes=-Wc,-showIncludes 420 showIncludes=-Wc,-showIncludes
421 else 421 else
422 showIncludes=-showIncludes 422 showIncludes=-showIncludes
423 fi 423 fi
424 "$@" $showIncludes > "$tmpdepfile" 424 "$@" $showIncludes > "$tmpdepfile"
425 stat=$? 425 stat=$?
426 grep -v '^Note: including file: ' "$tmpdepfile" 426 grep -v '^Note: including file: ' "$tmpdepfile"
427 if test "$stat" = 0; then : 427 if test "$stat" = 0; then :
428 else 428 else
429 rm -f "$tmpdepfile" 429 rm -f "$tmpdepfile"
430 exit $stat 430 exit $stat
431 fi 431 fi
432 rm -f "$depfile" 432 rm -f "$depfile"
433 echo "$object : \\" > "$depfile" 433 echo "$object : \\" > "$depfile"
434 # The first sed program below extracts the file names and escapes 434 # The first sed program below extracts the file names and escapes
435 # backslashes for cygpath. The second sed program outputs the file 435 # backslashes for cygpath. The second sed program outputs the file
436 # name when reading, but also accumulates all include files in the 436 # name when reading, but also accumulates all include files in the
437 # hold buffer in order to output them again at the end. This only 437 # hold buffer in order to output them again at the end. This only
438 # works with sed implementations that can handle large buffers. 438 # works with sed implementations that can handle large buffers.
439 sed < "$tmpdepfile" -n ' 439 sed < "$tmpdepfile" -n '
440/^Note: including file: *\(.*\)/ { 440/^Note: including file: *\(.*\)/ {
441 s//\1/ 441 s//\1/
442 s/\\/\\\\/g 442 s/\\/\\\\/g
443 p 443 p
444}' | $cygpath_u | sort -u | sed -n ' 444}' | $cygpath_u | sort -u | sed -n '
445s/ /\\ /g 445s/ /\\ /g
446s/\(.*\)/ \1 \\/p 446s/\(.*\)/ \1 \\/p
447s/.\(.*\) \\/\1:/ 447s/.\(.*\) \\/\1:/
448H 448H
449$ { 449$ {
450 s/.*/ / 450 s/.*/ /
451 G 451 G
452 p 452 p
453}' >> "$depfile" 453}' >> "$depfile"
454 rm -f "$tmpdepfile" 454 rm -f "$tmpdepfile"
455 ;; 455 ;;
456 456
457msvc7msys) 457msvc7msys)
458 # This case exists only to let depend.m4 do its work. It works by 458 # This case exists only to let depend.m4 do its work. It works by
459 # looking at the text of this script. This case will never be run, 459 # looking at the text of this script. This case will never be run,
460 # since it is checked for above. 460 # since it is checked for above.
461 exit 1 461 exit 1
462 ;; 462 ;;
463 463
464#nosideeffect) 464#nosideeffect)
465 # This comment above is used by automake to tell side-effect 465 # This comment above is used by automake to tell side-effect
466 # dependency tracking mechanisms from slower ones. 466 # dependency tracking mechanisms from slower ones.
467 467
468dashmstdout) 468dashmstdout)
469 # Important note: in order to support this mode, a compiler *must* 469 # Important note: in order to support this mode, a compiler *must*
470 # always write the preprocessed file to stdout, regardless of -o. 470 # always write the preprocessed file to stdout, regardless of -o.
471 "$@" || exit $? 471 "$@" || exit $?
472 472
473 # Remove the call to Libtool. 473 # Remove the call to Libtool.
474 if test "$libtool" = yes; then 474 if test "$libtool" = yes; then
475 while test "X$1" != 'X--mode=compile'; do 475 while test "X$1" != 'X--mode=compile'; do
476 shift 476 shift
477 done 477 done
478 shift 478 shift
479 fi 479 fi
480 480
481 # Remove `-o $object'. 481 # Remove `-o $object'.
482 IFS=" " 482 IFS=" "
483 for arg 483 for arg
484 do 484 do
485 case $arg in 485 case $arg in
486 -o) 486 -o)
487 shift 487 shift
488 ;; 488 ;;
489 $object) 489 $object)
490 shift 490 shift
491 ;; 491 ;;
492 *) 492 *)
493 set fnord "$@" "$arg" 493 set fnord "$@" "$arg"
494 shift # fnord 494 shift # fnord
495 shift # $arg 495 shift # $arg
496 ;; 496 ;;
497 esac 497 esac
498 done 498 done
499 499
500 test -z "$dashmflag" && dashmflag=-M 500 test -z "$dashmflag" && dashmflag=-M
501 # Require at least two characters before searching for `:' 501 # Require at least two characters before searching for `:'
502 # in the target name. This is to cope with DOS-style filenames: 502 # in the target name. This is to cope with DOS-style filenames:
503 # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. 503 # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
504 "$@" $dashmflag | 504 "$@" $dashmflag |
505 sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" 505 sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
506 rm -f "$depfile" 506 rm -f "$depfile"
507 cat < "$tmpdepfile" > "$depfile" 507 cat < "$tmpdepfile" > "$depfile"
508 tr ' ' ' 508 tr ' ' '
509' < "$tmpdepfile" | \ 509' < "$tmpdepfile" | \
510## Some versions of the HPUX 10.20 sed can't process this invocation 510## Some versions of the HPUX 10.20 sed can't process this invocation
511## correctly. Breaking it into two sed invocations is a workaround. 511## correctly. Breaking it into two sed invocations is a workaround.
512 sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" 512 sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
513 rm -f "$tmpdepfile" 513 rm -f "$tmpdepfile"
514 ;; 514 ;;
515 515
516dashXmstdout) 516dashXmstdout)
517 # This case only exists to satisfy depend.m4. It is never actually 517 # This case only exists to satisfy depend.m4. It is never actually
518 # run, as this mode is specially recognized in the preamble. 518 # run, as this mode is specially recognized in the preamble.
519 exit 1 519 exit 1
520 ;; 520 ;;
521 521
522makedepend) 522makedepend)
523 "$@" || exit $? 523 "$@" || exit $?
524 # Remove any Libtool call 524 # Remove any Libtool call
525 if test "$libtool" = yes; then 525 if test "$libtool" = yes; then
526 while test "X$1" != 'X--mode=compile'; do 526 while test "X$1" != 'X--mode=compile'; do
527 shift 527 shift
528 done 528 done
529 shift 529 shift
530 fi 530 fi
531 # X makedepend 531 # X makedepend
532 shift 532 shift
533 cleared=no eat=no 533 cleared=no eat=no
534 for arg 534 for arg
535 do 535 do
536 case $cleared in 536 case $cleared in
537 no) 537 no)
538 set ""; shift 538 set ""; shift
539 cleared=yes ;; 539 cleared=yes ;;
540 esac 540 esac
541 if test $eat = yes; then 541 if test $eat = yes; then
542 eat=no 542 eat=no
543 continue 543 continue
544 fi 544 fi
545 case "$arg" in 545 case "$arg" in
546 -D*|-I*) 546 -D*|-I*)
547 set fnord "$@" "$arg"; shift ;; 547 set fnord "$@" "$arg"; shift ;;
548 # Strip any option that makedepend may not understand. Remove 548 # Strip any option that makedepend may not understand. Remove
549 # the object too, otherwise makedepend will parse it as a source file. 549 # the object too, otherwise makedepend will parse it as a source file.
550 -arch) 550 -arch)
551 eat=yes ;; 551 eat=yes ;;
552 -*|$object) 552 -*|$object)
553 ;; 553 ;;
554 *) 554 *)
555 set fnord "$@" "$arg"; shift ;; 555 set fnord "$@" "$arg"; shift ;;
556 esac 556 esac
557 done 557 done
558 obj_suffix=`echo "$object" | sed 's/^.*\././'` 558 obj_suffix=`echo "$object" | sed 's/^.*\././'`
559 touch "$tmpdepfile" 559 touch "$tmpdepfile"
560 ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" 560 ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
561 rm -f "$depfile" 561 rm -f "$depfile"
562 # makedepend may prepend the VPATH from the source file name to the object. 562 # makedepend may prepend the VPATH from the source file name to the object.
563 # No need to regex-escape $object, excess matching of '.' is harmless. 563 # No need to regex-escape $object, excess matching of '.' is harmless.
564 sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile" 564 sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
565 sed '1,2d' "$tmpdepfile" | tr ' ' ' 565 sed '1,2d' "$tmpdepfile" | tr ' ' '
566' | \ 566' | \
567## Some versions of the HPUX 10.20 sed can't process this invocation 567## Some versions of the HPUX 10.20 sed can't process this invocation
568## correctly. Breaking it into two sed invocations is a workaround. 568## correctly. Breaking it into two sed invocations is a workaround.
569 sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" 569 sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
570 rm -f "$tmpdepfile" "$tmpdepfile".bak 570 rm -f "$tmpdepfile" "$tmpdepfile".bak
571 ;; 571 ;;
572 572
573cpp) 573cpp)
574 # Important note: in order to support this mode, a compiler *must* 574 # Important note: in order to support this mode, a compiler *must*
575 # always write the preprocessed file to stdout. 575 # always write the preprocessed file to stdout.
576 "$@" || exit $? 576 "$@" || exit $?
577 577
578 # Remove the call to Libtool. 578 # Remove the call to Libtool.
579 if test "$libtool" = yes; then 579 if test "$libtool" = yes; then
580 while test "X$1" != 'X--mode=compile'; do 580 while test "X$1" != 'X--mode=compile'; do
581 shift 581 shift
582 done 582 done
583 shift 583 shift
584 fi 584 fi
585 585
586 # Remove `-o $object'. 586 # Remove `-o $object'.
587 IFS=" " 587 IFS=" "
588 for arg 588 for arg
589 do 589 do
590 case $arg in 590 case $arg in
591 -o) 591 -o)
592 shift 592 shift
593 ;; 593 ;;
594 $object) 594 $object)
595 shift 595 shift
596 ;; 596 ;;
597 *) 597 *)
598 set fnord "$@" "$arg" 598 set fnord "$@" "$arg"
599 shift # fnord 599 shift # fnord
600 shift # $arg 600 shift # $arg
601 ;; 601 ;;
602 esac 602 esac
603 done 603 done
604 604
605 "$@" -E | 605 "$@" -E |
606 sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ 606 sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
607 -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | 607 -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
608 sed '$ s: \\$::' > "$tmpdepfile" 608 sed '$ s: \\$::' > "$tmpdepfile"
609 rm -f "$depfile" 609 rm -f "$depfile"
610 echo "$object : \\" > "$depfile" 610 echo "$object : \\" > "$depfile"
611 cat < "$tmpdepfile" >> "$depfile" 611 cat < "$tmpdepfile" >> "$depfile"
612 sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" 612 sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
613 rm -f "$tmpdepfile" 613 rm -f "$tmpdepfile"
614 ;; 614 ;;
615 615
616msvisualcpp) 616msvisualcpp)
617 # Important note: in order to support this mode, a compiler *must* 617 # Important note: in order to support this mode, a compiler *must*
618 # always write the preprocessed file to stdout. 618 # always write the preprocessed file to stdout.
619 "$@" || exit $? 619 "$@" || exit $?
620 620
621 # Remove the call to Libtool. 621 # Remove the call to Libtool.
622 if test "$libtool" = yes; then 622 if test "$libtool" = yes; then
623 while test "X$1" != 'X--mode=compile'; do 623 while test "X$1" != 'X--mode=compile'; do
624 shift 624 shift
625 done 625 done
626 shift 626 shift
627 fi 627 fi
628 628
629 IFS=" " 629 IFS=" "
630 for arg 630 for arg
631 do 631 do
632 case "$arg" in 632 case "$arg" in
633 -o) 633 -o)
634 shift 634 shift
635 ;; 635 ;;
636 $object) 636 $object)
637 shift 637 shift
638 ;; 638 ;;
639 "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") 639 "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
640 set fnord "$@" 640 set fnord "$@"
641 shift 641 shift
642 shift 642 shift
643 ;; 643 ;;
644 *) 644 *)
645 set fnord "$@" "$arg" 645 set fnord "$@" "$arg"
646 shift 646 shift
647 shift 647 shift
648 ;; 648 ;;
649 esac 649 esac
650 done 650 done
651 "$@" -E 2>/dev/null | 651 "$@" -E 2>/dev/null |
652 sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" 652 sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
653 rm -f "$depfile" 653 rm -f "$depfile"
654 echo "$object : \\" > "$depfile" 654 echo "$object : \\" > "$depfile"
655 sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" 655 sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
656 echo " " >> "$depfile" 656 echo " " >> "$depfile"
657 sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" 657 sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
658 rm -f "$tmpdepfile" 658 rm -f "$tmpdepfile"
659 ;; 659 ;;
660 660
661msvcmsys) 661msvcmsys)
662 # This case exists only to let depend.m4 do its work. It works by 662 # This case exists only to let depend.m4 do its work. It works by
663 # looking at the text of this script. This case will never be run, 663 # looking at the text of this script. This case will never be run,
664 # since it is checked for above. 664 # since it is checked for above.
665 exit 1 665 exit 1
666 ;; 666 ;;
667 667
668none) 668none)
669 exec "$@" 669 exec "$@"
670 ;; 670 ;;
671 671
672*) 672*)
673 echo "Unknown depmode $depmode" 1>&2 673 echo "Unknown depmode $depmode" 1>&2
674 exit 1 674 exit 1
675 ;; 675 ;;
676esac 676esac
677 677
678exit 0 678exit 0
679 679
680# Local Variables: 680# Local Variables:
681# mode: shell-script 681# mode: shell-script
682# sh-indentation: 2 682# sh-indentation: 2
683# eval: (add-hook 'write-file-hooks 'time-stamp) 683# eval: (add-hook 'write-file-hooks 'time-stamp)
684# time-stamp-start: "scriptversion=" 684# time-stamp-start: "scriptversion="
685# time-stamp-format: "%:y-%02m-%02d.%02H" 685# time-stamp-format: "%:y-%02m-%02d.%02H"
686# time-stamp-time-zone: "UTC" 686# time-stamp-time-zone: "UTC"
687# time-stamp-end: "; # UTC" 687# time-stamp-end: "; # UTC"
688# End: 688# End: