libusb 0.4.0 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.travis.yml +2 -2
- data/Gemfile +0 -8
- data/History.md +5 -0
- data/README.md +6 -6
- data/Rakefile +9 -9
- data/ext/extconf.rb +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/AUTHORS +10 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/COPYING +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/ChangeLog +17 -9
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/INSTALL +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/Makefile.am +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/Makefile.in +153 -178
- data/ext/libusb-1.0.18/NEWS +2 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/PORTING +13 -13
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/README +9 -11
- data/ext/libusb-1.0.18/TODO +2 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/Xcode/common.xcconfig +3 -3
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/Xcode/config.h +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/Xcode/debug.xcconfig +2 -2
- data/ext/{libusbx-1.0.17/Xcode/libusbx.xcconfig → libusb-1.0.18/Xcode/libusb.xcconfig} +2 -2
- data/ext/libusb-1.0.18/Xcode/libusb.xcodeproj/project.pbxproj +1 -0
- data/ext/{libusbx-1.0.17/Xcode/libusbx_debug.xcconfig → libusb-1.0.18/Xcode/libusb_debug.xcconfig} +3 -3
- data/ext/{libusbx-1.0.17/Xcode/libusbx_release.xcconfig → libusb-1.0.18/Xcode/libusb_release.xcconfig} +3 -3
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/Xcode/release.xcconfig +2 -2
- data/ext/{libusbx-1.0.17/m4/libtool.m4 → libusb-1.0.18/aclocal.m4} +1731 -27
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/android/README +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/android/config.h +1 -10
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/android/jni/Android.mk +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/android/jni/Application.mk +6 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/android/jni/examples.mk +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/android/jni/libusb.mk +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/android/jni/tests.mk +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/compile +3 -7
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/config.guess +19 -24
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/config.h.in +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/config.sub +30 -47
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/configure +118 -172
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/configure.ac +24 -2
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/depcomp +186 -268
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/doc/Makefile.am +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/doc/Makefile.in +36 -73
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/doc/doxygen.cfg.in +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/examples/Makefile.am +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/examples/Makefile.in +68 -132
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/examples/dpfp.c +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/examples/dpfp_threaded.c +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/examples/ezusb.c +57 -26
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/examples/ezusb.h +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/examples/fxload.c +3 -3
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/examples/getopt/getopt.c +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/examples/getopt/getopt.h +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/examples/getopt/getopt1.c +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/examples/hotplugtest.c +9 -2
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/examples/listdevs.c +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/examples/sam3u_benchmark.c +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/examples/xusb.c +20 -4
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/install-sh +7 -7
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb-1.0.pc.in +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/Makefile.am +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/Makefile.in +94 -134
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/core.c +95 -74
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/descriptor.c +2 -2
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/hotplug.c +3 -3
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/hotplug.h +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/io.c +127 -116
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/libusb-1.0.def +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/libusb-1.0.rc +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/libusb.h +42 -39
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/libusbi.h +20 -11
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/darwin_usb.c +20 -16
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/darwin_usb.h +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/linux_netlink.c +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/linux_udev.c +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/linux_usbfs.c +15 -12
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/linux_usbfs.h +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/netbsd_usb.c +2 -4
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/openbsd_usb.c +5 -2
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/poll_posix.c +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/poll_posix.h +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/poll_windows.c +2 -2
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/poll_windows.h +0 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/threads_posix.c +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/threads_posix.h +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/threads_windows.c +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/threads_windows.h +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/wince_usb.c +1 -2
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/wince_usb.h +2 -2
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/windows_common.h +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/windows_usb.c +53 -33
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/os/windows_usb.h +6 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/strerror.c +2 -2
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/sync.c +6 -6
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/libusb/version.h +1 -1
- data/ext/libusb-1.0.18/libusb/version_nano.h +1 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/ltmain.sh +3 -3
- data/ext/libusb-1.0.18/missing +331 -0
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/tests/Makefile.am +1 -1
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/tests/Makefile.in +69 -127
- data/ext/{libusbx-1.0.17/tests/libusbx_testlib.h → libusb-1.0.18/tests/libusb_testlib.h} +15 -15
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/tests/stress.c +16 -16
- data/ext/{libusbx-1.0.17 → libusb-1.0.18}/tests/testlib.c +21 -20
- data/lib/libusb/version_gem.rb +1 -1
- data/libusb.gemspec +1 -6
- metadata +117 -135
- checksums.yaml +0 -7
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/ext/libusbx-1.0.17/NEWS +0 -2
- data/ext/libusbx-1.0.17/TODO +0 -2
- data/ext/libusbx-1.0.17/Xcode/libusbx.xcodeproj/project.pbxproj +0 -864
- data/ext/libusbx-1.0.17/aclocal.m4 +0 -1112
- data/ext/libusbx-1.0.17/libusb/version_nano.h +0 -1
- data/ext/libusbx-1.0.17/m4/ltoptions.m4 +0 -384
- data/ext/libusbx-1.0.17/m4/ltsugar.m4 +0 -123
- data/ext/libusbx-1.0.17/m4/ltversion.m4 +0 -23
- data/ext/libusbx-1.0.17/m4/lt~obsolete.m4 +0 -98
- data/ext/libusbx-1.0.17/missing +0 -215
- metadata.gz.sig +0 -0
|
@@ -15,7 +15,7 @@ LU_DEFINE_VERSION_ATOM([LIBUSB_MINOR])
|
|
|
15
15
|
LU_DEFINE_VERSION_ATOM([LIBUSB_MICRO])
|
|
16
16
|
LU_DEFINE_VERSION_RC_ATOM([LIBUSB_RC])
|
|
17
17
|
|
|
18
|
-
AC_INIT([
|
|
18
|
+
AC_INIT([libusb],[LIBUSB_MAJOR[.]LIBUSB_MINOR[.]LIBUSB_MICRO[]LIBUSB_RC],[libusb-devel@lists.sourceforge.net],[libusb],[http://libusb.info])
|
|
19
19
|
|
|
20
20
|
# Library versioning
|
|
21
21
|
# These numbers should be tweaked on every release. Read carefully:
|
|
@@ -46,8 +46,18 @@ LTLDFLAGS="${LTLDFLAGS} -no-undefined"
|
|
|
46
46
|
|
|
47
47
|
AC_MSG_CHECKING([operating system])
|
|
48
48
|
|
|
49
|
+
dnl on linux-android platform, some functions are in different places
|
|
49
50
|
case $host in
|
|
50
|
-
*-linux*)
|
|
51
|
+
*-linux-android*)
|
|
52
|
+
AC_MSG_RESULT([This is a Linux-Android system])
|
|
53
|
+
is_backend_android="yes"
|
|
54
|
+
;;
|
|
55
|
+
*)
|
|
56
|
+
is_backend_android="no"
|
|
57
|
+
esac
|
|
58
|
+
|
|
59
|
+
case $host in
|
|
60
|
+
*-linux* | *-uclinux*)
|
|
51
61
|
AC_MSG_RESULT([Linux])
|
|
52
62
|
backend="linux"
|
|
53
63
|
threads="posix"
|
|
@@ -108,8 +118,20 @@ linux)
|
|
|
108
118
|
])
|
|
109
119
|
fi
|
|
110
120
|
AC_SUBST(USE_UDEV)
|
|
121
|
+
|
|
122
|
+
case $is_backend_android in
|
|
123
|
+
yes)
|
|
124
|
+
dnl some pthread functions is in libc
|
|
125
|
+
THREAD_CFLAGS="-c"
|
|
126
|
+
LIBS="${LIBS} -c"
|
|
127
|
+
dnl there are gettimeofday function but configure doesn't seem to be able to find it.
|
|
128
|
+
AC_DEFINE([HAVE_GETTIMEOFDAY], [1], [Define if you have gettimeofday])
|
|
129
|
+
;;
|
|
130
|
+
*)
|
|
111
131
|
THREAD_CFLAGS="-pthread"
|
|
112
132
|
LIBS="${LIBS} -pthread"
|
|
133
|
+
esac
|
|
134
|
+
|
|
113
135
|
AC_CHECK_HEADERS([poll.h])
|
|
114
136
|
AC_DEFINE([POLL_NFDS_TYPE],[nfds_t],[type of second poll() argument])
|
|
115
137
|
;;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
#! /bin/sh
|
|
2
2
|
# depcomp - compile a program generating dependencies as side-effects
|
|
3
3
|
|
|
4
|
-
scriptversion=2012-
|
|
4
|
+
scriptversion=2012-03-27.16; # UTC
|
|
5
5
|
|
|
6
|
-
# Copyright (C) 1999
|
|
6
|
+
# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010,
|
|
7
|
+
# 2011, 2012 Free Software Foundation, Inc.
|
|
7
8
|
|
|
8
9
|
# This program is free software; you can redistribute it and/or modify
|
|
9
10
|
# it under the terms of the GNU General Public License as published by
|
|
@@ -27,9 +28,9 @@ scriptversion=2012-10-18.11; # UTC
|
|
|
27
28
|
|
|
28
29
|
case $1 in
|
|
29
30
|
'')
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
31
|
+
echo "$0: No command. Try '$0 --help' for more information." 1>&2
|
|
32
|
+
exit 1;
|
|
33
|
+
;;
|
|
33
34
|
-h | --h*)
|
|
34
35
|
cat <<\EOF
|
|
35
36
|
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
|
|
@@ -56,65 +57,11 @@ EOF
|
|
|
56
57
|
;;
|
|
57
58
|
esac
|
|
58
59
|
|
|
59
|
-
# Get the directory component of the given path, and save it in the
|
|
60
|
-
# global variables '$dir'. Note that this directory component will
|
|
61
|
-
# be either empty or ending with a '/' character. This is deliberate.
|
|
62
|
-
set_dir_from ()
|
|
63
|
-
{
|
|
64
|
-
case $1 in
|
|
65
|
-
*/*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
|
|
66
|
-
*) dir=;;
|
|
67
|
-
esac
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
# Get the suffix-stripped basename of the given path, and save it the
|
|
71
|
-
# global variable '$base'.
|
|
72
|
-
set_base_from ()
|
|
73
|
-
{
|
|
74
|
-
base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
# If no dependency file was actually created by the compiler invocation,
|
|
78
|
-
# we still have to create a dummy depfile, to avoid errors with the
|
|
79
|
-
# Makefile "include basename.Plo" scheme.
|
|
80
|
-
make_dummy_depfile ()
|
|
81
|
-
{
|
|
82
|
-
echo "#dummy" > "$depfile"
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
# Factor out some common post-processing of the generated depfile.
|
|
86
|
-
# Requires the auxiliary global variable '$tmpdepfile' to be set.
|
|
87
|
-
aix_post_process_depfile ()
|
|
88
|
-
{
|
|
89
|
-
# If the compiler actually managed to produce a dependency file,
|
|
90
|
-
# post-process it.
|
|
91
|
-
if test -f "$tmpdepfile"; then
|
|
92
|
-
# Each line is of the form 'foo.o: dependency.h'.
|
|
93
|
-
# Do two passes, one to just change these to
|
|
94
|
-
# $object: dependency.h
|
|
95
|
-
# and one to simply output
|
|
96
|
-
# dependency.h:
|
|
97
|
-
# which is needed to avoid the deleted-header problem.
|
|
98
|
-
{ sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
|
|
99
|
-
sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
|
|
100
|
-
} > "$depfile"
|
|
101
|
-
rm -f "$tmpdepfile"
|
|
102
|
-
else
|
|
103
|
-
make_dummy_depfile
|
|
104
|
-
fi
|
|
105
|
-
}
|
|
106
|
-
|
|
107
60
|
# A tabulation character.
|
|
108
61
|
tab=' '
|
|
109
62
|
# A newline character.
|
|
110
63
|
nl='
|
|
111
64
|
'
|
|
112
|
-
# Character ranges might be problematic outside the C locale.
|
|
113
|
-
# These definitions help.
|
|
114
|
-
upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
|
|
115
|
-
lower=abcdefghijklmnopqrstuvwxyz
|
|
116
|
-
digits=0123456789
|
|
117
|
-
alpha=${upper}${lower}
|
|
118
65
|
|
|
119
66
|
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
|
|
120
67
|
echo "depcomp: Variables source, object and depmode must be set" 1>&2
|
|
@@ -128,9 +75,6 @@ tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
|
|
|
128
75
|
|
|
129
76
|
rm -f "$tmpdepfile"
|
|
130
77
|
|
|
131
|
-
# Avoid interferences from the environment.
|
|
132
|
-
gccflag= dashmflag=
|
|
133
|
-
|
|
134
78
|
# Some modes work just like other modes, but use different flags. We
|
|
135
79
|
# parameterize here, but still list the modes in the big case below,
|
|
136
80
|
# to make depend.m4 easier to write. Note that we *cannot* use a case
|
|
@@ -142,32 +86,32 @@ if test "$depmode" = hp; then
|
|
|
142
86
|
fi
|
|
143
87
|
|
|
144
88
|
if test "$depmode" = dashXmstdout; then
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
89
|
+
# This is just like dashmstdout with a different argument.
|
|
90
|
+
dashmflag=-xM
|
|
91
|
+
depmode=dashmstdout
|
|
148
92
|
fi
|
|
149
93
|
|
|
150
94
|
cygpath_u="cygpath -u -f -"
|
|
151
95
|
if test "$depmode" = msvcmsys; then
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
96
|
+
# This is just like msvisualcpp but w/o cygpath translation.
|
|
97
|
+
# Just convert the backslash-escaped backslashes to single forward
|
|
98
|
+
# slashes to satisfy depend.m4
|
|
99
|
+
cygpath_u='sed s,\\\\,/,g'
|
|
100
|
+
depmode=msvisualcpp
|
|
157
101
|
fi
|
|
158
102
|
|
|
159
103
|
if test "$depmode" = msvc7msys; then
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
104
|
+
# This is just like msvc7 but w/o cygpath translation.
|
|
105
|
+
# Just convert the backslash-escaped backslashes to single forward
|
|
106
|
+
# slashes to satisfy depend.m4
|
|
107
|
+
cygpath_u='sed s,\\\\,/,g'
|
|
108
|
+
depmode=msvc7
|
|
165
109
|
fi
|
|
166
110
|
|
|
167
111
|
if test "$depmode" = xlc; then
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
112
|
+
# IBM C/C++ Compilers xlc/xlC can output gcc-like dependency informations.
|
|
113
|
+
gccflag=-qmakedep=gcc,-MF
|
|
114
|
+
depmode=gcc
|
|
171
115
|
fi
|
|
172
116
|
|
|
173
117
|
case "$depmode" in
|
|
@@ -190,7 +134,8 @@ gcc3)
|
|
|
190
134
|
done
|
|
191
135
|
"$@"
|
|
192
136
|
stat=$?
|
|
193
|
-
if test $stat -
|
|
137
|
+
if test $stat -eq 0; then :
|
|
138
|
+
else
|
|
194
139
|
rm -f "$tmpdepfile"
|
|
195
140
|
exit $stat
|
|
196
141
|
fi
|
|
@@ -198,17 +143,13 @@ gcc3)
|
|
|
198
143
|
;;
|
|
199
144
|
|
|
200
145
|
gcc)
|
|
201
|
-
## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
|
|
202
|
-
## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
|
|
203
|
-
## (see the conditional assignment to $gccflag above).
|
|
204
146
|
## There are various ways to get dependency output from gcc. Here's
|
|
205
147
|
## why we pick this rather obscure method:
|
|
206
148
|
## - Don't want to use -MD because we'd like the dependencies to end
|
|
207
149
|
## up in a subdir. Having to rename by hand is ugly.
|
|
208
150
|
## (We might end up doing this anyway to support other compilers.)
|
|
209
151
|
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
|
|
210
|
-
## -MM, not -M (despite what the docs say).
|
|
211
|
-
## supported by the other compilers which use the 'gcc' depmode.
|
|
152
|
+
## -MM, not -M (despite what the docs say).
|
|
212
153
|
## - Using -M directly means running the compiler twice (even worse
|
|
213
154
|
## than renaming).
|
|
214
155
|
if test -z "$gccflag"; then
|
|
@@ -216,14 +157,15 @@ gcc)
|
|
|
216
157
|
fi
|
|
217
158
|
"$@" -Wp,"$gccflag$tmpdepfile"
|
|
218
159
|
stat=$?
|
|
219
|
-
if test $stat -
|
|
160
|
+
if test $stat -eq 0; then :
|
|
161
|
+
else
|
|
220
162
|
rm -f "$tmpdepfile"
|
|
221
163
|
exit $stat
|
|
222
164
|
fi
|
|
223
165
|
rm -f "$depfile"
|
|
224
166
|
echo "$object : \\" > "$depfile"
|
|
225
|
-
|
|
226
|
-
|
|
167
|
+
alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
|
|
168
|
+
## The second -e expression handles DOS-style file names with drive letters.
|
|
227
169
|
sed -e 's/^[^:]*: / /' \
|
|
228
170
|
-e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
|
|
229
171
|
## This next piece of magic avoids the "deleted header file" problem.
|
|
@@ -232,15 +174,15 @@ gcc)
|
|
|
232
174
|
## typically no way to rebuild the header). We avoid this by adding
|
|
233
175
|
## dummy dependencies for each header file. Too bad gcc doesn't do
|
|
234
176
|
## this for us directly.
|
|
177
|
+
tr ' ' "$nl" < "$tmpdepfile" |
|
|
235
178
|
## Some versions of gcc put a space before the ':'. On the theory
|
|
236
179
|
## that the space means something, we add a space to the output as
|
|
237
180
|
## well. hp depmode also adds that space, but also prefixes the VPATH
|
|
238
181
|
## to the object. Take care to not repeat it in the output.
|
|
239
182
|
## Some versions of the HPUX 10.20 sed can't process this invocation
|
|
240
183
|
## correctly. Breaking it into two sed invocations is a workaround.
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
| sed -e 's/$/ :/' >> "$depfile"
|
|
184
|
+
sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
|
|
185
|
+
| sed -e 's/$/ :/' >> "$depfile"
|
|
244
186
|
rm -f "$tmpdepfile"
|
|
245
187
|
;;
|
|
246
188
|
|
|
@@ -258,7 +200,8 @@ sgi)
|
|
|
258
200
|
"$@" -MDupdate "$tmpdepfile"
|
|
259
201
|
fi
|
|
260
202
|
stat=$?
|
|
261
|
-
if test $stat -
|
|
203
|
+
if test $stat -eq 0; then :
|
|
204
|
+
else
|
|
262
205
|
rm -f "$tmpdepfile"
|
|
263
206
|
exit $stat
|
|
264
207
|
fi
|
|
@@ -266,6 +209,7 @@ sgi)
|
|
|
266
209
|
|
|
267
210
|
if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
|
|
268
211
|
echo "$object : \\" > "$depfile"
|
|
212
|
+
|
|
269
213
|
# Clip off the initial element (the dependent). Don't try to be
|
|
270
214
|
# clever and replace this with sed code, as IRIX sed won't handle
|
|
271
215
|
# lines with more than a fixed number of characters (4096 in
|
|
@@ -273,15 +217,19 @@ sgi)
|
|
|
273
217
|
# the IRIX cc adds comments like '#:fec' to the end of the
|
|
274
218
|
# dependency line.
|
|
275
219
|
tr ' ' "$nl" < "$tmpdepfile" \
|
|
276
|
-
|
|
277
|
-
|
|
220
|
+
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
|
|
221
|
+
tr "$nl" ' ' >> "$depfile"
|
|
278
222
|
echo >> "$depfile"
|
|
223
|
+
|
|
279
224
|
# The second pass generates a dummy entry for each header file.
|
|
280
225
|
tr ' ' "$nl" < "$tmpdepfile" \
|
|
281
|
-
|
|
282
|
-
|
|
226
|
+
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
|
|
227
|
+
>> "$depfile"
|
|
283
228
|
else
|
|
284
|
-
|
|
229
|
+
# The sourcefile does not contain any dependencies, so just
|
|
230
|
+
# store a dummy comment line, to avoid errors with the Makefile
|
|
231
|
+
# "include basename.Plo" scheme.
|
|
232
|
+
echo "#dummy" > "$depfile"
|
|
285
233
|
fi
|
|
286
234
|
rm -f "$tmpdepfile"
|
|
287
235
|
;;
|
|
@@ -299,8 +247,9 @@ aix)
|
|
|
299
247
|
# current directory. Also, the AIX compiler puts '$object:' at the
|
|
300
248
|
# start of each line; $object doesn't have directory information.
|
|
301
249
|
# Version 6 uses the directory in both cases.
|
|
302
|
-
|
|
303
|
-
|
|
250
|
+
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
|
|
251
|
+
test "x$dir" = "x$object" && dir=
|
|
252
|
+
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
|
|
304
253
|
if test "$libtool" = yes; then
|
|
305
254
|
tmpdepfile1=$dir$base.u
|
|
306
255
|
tmpdepfile2=$base.u
|
|
@@ -313,7 +262,9 @@ aix)
|
|
|
313
262
|
"$@" -M
|
|
314
263
|
fi
|
|
315
264
|
stat=$?
|
|
316
|
-
|
|
265
|
+
|
|
266
|
+
if test $stat -eq 0; then :
|
|
267
|
+
else
|
|
317
268
|
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
|
318
269
|
exit $stat
|
|
319
270
|
fi
|
|
@@ -322,113 +273,65 @@ aix)
|
|
|
322
273
|
do
|
|
323
274
|
test -f "$tmpdepfile" && break
|
|
324
275
|
done
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
# foo.o : \
|
|
337
|
-
# foo.c \
|
|
338
|
-
# foo.h \
|
|
339
|
-
#
|
|
340
|
-
# It will put a trailing '\' even on the last line, and will use leading
|
|
341
|
-
# spaces rather than leading tabs (at least since its commit 0394caf7
|
|
342
|
-
# "Emit spaces for -MD").
|
|
343
|
-
"$@" -MD -MF "$tmpdepfile"
|
|
344
|
-
stat=$?
|
|
345
|
-
if test $stat -ne 0; then
|
|
346
|
-
rm -f "$tmpdepfile"
|
|
347
|
-
exit $stat
|
|
276
|
+
if test -f "$tmpdepfile"; then
|
|
277
|
+
# Each line is of the form 'foo.o: dependent.h'.
|
|
278
|
+
# Do two passes, one to just change these to
|
|
279
|
+
# '$object: dependent.h' and one to simply 'dependent.h:'.
|
|
280
|
+
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
|
|
281
|
+
sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
|
|
282
|
+
else
|
|
283
|
+
# The sourcefile does not contain any dependencies, so just
|
|
284
|
+
# store a dummy comment line, to avoid errors with the Makefile
|
|
285
|
+
# "include basename.Plo" scheme.
|
|
286
|
+
echo "#dummy" > "$depfile"
|
|
348
287
|
fi
|
|
349
|
-
rm -f "$depfile"
|
|
350
|
-
# Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.
|
|
351
|
-
# We have to change lines of the first kind to '$object: \'.
|
|
352
|
-
sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"
|
|
353
|
-
# And for each line of the second kind, we have to emit a 'dep.h:'
|
|
354
|
-
# dummy dependency, to avoid the deleted-header problem.
|
|
355
|
-
sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"
|
|
356
288
|
rm -f "$tmpdepfile"
|
|
357
289
|
;;
|
|
358
290
|
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
#
|
|
365
|
-
#
|
|
366
|
-
#
|
|
367
|
-
#
|
|
368
|
-
#
|
|
291
|
+
icc)
|
|
292
|
+
# Intel's C compiler anf tcc (Tiny C Compiler) understand '-MD -MF file'.
|
|
293
|
+
# However on
|
|
294
|
+
# $CC -MD -MF foo.d -c -o sub/foo.o sub/foo.c
|
|
295
|
+
# ICC 7.0 will fill foo.d with something like
|
|
296
|
+
# foo.o: sub/foo.c
|
|
297
|
+
# foo.o: sub/foo.h
|
|
298
|
+
# which is wrong. We want
|
|
299
|
+
# sub/foo.o: sub/foo.c
|
|
300
|
+
# sub/foo.o: sub/foo.h
|
|
301
|
+
# sub/foo.c:
|
|
302
|
+
# sub/foo.h:
|
|
303
|
+
# ICC 7.1 will output
|
|
369
304
|
# foo.o: sub/foo.c sub/foo.h
|
|
370
|
-
# and will wrap long lines using '\'
|
|
305
|
+
# and will wrap long lines using '\':
|
|
371
306
|
# foo.o: sub/foo.c ... \
|
|
372
307
|
# sub/foo.h ... \
|
|
373
308
|
# ...
|
|
374
|
-
|
|
375
|
-
#
|
|
376
|
-
#
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
# files, the pgcc approach of using the *source* file root name can cause
|
|
382
|
-
# problems in parallel builds. Use a locking strategy to avoid stomping on
|
|
383
|
-
# the same $tmpdepfile.
|
|
384
|
-
lockdir=$base.d-lock
|
|
385
|
-
trap "
|
|
386
|
-
echo '$0: caught signal, cleaning up...' >&2
|
|
387
|
-
rmdir '$lockdir'
|
|
388
|
-
exit 1
|
|
389
|
-
" 1 2 13 15
|
|
390
|
-
numtries=100
|
|
391
|
-
i=$numtries
|
|
392
|
-
while test $i -gt 0; do
|
|
393
|
-
# mkdir is a portable test-and-set.
|
|
394
|
-
if mkdir "$lockdir" 2>/dev/null; then
|
|
395
|
-
# This process acquired the lock.
|
|
396
|
-
"$@" -MD
|
|
397
|
-
stat=$?
|
|
398
|
-
# Release the lock.
|
|
399
|
-
rmdir "$lockdir"
|
|
400
|
-
break
|
|
401
|
-
else
|
|
402
|
-
# If the lock is being held by a different process, wait
|
|
403
|
-
# until the winning process is done or we timeout.
|
|
404
|
-
while test -d "$lockdir" && test $i -gt 0; do
|
|
405
|
-
sleep 1
|
|
406
|
-
i=`expr $i - 1`
|
|
407
|
-
done
|
|
408
|
-
fi
|
|
409
|
-
i=`expr $i - 1`
|
|
410
|
-
done
|
|
411
|
-
trap - 1 2 13 15
|
|
412
|
-
if test $i -le 0; then
|
|
413
|
-
echo "$0: failed to acquire lock after $numtries attempts" >&2
|
|
414
|
-
echo "$0: check lockdir '$lockdir'" >&2
|
|
415
|
-
exit 1
|
|
416
|
-
fi
|
|
417
|
-
|
|
418
|
-
if test $stat -ne 0; then
|
|
309
|
+
# tcc 0.9.26 (FIXME still under development at the moment of writing)
|
|
310
|
+
# will emit a similar output, but also prepend the continuation lines
|
|
311
|
+
# with horizontal tabulation characters.
|
|
312
|
+
"$@" -MD -MF "$tmpdepfile"
|
|
313
|
+
stat=$?
|
|
314
|
+
if test $stat -eq 0; then :
|
|
315
|
+
else
|
|
419
316
|
rm -f "$tmpdepfile"
|
|
420
317
|
exit $stat
|
|
421
318
|
fi
|
|
422
319
|
rm -f "$depfile"
|
|
423
|
-
# Each line is of the form
|
|
424
|
-
# or
|
|
320
|
+
# Each line is of the form 'foo.o: dependent.h',
|
|
321
|
+
# or 'foo.o: dep1.h dep2.h \', or ' dep3.h dep4.h \'.
|
|
425
322
|
# Do two passes, one to just change these to
|
|
426
|
-
#
|
|
427
|
-
sed "s,^[^:]*:,$object :,"
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
323
|
+
# '$object: dependent.h' and one to simply 'dependent.h:'.
|
|
324
|
+
sed -e "s/^[ $tab][ $tab]*/ /" -e "s,^[^:]*:,$object :," \
|
|
325
|
+
< "$tmpdepfile" > "$depfile"
|
|
326
|
+
sed '
|
|
327
|
+
s/[ '"$tab"'][ '"$tab"']*/ /g
|
|
328
|
+
s/^ *//
|
|
329
|
+
s/ *\\*$//
|
|
330
|
+
s/^[^:]*: *//
|
|
331
|
+
/^$/d
|
|
332
|
+
/:$/d
|
|
333
|
+
s/$/ :/
|
|
334
|
+
' < "$tmpdepfile" >> "$depfile"
|
|
432
335
|
rm -f "$tmpdepfile"
|
|
433
336
|
;;
|
|
434
337
|
|
|
@@ -439,8 +342,9 @@ hp2)
|
|
|
439
342
|
# 'foo.d', which lands next to the object file, wherever that
|
|
440
343
|
# happens to be.
|
|
441
344
|
# Much of this is similar to the tru64 case; see comments there.
|
|
442
|
-
|
|
443
|
-
|
|
345
|
+
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
|
|
346
|
+
test "x$dir" = "x$object" && dir=
|
|
347
|
+
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
|
|
444
348
|
if test "$libtool" = yes; then
|
|
445
349
|
tmpdepfile1=$dir$base.d
|
|
446
350
|
tmpdepfile2=$dir.libs/$base.d
|
|
@@ -451,7 +355,8 @@ hp2)
|
|
|
451
355
|
"$@" +Maked
|
|
452
356
|
fi
|
|
453
357
|
stat=$?
|
|
454
|
-
if test $stat -
|
|
358
|
+
if test $stat -eq 0; then :
|
|
359
|
+
else
|
|
455
360
|
rm -f "$tmpdepfile1" "$tmpdepfile2"
|
|
456
361
|
exit $stat
|
|
457
362
|
fi
|
|
@@ -461,61 +366,76 @@ hp2)
|
|
|
461
366
|
test -f "$tmpdepfile" && break
|
|
462
367
|
done
|
|
463
368
|
if test -f "$tmpdepfile"; then
|
|
464
|
-
sed -e "s,^.*\.[
|
|
369
|
+
sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
|
|
465
370
|
# Add 'dependent.h:' lines.
|
|
466
371
|
sed -ne '2,${
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
372
|
+
s/^ *//
|
|
373
|
+
s/ \\*$//
|
|
374
|
+
s/$/:/
|
|
375
|
+
p
|
|
376
|
+
}' "$tmpdepfile" >> "$depfile"
|
|
472
377
|
else
|
|
473
|
-
|
|
378
|
+
echo "#dummy" > "$depfile"
|
|
474
379
|
fi
|
|
475
380
|
rm -f "$tmpdepfile" "$tmpdepfile2"
|
|
476
381
|
;;
|
|
477
382
|
|
|
478
383
|
tru64)
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
384
|
+
# The Tru64 compiler uses -MD to generate dependencies as a side
|
|
385
|
+
# effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
|
|
386
|
+
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
|
|
387
|
+
# dependencies in 'foo.d' instead, so we check for that too.
|
|
388
|
+
# Subdirectories are respected.
|
|
389
|
+
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
|
|
390
|
+
test "x$dir" = "x$object" && dir=
|
|
391
|
+
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
|
|
392
|
+
|
|
393
|
+
if test "$libtool" = yes; then
|
|
394
|
+
# With Tru64 cc, shared objects can also be used to make a
|
|
395
|
+
# static library. This mechanism is used in libtool 1.4 series to
|
|
396
|
+
# handle both shared and static libraries in a single compilation.
|
|
397
|
+
# With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
|
|
398
|
+
#
|
|
399
|
+
# With libtool 1.5 this exception was removed, and libtool now
|
|
400
|
+
# generates 2 separate objects for the 2 libraries. These two
|
|
401
|
+
# compilations output dependencies in $dir.libs/$base.o.d and
|
|
402
|
+
# in $dir$base.o.d. We have to check for both files, because
|
|
403
|
+
# one of the two compilations can be disabled. We should prefer
|
|
404
|
+
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
|
|
405
|
+
# automatically cleaned when .libs/ is deleted, while ignoring
|
|
406
|
+
# the former would cause a distcleancheck panic.
|
|
407
|
+
tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
|
|
408
|
+
tmpdepfile2=$dir$base.o.d # libtool 1.5
|
|
409
|
+
tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
|
|
410
|
+
tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
|
|
411
|
+
"$@" -Wc,-MD
|
|
412
|
+
else
|
|
413
|
+
tmpdepfile1=$dir$base.o.d
|
|
414
|
+
tmpdepfile2=$dir$base.d
|
|
415
|
+
tmpdepfile3=$dir$base.d
|
|
416
|
+
tmpdepfile4=$dir$base.d
|
|
417
|
+
"$@" -MD
|
|
418
|
+
fi
|
|
419
|
+
|
|
420
|
+
stat=$?
|
|
421
|
+
if test $stat -eq 0; then :
|
|
422
|
+
else
|
|
423
|
+
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
|
|
424
|
+
exit $stat
|
|
425
|
+
fi
|
|
426
|
+
|
|
427
|
+
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
|
|
428
|
+
do
|
|
429
|
+
test -f "$tmpdepfile" && break
|
|
430
|
+
done
|
|
431
|
+
if test -f "$tmpdepfile"; then
|
|
432
|
+
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
|
|
433
|
+
sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
|
|
434
|
+
else
|
|
435
|
+
echo "#dummy" > "$depfile"
|
|
436
|
+
fi
|
|
437
|
+
rm -f "$tmpdepfile"
|
|
438
|
+
;;
|
|
519
439
|
|
|
520
440
|
msvc7)
|
|
521
441
|
if test "$libtool" = yes; then
|
|
@@ -526,7 +446,8 @@ msvc7)
|
|
|
526
446
|
"$@" $showIncludes > "$tmpdepfile"
|
|
527
447
|
stat=$?
|
|
528
448
|
grep -v '^Note: including file: ' "$tmpdepfile"
|
|
529
|
-
if test $stat
|
|
449
|
+
if test "$stat" = 0; then :
|
|
450
|
+
else
|
|
530
451
|
rm -f "$tmpdepfile"
|
|
531
452
|
exit $stat
|
|
532
453
|
fi
|
|
@@ -603,14 +524,13 @@ dashmstdout)
|
|
|
603
524
|
# in the target name. This is to cope with DOS-style filenames:
|
|
604
525
|
# a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
|
|
605
526
|
"$@" $dashmflag |
|
|
606
|
-
sed
|
|
527
|
+
sed 's:^['"$tab"' ]*[^:'"$tab"' ][^:][^:]*\:['"$tab"' ]*:'"$object"'\: :' > "$tmpdepfile"
|
|
607
528
|
rm -f "$depfile"
|
|
608
529
|
cat < "$tmpdepfile" > "$depfile"
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
| sed -e 's/$/ :/' >> "$depfile"
|
|
530
|
+
tr ' ' "$nl" < "$tmpdepfile" | \
|
|
531
|
+
## Some versions of the HPUX 10.20 sed can't process this invocation
|
|
532
|
+
## correctly. Breaking it into two sed invocations is a workaround.
|
|
533
|
+
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
|
|
614
534
|
rm -f "$tmpdepfile"
|
|
615
535
|
;;
|
|
616
536
|
|
|
@@ -663,12 +583,10 @@ makedepend)
|
|
|
663
583
|
# makedepend may prepend the VPATH from the source file name to the object.
|
|
664
584
|
# No need to regex-escape $object, excess matching of '.' is harmless.
|
|
665
585
|
sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
sed
|
|
669
|
-
|
|
|
670
|
-
| sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
|
|
671
|
-
| sed -e 's/$/ :/' >> "$depfile"
|
|
586
|
+
sed '1,2d' "$tmpdepfile" | tr ' ' "$nl" | \
|
|
587
|
+
## Some versions of the HPUX 10.20 sed can't process this invocation
|
|
588
|
+
## correctly. Breaking it into two sed invocations is a workaround.
|
|
589
|
+
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
|
|
672
590
|
rm -f "$tmpdepfile" "$tmpdepfile".bak
|
|
673
591
|
;;
|
|
674
592
|
|
|
@@ -704,10 +622,10 @@ cpp)
|
|
|
704
622
|
esac
|
|
705
623
|
done
|
|
706
624
|
|
|
707
|
-
"$@" -E
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
625
|
+
"$@" -E |
|
|
626
|
+
sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
|
|
627
|
+
-e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
|
|
628
|
+
sed '$ s: \\$::' > "$tmpdepfile"
|
|
711
629
|
rm -f "$depfile"
|
|
712
630
|
echo "$object : \\" > "$depfile"
|
|
713
631
|
cat < "$tmpdepfile" >> "$depfile"
|
|
@@ -739,15 +657,15 @@ msvisualcpp)
|
|
|
739
657
|
shift
|
|
740
658
|
;;
|
|
741
659
|
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
660
|
+
set fnord "$@"
|
|
661
|
+
shift
|
|
662
|
+
shift
|
|
663
|
+
;;
|
|
746
664
|
*)
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
665
|
+
set fnord "$@" "$arg"
|
|
666
|
+
shift
|
|
667
|
+
shift
|
|
668
|
+
;;
|
|
751
669
|
esac
|
|
752
670
|
done
|
|
753
671
|
"$@" -E 2>/dev/null |
|