15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#! /bin/sh 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# depcomp - compile a program generating dependencies as side-effects 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)scriptversion=2009-04-28.21; # UTC 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Software Foundation, Inc. 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# This program is free software; you can redistribute it and/or modify 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# it under the terms of the GNU General Public License as published by 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# the Free Software Foundation; either version 2, or (at your option) 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# any later version. 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# This program is distributed in the hope that it will be useful, 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# but WITHOUT ANY WARRANTY; without even the implied warranty of 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# GNU General Public License for more details. 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# You should have received a copy of the GNU General Public License 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# along with this program. If not, see <http://www.gnu.org/licenses/>. 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# As a special exception to the GNU General Public License, if you 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# distribute this file as part of a program that contains a 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# configuration script generated by Autoconf, you may include it under 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# the same distribution terms that you use for the rest of that program. 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>. 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)case $1 in 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) '') 315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) echo "$0: No command. Try \`$0 --help' for more information." 1>&2 325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) exit 1; 335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) -h | --h*) 355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) cat <<\EOF 365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)Usage: depcomp [--help] [--version] PROGRAM [ARGS] 375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)Run PROGRAMS ARGS to compile a file, generating dependencies 395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)as side-effects. 405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)Environment variables: 425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) depmode Dependency tracking mode. 435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) source Source file read by `PROGRAMS ARGS'. 445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) object Object file output by `PROGRAMS ARGS'. 455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) DEPDIR directory where to store dependencies. 465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) depfile Dependency file to output. 475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile Temporary file to use when outputing dependencies. 485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) libtool Whether libtool is used (yes/no). 495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)Report bugs to <bug-automake@gnu.org>. 515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)EOF 525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) exit $? 535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) -v | --v*) 555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) echo "depcomp $scriptversion" 565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) exit $? 575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)esac 595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)if test -z "$depmode" || test -z "$source" || test -z "$object"; then 615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) echo "depcomp: Variables source, object and depmode must be set" 1>&2 625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) exit 1 635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fi 645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. 665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)depfile=${depfile-`echo "$object" | 675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} 685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} 695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)rm -f "$tmpdepfile" 715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Some modes work just like other modes, but use different flags. We 735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# parameterize here, but still list the modes in the big case below, 745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# to make depend.m4 easier to write. Note that we *cannot* use a case 755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# here, because this file can only contain one case statement. 765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)if test "$depmode" = hp; then 775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # HP compiler uses -M and no extra arg. 785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) gccflag=-M 795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) depmode=gcc 805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fi 815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)if test "$depmode" = dashXmstdout; then 835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # This is just like dashmstdout with a different argument. 845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) dashmflag=-xM 855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) depmode=dashmstdout 865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fi 875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)cygpath_u="cygpath -u -f -" 895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)if test "$depmode" = msvcmsys; then 905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # This is just like msvisualcpp but w/o cygpath translation. 915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Just convert the backslash-escaped backslashes to single forward 925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # slashes to satisfy depend.m4 935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) cygpath_u="sed s,\\\\\\\\,/,g" 945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) depmode=msvisualcpp 955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fi 965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)case "$depmode" in 985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)gcc3) 995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## gcc 3 implements dependency tracking that does exactly what 1005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## we want. Yay! Note: for some reason libtool 1.4 doesn't like 1015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## it if -MD -MP comes after the -MF stuff. Hmm. 1025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## Unfortunately, FreeBSD c89 acceptance of flags depends upon 1035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## the command line argument order; so add the flags where they 1045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## appear in depend2.am. Note that the slowdown incurred here 1055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## affects only configure: in makefiles, %FASTDEP% shortcuts this. 1065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) for arg 1075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) do 1085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) case $arg in 1095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;; 1105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) *) set fnord "$@" "$arg" ;; 1115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) esac 1125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift # fnord 1135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift # $arg 1145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) done 1155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" 1165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) stat=$? 1175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test $stat -eq 0; then : 1185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) else 1195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile" 1205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) exit $stat 1215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 1225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) mv "$tmpdepfile" "$depfile" 1235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 1245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)gcc) 1265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## There are various ways to get dependency output from gcc. Here's 1275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## why we pick this rather obscure method: 1285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## - Don't want to use -MD because we'd like the dependencies to end 1295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## up in a subdir. Having to rename by hand is ugly. 1305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## (We might end up doing this anyway to support other compilers.) 1315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like 1325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## -MM, not -M (despite what the docs say). 1335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## - Using -M directly means running the compiler twice (even worse 1345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## than renaming). 1355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test -z "$gccflag"; then 1365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) gccflag=-MD, 1375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 1385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" -Wp,"$gccflag$tmpdepfile" 1395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) stat=$? 1405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test $stat -eq 0; then : 1415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) else 1425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile" 1435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) exit $stat 1445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 1455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$depfile" 1465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) echo "$object : \\" > "$depfile" 1475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz 1485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## The second -e expression handles DOS-style file names with drive letters. 1495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed -e 's/^[^:]*: / /' \ 1505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" 1515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## This next piece of magic avoids the `deleted header file' problem. 1525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## The problem is that when a header file which appears in a .P file 1535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## is deleted, the dependency causes make to die (because there is 1545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## typically no way to rebuild the header). We avoid this by adding 1555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## dummy dependencies for each header file. Too bad gcc doesn't do 1565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## this for us directly. 1575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tr ' ' ' 1585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)' < "$tmpdepfile" | 1595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## Some versions of gcc put a space before the `:'. On the theory 1605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## that the space means something, we add a space to the output as 1615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## well. 1625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## Some versions of the HPUX 10.20 sed can't process this invocation 1635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## correctly. Breaking it into two sed invocations is a workaround. 1645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" 1655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile" 1665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 1675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)hp) 1695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # This case exists only to let depend.m4 do its work. It works by 1705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # looking at the text of this script. This case will never be run, 1715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # since it is checked for above. 1725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) exit 1 1735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 1745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)sgi) 1765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test "$libtool" = yes; then 1775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" "-Wp,-MDupdate,$tmpdepfile" 1785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) else 1795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" -MDupdate "$tmpdepfile" 1805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 1815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) stat=$? 1825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test $stat -eq 0; then : 1835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) else 1845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile" 1855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) exit $stat 1865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 1875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$depfile" 1885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files 1905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) echo "$object : \\" > "$depfile" 1915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Clip off the initial element (the dependent). Don't try to be 1935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # clever and replace this with sed code, as IRIX sed won't handle 1945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # lines with more than a fixed number of characters (4096 in 1955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; 1965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # the IRIX cc adds comments like `#:fec' to the end of the 1975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # dependency line. 1985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tr ' ' ' 1995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)' < "$tmpdepfile" \ 2005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ 2015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tr ' 2025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)' ' ' >> "$depfile" 2035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) echo >> "$depfile" 2045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # The second pass generates a dummy entry for each header file. 2065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tr ' ' ' 2075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)' < "$tmpdepfile" \ 2085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ 2095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) >> "$depfile" 2105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) else 2115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # The sourcefile does not contain any dependencies, so just 2125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # store a dummy comment line, to avoid errors with the Makefile 2135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # "include basename.Plo" scheme. 2145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) echo "#dummy" > "$depfile" 2155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 2165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile" 2175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 2185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)aix) 2205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # The C for AIX Compiler uses -M and outputs the dependencies 2215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # in a .u file. In older versions, this file always lives in the 2225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # current directory. Also, the AIX compiler puts `$object:' at the 2235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # start of each line; $object doesn't have directory information. 2245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Version 6 uses the directory in both cases. 2255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` 2265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) test "x$dir" = "x$object" && dir= 2275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` 2285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test "$libtool" = yes; then 2295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile1=$dir$base.u 2305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile2=$base.u 2315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile3=$dir.libs/$base.u 2325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" -Wc,-M 2335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) else 2345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile1=$dir$base.u 2355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile2=$dir$base.u 2365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile3=$dir$base.u 2375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" -M 2385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 2395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) stat=$? 2405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test $stat -eq 0; then : 2425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) else 2435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" 2445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) exit $stat 2455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 2465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" 2485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) do 2495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) test -f "$tmpdepfile" && break 2505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) done 2515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test -f "$tmpdepfile"; then 2525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Each line is of the form `foo.o: dependent.h'. 2535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Do two passes, one to just change these to 2545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # `$object: dependent.h' and one to simply `dependent.h:'. 2555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" 2565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # That's a tab and a space in the []. 2575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" 2585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) else 2595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # The sourcefile does not contain any dependencies, so just 2605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # store a dummy comment line, to avoid errors with the Makefile 2615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # "include basename.Plo" scheme. 2625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) echo "#dummy" > "$depfile" 2635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 2645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile" 2655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 2665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)icc) 2685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Intel's C compiler understands `-MD -MF file'. However on 2695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c 2705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # ICC 7.0 will fill foo.d with something like 2715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # foo.o: sub/foo.c 2725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # foo.o: sub/foo.h 2735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # which is wrong. We want: 2745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # sub/foo.o: sub/foo.c 2755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # sub/foo.o: sub/foo.h 2765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # sub/foo.c: 2775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # sub/foo.h: 2785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # ICC 7.1 will output 2795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # foo.o: sub/foo.c sub/foo.h 2805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # and will wrap long lines using \ : 2815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # foo.o: sub/foo.c ... \ 2825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # sub/foo.h ... \ 2835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # ... 2845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" -MD -MF "$tmpdepfile" 2865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) stat=$? 2875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test $stat -eq 0; then : 2885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) else 2895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile" 2905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) exit $stat 2915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 2925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$depfile" 2935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Each line is of the form `foo.o: dependent.h', 2945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. 2955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Do two passes, one to just change these to 2965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # `$object: dependent.h' and one to simply `dependent.h:'. 2975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" 2985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Some versions of the HPUX 10.20 sed can't process this invocation 2995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # correctly. Breaking it into two sed invocations is a workaround. 3005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | 3015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed -e 's/$/ :/' >> "$depfile" 3025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile" 3035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 3045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 3055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)hp2) 3065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # The "hp" stanza above does not work with aCC (C++) and HP's ia64 3075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # compilers, which have integrated preprocessors. The correct option 3085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # to use with these is +Maked; it writes dependencies to a file named 3095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # 'foo.d', which lands next to the object file, wherever that 3105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # happens to be. 3115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Much of this is similar to the tru64 case; see comments there. 3125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` 3135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) test "x$dir" = "x$object" && dir= 3145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` 3155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test "$libtool" = yes; then 3165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile1=$dir$base.d 3175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile2=$dir.libs/$base.d 3185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" -Wc,+Maked 3195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) else 3205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile1=$dir$base.d 3215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile2=$dir$base.d 3225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" +Maked 3235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 3245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) stat=$? 3255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test $stat -eq 0; then : 3265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) else 3275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile1" "$tmpdepfile2" 3285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) exit $stat 3295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 3305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 3315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" 3325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) do 3335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) test -f "$tmpdepfile" && break 3345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) done 3355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test -f "$tmpdepfile"; then 3365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile" 3375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Add `dependent.h:' lines. 3385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed -ne '2,${ 3395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) s/^ *// 3405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) s/ \\*$// 3415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) s/$/:/ 3425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) p 3435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) }' "$tmpdepfile" >> "$depfile" 3445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) else 3455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) echo "#dummy" > "$depfile" 3465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 3475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile" "$tmpdepfile2" 3485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 3495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 3505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)tru64) 3515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # The Tru64 compiler uses -MD to generate dependencies as a side 3525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. 3535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put 3545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # dependencies in `foo.d' instead, so we check for that too. 3555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Subdirectories are respected. 3565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` 3575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) test "x$dir" = "x$object" && dir= 3585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` 3595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 3605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test "$libtool" = yes; then 3615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # With Tru64 cc, shared objects can also be used to make a 3625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # static library. This mechanism is used in libtool 1.4 series to 3635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # handle both shared and static libraries in a single compilation. 3645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. 3655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # 3665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # With libtool 1.5 this exception was removed, and libtool now 3675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # generates 2 separate objects for the 2 libraries. These two 3685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # compilations output dependencies in $dir.libs/$base.o.d and 3695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # in $dir$base.o.d. We have to check for both files, because 3705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # one of the two compilations can be disabled. We should prefer 3715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # $dir$base.o.d over $dir.libs/$base.o.d because the latter is 3725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # automatically cleaned when .libs/ is deleted, while ignoring 3735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # the former would cause a distcleancheck panic. 3745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4 3755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile2=$dir$base.o.d # libtool 1.5 3765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5 3775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504 3785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" -Wc,-MD 3795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) else 3805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile1=$dir$base.o.d 3815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile2=$dir$base.d 3825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile3=$dir$base.d 3835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tmpdepfile4=$dir$base.d 3845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" -MD 3855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 3865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 3875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) stat=$? 3885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test $stat -eq 0; then : 3895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) else 3905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" 3915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) exit $stat 3925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 3935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 3945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" 3955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) do 3965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) test -f "$tmpdepfile" && break 3975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) done 3985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test -f "$tmpdepfile"; then 3995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" 4005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # That's a tab and a space in the []. 4015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" 4025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) else 4035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) echo "#dummy" > "$depfile" 4045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 4055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile" 4065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 4075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 4085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#nosideeffect) 4095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # This comment above is used by automake to tell side-effect 4105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # dependency tracking mechanisms from slower ones. 4115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 4125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)dashmstdout) 4135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Important note: in order to support this mode, a compiler *must* 4145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # always write the preprocessed file to stdout, regardless of -o. 4155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" || exit $? 4165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 4175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Remove the call to Libtool. 4185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test "$libtool" = yes; then 4195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) while test "X$1" != 'X--mode=compile'; do 4205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 4215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) done 4225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 4235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 4245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 4255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Remove `-o $object'. 4265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) IFS=" " 4275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) for arg 4285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) do 4295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) case $arg in 4305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) -o) 4315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 4325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 4335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) $object) 4345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 4355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 4365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) *) 4375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) set fnord "$@" "$arg" 4385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift # fnord 4395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift # $arg 4405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 4415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) esac 4425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) done 4435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 4445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) test -z "$dashmflag" && dashmflag=-M 4455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Require at least two characters before searching for `:' 4465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # in the target name. This is to cope with DOS-style filenames: 4475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. 4485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" $dashmflag | 4495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" 4505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$depfile" 4515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) cat < "$tmpdepfile" > "$depfile" 4525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tr ' ' ' 4535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)' < "$tmpdepfile" | \ 4545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## Some versions of the HPUX 10.20 sed can't process this invocation 4555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## correctly. Breaking it into two sed invocations is a workaround. 4565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" 4575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile" 4585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 4595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 4605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)dashXmstdout) 4615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # This case only exists to satisfy depend.m4. It is never actually 4625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # run, as this mode is specially recognized in the preamble. 4635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) exit 1 4645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 4655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 4665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)makedepend) 4675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" || exit $? 4685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Remove any Libtool call 4695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test "$libtool" = yes; then 4705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) while test "X$1" != 'X--mode=compile'; do 4715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 4725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) done 4735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 4745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 4755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # X makedepend 4765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 4775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) cleared=no eat=no 4785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) for arg 4795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) do 4805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) case $cleared in 4815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) no) 4825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) set ""; shift 4835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) cleared=yes ;; 4845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) esac 4855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test $eat = yes; then 4865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) eat=no 4875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) continue 4885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 4895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) case "$arg" in 4905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) -D*|-I*) 4915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) set fnord "$@" "$arg"; shift ;; 4925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Strip any option that makedepend may not understand. Remove 4935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # the object too, otherwise makedepend will parse it as a source file. 4945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) -arch) 4955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) eat=yes ;; 4965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) -*|$object) 4975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 4985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) *) 4995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) set fnord "$@" "$arg"; shift ;; 5005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) esac 5015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) done 5025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) obj_suffix=`echo "$object" | sed 's/^.*\././'` 5035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) touch "$tmpdepfile" 5045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" 5055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$depfile" 5065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) cat < "$tmpdepfile" > "$depfile" 5075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed '1,2d' "$tmpdepfile" | tr ' ' ' 5085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)' | \ 5095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## Some versions of the HPUX 10.20 sed can't process this invocation 5105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)## correctly. Breaking it into two sed invocations is a workaround. 5115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" 5125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile" "$tmpdepfile".bak 5135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 5145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 5155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)cpp) 5165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Important note: in order to support this mode, a compiler *must* 5175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # always write the preprocessed file to stdout. 5185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" || exit $? 5195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 5205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Remove the call to Libtool. 5215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test "$libtool" = yes; then 5225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) while test "X$1" != 'X--mode=compile'; do 5235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 5245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) done 5255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 5265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 5275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 5285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Remove `-o $object'. 5295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) IFS=" " 5305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) for arg 5315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) do 5325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) case $arg in 5335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) -o) 5345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 5355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 5365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) $object) 5375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 5385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 5395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) *) 5405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) set fnord "$@" "$arg" 5415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift # fnord 5425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift # $arg 5435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 5445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) esac 5455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) done 5465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 5475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" -E | 5485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ 5495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | 5505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed '$ s: \\$::' > "$tmpdepfile" 5515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$depfile" 5525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) echo "$object : \\" > "$depfile" 5535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) cat < "$tmpdepfile" >> "$depfile" 5545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" 5555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile" 5565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 5575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 5585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)msvisualcpp) 5595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Important note: in order to support this mode, a compiler *must* 5605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # always write the preprocessed file to stdout. 5615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" || exit $? 5625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 5635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # Remove the call to Libtool. 5645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if test "$libtool" = yes; then 5655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) while test "X$1" != 'X--mode=compile'; do 5665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 5675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) done 5685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 5695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) fi 5705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 5715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) IFS=" " 5725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) for arg 5735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) do 5745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) case "$arg" in 5755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) -o) 5765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 5775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 5785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) $object) 5795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 5805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 5815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") 5825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) set fnord "$@" 5835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 5845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 5855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 5865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) *) 5875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) set fnord "$@" "$arg" 5885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 5895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) shift 5905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 5915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) esac 5925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) done 5935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) "$@" -E 2>/dev/null | 5945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" 5955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$depfile" 5965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) echo "$object : \\" > "$depfile" 5975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" 5985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) echo " " >> "$depfile" 5995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" 6005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rm -f "$tmpdepfile" 6015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 6025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 6035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)msvcmsys) 6045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # This case exists only to let depend.m4 do its work. It works by 6055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # looking at the text of this script. This case will never be run, 6065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) # since it is checked for above. 6075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) exit 1 6085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 6095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 6105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)none) 6115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) exec "$@" 6125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 6135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 6145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)*) 6155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) echo "Unknown depmode $depmode" 1>&2 6165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) exit 1 6175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ;; 6185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)esac 6195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 6205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)exit 0 6215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 6225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Local Variables: 6235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# mode: shell-script 6245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# sh-indentation: 2 6255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# eval: (add-hook 'write-file-hooks 'time-stamp) 6265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# time-stamp-start: "scriptversion=" 6275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# time-stamp-format: "%:y-%02m-%02d.%02H" 6285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# time-stamp-time-zone: "UTC" 6295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# time-stamp-end: "; # UTC" 6305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# End: 631