1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/toolkit/crashreporter/google-breakpad/autotools/depcomp Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,584 @@ 1.4 +#! /bin/sh 1.5 +# depcomp - compile a program generating dependencies as side-effects 1.6 + 1.7 +scriptversion=2006-10-15.18 1.8 + 1.9 +# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006 Free Software 1.10 +# Foundation, Inc. 1.11 + 1.12 +# This program is free software; you can redistribute it and/or modify 1.13 +# it under the terms of the GNU General Public License as published by 1.14 +# the Free Software Foundation; either version 2, or (at your option) 1.15 +# any later version. 1.16 + 1.17 +# This program is distributed in the hope that it will be useful, 1.18 +# but WITHOUT ANY WARRANTY; without even the implied warranty of 1.19 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1.20 +# GNU General Public License for more details. 1.21 + 1.22 +# You should have received a copy of the GNU General Public License 1.23 +# along with this program; if not, write to the Free Software 1.24 +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 1.25 +# 02110-1301, USA. 1.26 + 1.27 +# As a special exception to the GNU General Public License, if you 1.28 +# distribute this file as part of a program that contains a 1.29 +# configuration script generated by Autoconf, you may include it under 1.30 +# the same distribution terms that you use for the rest of that program. 1.31 + 1.32 +# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>. 1.33 + 1.34 +case $1 in 1.35 + '') 1.36 + echo "$0: No command. Try \`$0 --help' for more information." 1>&2 1.37 + exit 1; 1.38 + ;; 1.39 + -h | --h*) 1.40 + cat <<\EOF 1.41 +Usage: depcomp [--help] [--version] PROGRAM [ARGS] 1.42 + 1.43 +Run PROGRAMS ARGS to compile a file, generating dependencies 1.44 +as side-effects. 1.45 + 1.46 +Environment variables: 1.47 + depmode Dependency tracking mode. 1.48 + source Source file read by `PROGRAMS ARGS'. 1.49 + object Object file output by `PROGRAMS ARGS'. 1.50 + DEPDIR directory where to store dependencies. 1.51 + depfile Dependency file to output. 1.52 + tmpdepfile Temporary file to use when outputing dependencies. 1.53 + libtool Whether libtool is used (yes/no). 1.54 + 1.55 +Report bugs to <bug-automake@gnu.org>. 1.56 +EOF 1.57 + exit $? 1.58 + ;; 1.59 + -v | --v*) 1.60 + echo "depcomp $scriptversion" 1.61 + exit $? 1.62 + ;; 1.63 +esac 1.64 + 1.65 +if test -z "$depmode" || test -z "$source" || test -z "$object"; then 1.66 + echo "depcomp: Variables source, object and depmode must be set" 1>&2 1.67 + exit 1 1.68 +fi 1.69 + 1.70 +# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. 1.71 +depfile=${depfile-`echo "$object" | 1.72 + sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} 1.73 +tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} 1.74 + 1.75 +rm -f "$tmpdepfile" 1.76 + 1.77 +# Some modes work just like other modes, but use different flags. We 1.78 +# parameterize here, but still list the modes in the big case below, 1.79 +# to make depend.m4 easier to write. Note that we *cannot* use a case 1.80 +# here, because this file can only contain one case statement. 1.81 +if test "$depmode" = hp; then 1.82 + # HP compiler uses -M and no extra arg. 1.83 + gccflag=-M 1.84 + depmode=gcc 1.85 +fi 1.86 + 1.87 +if test "$depmode" = dashXmstdout; then 1.88 + # This is just like dashmstdout with a different argument. 1.89 + dashmflag=-xM 1.90 + depmode=dashmstdout 1.91 +fi 1.92 + 1.93 +case "$depmode" in 1.94 +gcc3) 1.95 +## gcc 3 implements dependency tracking that does exactly what 1.96 +## we want. Yay! Note: for some reason libtool 1.4 doesn't like 1.97 +## it if -MD -MP comes after the -MF stuff. Hmm. 1.98 +## Unfortunately, FreeBSD c89 acceptance of flags depends upon 1.99 +## the command line argument order; so add the flags where they 1.100 +## appear in depend2.am. Note that the slowdown incurred here 1.101 +## affects only configure: in makefiles, %FASTDEP% shortcuts this. 1.102 + for arg 1.103 + do 1.104 + case $arg in 1.105 + -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;; 1.106 + *) set fnord "$@" "$arg" ;; 1.107 + esac 1.108 + shift # fnord 1.109 + shift # $arg 1.110 + done 1.111 + "$@" 1.112 + stat=$? 1.113 + if test $stat -eq 0; then : 1.114 + else 1.115 + rm -f "$tmpdepfile" 1.116 + exit $stat 1.117 + fi 1.118 + mv "$tmpdepfile" "$depfile" 1.119 + ;; 1.120 + 1.121 +gcc) 1.122 +## There are various ways to get dependency output from gcc. Here's 1.123 +## why we pick this rather obscure method: 1.124 +## - Don't want to use -MD because we'd like the dependencies to end 1.125 +## up in a subdir. Having to rename by hand is ugly. 1.126 +## (We might end up doing this anyway to support other compilers.) 1.127 +## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like 1.128 +## -MM, not -M (despite what the docs say). 1.129 +## - Using -M directly means running the compiler twice (even worse 1.130 +## than renaming). 1.131 + if test -z "$gccflag"; then 1.132 + gccflag=-MD, 1.133 + fi 1.134 + "$@" -Wp,"$gccflag$tmpdepfile" 1.135 + stat=$? 1.136 + if test $stat -eq 0; then : 1.137 + else 1.138 + rm -f "$tmpdepfile" 1.139 + exit $stat 1.140 + fi 1.141 + rm -f "$depfile" 1.142 + echo "$object : \\" > "$depfile" 1.143 + alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz 1.144 +## The second -e expression handles DOS-style file names with drive letters. 1.145 + sed -e 's/^[^:]*: / /' \ 1.146 + -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" 1.147 +## This next piece of magic avoids the `deleted header file' problem. 1.148 +## The problem is that when a header file which appears in a .P file 1.149 +## is deleted, the dependency causes make to die (because there is 1.150 +## typically no way to rebuild the header). We avoid this by adding 1.151 +## dummy dependencies for each header file. Too bad gcc doesn't do 1.152 +## this for us directly. 1.153 + tr ' ' ' 1.154 +' < "$tmpdepfile" | 1.155 +## Some versions of gcc put a space before the `:'. On the theory 1.156 +## that the space means something, we add a space to the output as 1.157 +## well. 1.158 +## Some versions of the HPUX 10.20 sed can't process this invocation 1.159 +## correctly. Breaking it into two sed invocations is a workaround. 1.160 + sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" 1.161 + rm -f "$tmpdepfile" 1.162 + ;; 1.163 + 1.164 +hp) 1.165 + # This case exists only to let depend.m4 do its work. It works by 1.166 + # looking at the text of this script. This case will never be run, 1.167 + # since it is checked for above. 1.168 + exit 1 1.169 + ;; 1.170 + 1.171 +sgi) 1.172 + if test "$libtool" = yes; then 1.173 + "$@" "-Wp,-MDupdate,$tmpdepfile" 1.174 + else 1.175 + "$@" -MDupdate "$tmpdepfile" 1.176 + fi 1.177 + stat=$? 1.178 + if test $stat -eq 0; then : 1.179 + else 1.180 + rm -f "$tmpdepfile" 1.181 + exit $stat 1.182 + fi 1.183 + rm -f "$depfile" 1.184 + 1.185 + if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files 1.186 + echo "$object : \\" > "$depfile" 1.187 + 1.188 + # Clip off the initial element (the dependent). Don't try to be 1.189 + # clever and replace this with sed code, as IRIX sed won't handle 1.190 + # lines with more than a fixed number of characters (4096 in 1.191 + # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; 1.192 + # the IRIX cc adds comments like `#:fec' to the end of the 1.193 + # dependency line. 1.194 + tr ' ' ' 1.195 +' < "$tmpdepfile" \ 1.196 + | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ 1.197 + tr ' 1.198 +' ' ' >> $depfile 1.199 + echo >> $depfile 1.200 + 1.201 + # The second pass generates a dummy entry for each header file. 1.202 + tr ' ' ' 1.203 +' < "$tmpdepfile" \ 1.204 + | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ 1.205 + >> $depfile 1.206 + else 1.207 + # The sourcefile does not contain any dependencies, so just 1.208 + # store a dummy comment line, to avoid errors with the Makefile 1.209 + # "include basename.Plo" scheme. 1.210 + echo "#dummy" > "$depfile" 1.211 + fi 1.212 + rm -f "$tmpdepfile" 1.213 + ;; 1.214 + 1.215 +aix) 1.216 + # The C for AIX Compiler uses -M and outputs the dependencies 1.217 + # in a .u file. In older versions, this file always lives in the 1.218 + # current directory. Also, the AIX compiler puts `$object:' at the 1.219 + # start of each line; $object doesn't have directory information. 1.220 + # Version 6 uses the directory in both cases. 1.221 + stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'` 1.222 + tmpdepfile="$stripped.u" 1.223 + if test "$libtool" = yes; then 1.224 + "$@" -Wc,-M 1.225 + else 1.226 + "$@" -M 1.227 + fi 1.228 + stat=$? 1.229 + 1.230 + if test -f "$tmpdepfile"; then : 1.231 + else 1.232 + stripped=`echo "$stripped" | sed 's,^.*/,,'` 1.233 + tmpdepfile="$stripped.u" 1.234 + fi 1.235 + 1.236 + if test $stat -eq 0; then : 1.237 + else 1.238 + rm -f "$tmpdepfile" 1.239 + exit $stat 1.240 + fi 1.241 + 1.242 + if test -f "$tmpdepfile"; then 1.243 + outname="$stripped.o" 1.244 + # Each line is of the form `foo.o: dependent.h'. 1.245 + # Do two passes, one to just change these to 1.246 + # `$object: dependent.h' and one to simply `dependent.h:'. 1.247 + sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile" 1.248 + sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile" 1.249 + else 1.250 + # The sourcefile does not contain any dependencies, so just 1.251 + # store a dummy comment line, to avoid errors with the Makefile 1.252 + # "include basename.Plo" scheme. 1.253 + echo "#dummy" > "$depfile" 1.254 + fi 1.255 + rm -f "$tmpdepfile" 1.256 + ;; 1.257 + 1.258 +icc) 1.259 + # Intel's C compiler understands `-MD -MF file'. However on 1.260 + # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c 1.261 + # ICC 7.0 will fill foo.d with something like 1.262 + # foo.o: sub/foo.c 1.263 + # foo.o: sub/foo.h 1.264 + # which is wrong. We want: 1.265 + # sub/foo.o: sub/foo.c 1.266 + # sub/foo.o: sub/foo.h 1.267 + # sub/foo.c: 1.268 + # sub/foo.h: 1.269 + # ICC 7.1 will output 1.270 + # foo.o: sub/foo.c sub/foo.h 1.271 + # and will wrap long lines using \ : 1.272 + # foo.o: sub/foo.c ... \ 1.273 + # sub/foo.h ... \ 1.274 + # ... 1.275 + 1.276 + "$@" -MD -MF "$tmpdepfile" 1.277 + stat=$? 1.278 + if test $stat -eq 0; then : 1.279 + else 1.280 + rm -f "$tmpdepfile" 1.281 + exit $stat 1.282 + fi 1.283 + rm -f "$depfile" 1.284 + # Each line is of the form `foo.o: dependent.h', 1.285 + # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. 1.286 + # Do two passes, one to just change these to 1.287 + # `$object: dependent.h' and one to simply `dependent.h:'. 1.288 + sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" 1.289 + # Some versions of the HPUX 10.20 sed can't process this invocation 1.290 + # correctly. Breaking it into two sed invocations is a workaround. 1.291 + sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | 1.292 + sed -e 's/$/ :/' >> "$depfile" 1.293 + rm -f "$tmpdepfile" 1.294 + ;; 1.295 + 1.296 +hp2) 1.297 + # The "hp" stanza above does not work with aCC (C++) and HP's ia64 1.298 + # compilers, which have integrated preprocessors. The correct option 1.299 + # to use with these is +Maked; it writes dependencies to a file named 1.300 + # 'foo.d', which lands next to the object file, wherever that 1.301 + # happens to be. 1.302 + # Much of this is similar to the tru64 case; see comments there. 1.303 + dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` 1.304 + test "x$dir" = "x$object" && dir= 1.305 + base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` 1.306 + if test "$libtool" = yes; then 1.307 + tmpdepfile1=$dir$base.d 1.308 + tmpdepfile2=$dir.libs/$base.d 1.309 + "$@" -Wc,+Maked 1.310 + else 1.311 + tmpdepfile1=$dir$base.d 1.312 + tmpdepfile2=$dir$base.d 1.313 + "$@" +Maked 1.314 + fi 1.315 + stat=$? 1.316 + if test $stat -eq 0; then : 1.317 + else 1.318 + rm -f "$tmpdepfile1" "$tmpdepfile2" 1.319 + exit $stat 1.320 + fi 1.321 + 1.322 + for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" 1.323 + do 1.324 + test -f "$tmpdepfile" && break 1.325 + done 1.326 + if test -f "$tmpdepfile"; then 1.327 + sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile" 1.328 + # Add `dependent.h:' lines. 1.329 + sed -ne '2,${; s/^ *//; s/ \\*$//; s/$/:/; p;}' "$tmpdepfile" >> "$depfile" 1.330 + else 1.331 + echo "#dummy" > "$depfile" 1.332 + fi 1.333 + rm -f "$tmpdepfile" "$tmpdepfile2" 1.334 + ;; 1.335 + 1.336 +tru64) 1.337 + # The Tru64 compiler uses -MD to generate dependencies as a side 1.338 + # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. 1.339 + # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put 1.340 + # dependencies in `foo.d' instead, so we check for that too. 1.341 + # Subdirectories are respected. 1.342 + dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` 1.343 + test "x$dir" = "x$object" && dir= 1.344 + base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` 1.345 + 1.346 + if test "$libtool" = yes; then 1.347 + # With Tru64 cc, shared objects can also be used to make a 1.348 + # static library. This mechanism is used in libtool 1.4 series to 1.349 + # handle both shared and static libraries in a single compilation. 1.350 + # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. 1.351 + # 1.352 + # With libtool 1.5 this exception was removed, and libtool now 1.353 + # generates 2 separate objects for the 2 libraries. These two 1.354 + # compilations output dependencies in $dir.libs/$base.o.d and 1.355 + # in $dir$base.o.d. We have to check for both files, because 1.356 + # one of the two compilations can be disabled. We should prefer 1.357 + # $dir$base.o.d over $dir.libs/$base.o.d because the latter is 1.358 + # automatically cleaned when .libs/ is deleted, while ignoring 1.359 + # the former would cause a distcleancheck panic. 1.360 + tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4 1.361 + tmpdepfile2=$dir$base.o.d # libtool 1.5 1.362 + tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5 1.363 + tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504 1.364 + "$@" -Wc,-MD 1.365 + else 1.366 + tmpdepfile1=$dir$base.o.d 1.367 + tmpdepfile2=$dir$base.d 1.368 + tmpdepfile3=$dir$base.d 1.369 + tmpdepfile4=$dir$base.d 1.370 + "$@" -MD 1.371 + fi 1.372 + 1.373 + stat=$? 1.374 + if test $stat -eq 0; then : 1.375 + else 1.376 + rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" 1.377 + exit $stat 1.378 + fi 1.379 + 1.380 + for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" 1.381 + do 1.382 + test -f "$tmpdepfile" && break 1.383 + done 1.384 + if test -f "$tmpdepfile"; then 1.385 + sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" 1.386 + # That's a tab and a space in the []. 1.387 + sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" 1.388 + else 1.389 + echo "#dummy" > "$depfile" 1.390 + fi 1.391 + rm -f "$tmpdepfile" 1.392 + ;; 1.393 + 1.394 +#nosideeffect) 1.395 + # This comment above is used by automake to tell side-effect 1.396 + # dependency tracking mechanisms from slower ones. 1.397 + 1.398 +dashmstdout) 1.399 + # Important note: in order to support this mode, a compiler *must* 1.400 + # always write the preprocessed file to stdout, regardless of -o. 1.401 + "$@" || exit $? 1.402 + 1.403 + # Remove the call to Libtool. 1.404 + if test "$libtool" = yes; then 1.405 + while test $1 != '--mode=compile'; do 1.406 + shift 1.407 + done 1.408 + shift 1.409 + fi 1.410 + 1.411 + # Remove `-o $object'. 1.412 + IFS=" " 1.413 + for arg 1.414 + do 1.415 + case $arg in 1.416 + -o) 1.417 + shift 1.418 + ;; 1.419 + $object) 1.420 + shift 1.421 + ;; 1.422 + *) 1.423 + set fnord "$@" "$arg" 1.424 + shift # fnord 1.425 + shift # $arg 1.426 + ;; 1.427 + esac 1.428 + done 1.429 + 1.430 + test -z "$dashmflag" && dashmflag=-M 1.431 + # Require at least two characters before searching for `:' 1.432 + # in the target name. This is to cope with DOS-style filenames: 1.433 + # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. 1.434 + "$@" $dashmflag | 1.435 + sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" 1.436 + rm -f "$depfile" 1.437 + cat < "$tmpdepfile" > "$depfile" 1.438 + tr ' ' ' 1.439 +' < "$tmpdepfile" | \ 1.440 +## Some versions of the HPUX 10.20 sed can't process this invocation 1.441 +## correctly. Breaking it into two sed invocations is a workaround. 1.442 + sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" 1.443 + rm -f "$tmpdepfile" 1.444 + ;; 1.445 + 1.446 +dashXmstdout) 1.447 + # This case only exists to satisfy depend.m4. It is never actually 1.448 + # run, as this mode is specially recognized in the preamble. 1.449 + exit 1 1.450 + ;; 1.451 + 1.452 +makedepend) 1.453 + "$@" || exit $? 1.454 + # Remove any Libtool call 1.455 + if test "$libtool" = yes; then 1.456 + while test $1 != '--mode=compile'; do 1.457 + shift 1.458 + done 1.459 + shift 1.460 + fi 1.461 + # X makedepend 1.462 + shift 1.463 + cleared=no 1.464 + for arg in "$@"; do 1.465 + case $cleared in 1.466 + no) 1.467 + set ""; shift 1.468 + cleared=yes ;; 1.469 + esac 1.470 + case "$arg" in 1.471 + -D*|-I*) 1.472 + set fnord "$@" "$arg"; shift ;; 1.473 + # Strip any option that makedepend may not understand. Remove 1.474 + # the object too, otherwise makedepend will parse it as a source file. 1.475 + -*|$object) 1.476 + ;; 1.477 + *) 1.478 + set fnord "$@" "$arg"; shift ;; 1.479 + esac 1.480 + done 1.481 + obj_suffix="`echo $object | sed 's/^.*\././'`" 1.482 + touch "$tmpdepfile" 1.483 + ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" 1.484 + rm -f "$depfile" 1.485 + cat < "$tmpdepfile" > "$depfile" 1.486 + sed '1,2d' "$tmpdepfile" | tr ' ' ' 1.487 +' | \ 1.488 +## Some versions of the HPUX 10.20 sed can't process this invocation 1.489 +## correctly. Breaking it into two sed invocations is a workaround. 1.490 + sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" 1.491 + rm -f "$tmpdepfile" "$tmpdepfile".bak 1.492 + ;; 1.493 + 1.494 +cpp) 1.495 + # Important note: in order to support this mode, a compiler *must* 1.496 + # always write the preprocessed file to stdout. 1.497 + "$@" || exit $? 1.498 + 1.499 + # Remove the call to Libtool. 1.500 + if test "$libtool" = yes; then 1.501 + while test $1 != '--mode=compile'; do 1.502 + shift 1.503 + done 1.504 + shift 1.505 + fi 1.506 + 1.507 + # Remove `-o $object'. 1.508 + IFS=" " 1.509 + for arg 1.510 + do 1.511 + case $arg in 1.512 + -o) 1.513 + shift 1.514 + ;; 1.515 + $object) 1.516 + shift 1.517 + ;; 1.518 + *) 1.519 + set fnord "$@" "$arg" 1.520 + shift # fnord 1.521 + shift # $arg 1.522 + ;; 1.523 + esac 1.524 + done 1.525 + 1.526 + "$@" -E | 1.527 + sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ 1.528 + -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | 1.529 + sed '$ s: \\$::' > "$tmpdepfile" 1.530 + rm -f "$depfile" 1.531 + echo "$object : \\" > "$depfile" 1.532 + cat < "$tmpdepfile" >> "$depfile" 1.533 + sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" 1.534 + rm -f "$tmpdepfile" 1.535 + ;; 1.536 + 1.537 +msvisualcpp) 1.538 + # Important note: in order to support this mode, a compiler *must* 1.539 + # always write the preprocessed file to stdout, regardless of -o, 1.540 + # because we must use -o when running libtool. 1.541 + "$@" || exit $? 1.542 + IFS=" " 1.543 + for arg 1.544 + do 1.545 + case "$arg" in 1.546 + "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") 1.547 + set fnord "$@" 1.548 + shift 1.549 + shift 1.550 + ;; 1.551 + *) 1.552 + set fnord "$@" "$arg" 1.553 + shift 1.554 + shift 1.555 + ;; 1.556 + esac 1.557 + done 1.558 + "$@" -E | 1.559 + sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" 1.560 + rm -f "$depfile" 1.561 + echo "$object : \\" > "$depfile" 1.562 + . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" 1.563 + echo " " >> "$depfile" 1.564 + . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile" 1.565 + rm -f "$tmpdepfile" 1.566 + ;; 1.567 + 1.568 +none) 1.569 + exec "$@" 1.570 + ;; 1.571 + 1.572 +*) 1.573 + echo "Unknown depmode $depmode" 1>&2 1.574 + exit 1 1.575 + ;; 1.576 +esac 1.577 + 1.578 +exit 0 1.579 + 1.580 +# Local Variables: 1.581 +# mode: shell-script 1.582 +# sh-indentation: 2 1.583 +# eval: (add-hook 'write-file-hooks 'time-stamp) 1.584 +# time-stamp-start: "scriptversion=" 1.585 +# time-stamp-format: "%:y-%02m-%02d.%02H" 1.586 +# time-stamp-end: "$" 1.587 +# End: