evdispatch 0.3.1 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (70) hide show
  1. data/Manifest.txt +21 -65
  2. data/ext/revdispatch/dispatch.cc +3 -0
  3. data/ext/revdispatch/extconf.rb +50 -32
  4. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/libev-3.31/ev++.h +0 -0
  5. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/libev-3.31/ev.c +0 -0
  6. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/libev-3.31/ev.h +0 -0
  7. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/libev-3.31/ev_epoll.c +0 -0
  8. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/libev-3.31/ev_kqueue.c +0 -0
  9. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/libev-3.31/ev_poll.c +0 -0
  10. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/libev-3.31/ev_port.c +0 -0
  11. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/libev-3.31/ev_select.c +0 -0
  12. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/libev-3.31/ev_vars.h +0 -0
  13. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/libev-3.31/ev_win32.c +0 -0
  14. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/libev-3.31/ev_wrap.h +0 -0
  15. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/libev-3.31/event.c +0 -0
  16. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/libev-3.31/event.h +0 -0
  17. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/src/ev_dispatch.cc +6 -17
  18. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/src/ev_dispatch.h +0 -0
  19. data/ext/revdispatch/libdispatch/src/ev_embed.c +6 -0
  20. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/src/ev_http.cc +11 -8
  21. data/ext/revdispatch/{libdispatch-0.1 → libdispatch}/src/ev_http.h +0 -0
  22. data/lib/evdispatch/version.rb +2 -2
  23. data/website/index.html +7 -1
  24. data/website/index.txt +6 -0
  25. metadata +23 -67
  26. data/ext/revdispatch/libdispatch-0.1/Changelog +0 -12
  27. data/ext/revdispatch/libdispatch-0.1/LICENSE +0 -0
  28. data/ext/revdispatch/libdispatch-0.1/Makefile.am +0 -10
  29. data/ext/revdispatch/libdispatch-0.1/Makefile.in +0 -636
  30. data/ext/revdispatch/libdispatch-0.1/README +0 -3
  31. data/ext/revdispatch/libdispatch-0.1/aclocal.m4 +0 -7268
  32. data/ext/revdispatch/libdispatch-0.1/autogen.sh +0 -11
  33. data/ext/revdispatch/libdispatch-0.1/config.guess +0 -1516
  34. data/ext/revdispatch/libdispatch-0.1/config.h.in +0 -112
  35. data/ext/revdispatch/libdispatch-0.1/config.sub +0 -1626
  36. data/ext/revdispatch/libdispatch-0.1/configure +0 -21779
  37. data/ext/revdispatch/libdispatch-0.1/configure.ac +0 -42
  38. data/ext/revdispatch/libdispatch-0.1/depcomp +0 -584
  39. data/ext/revdispatch/libdispatch-0.1/install-sh +0 -507
  40. data/ext/revdispatch/libdispatch-0.1/libev-3.31/Changes +0 -78
  41. data/ext/revdispatch/libdispatch-0.1/libev-3.31/LICENSE +0 -25
  42. data/ext/revdispatch/libdispatch-0.1/libev-3.31/Makefile.am +0 -18
  43. data/ext/revdispatch/libdispatch-0.1/libev-3.31/Makefile.in +0 -677
  44. data/ext/revdispatch/libdispatch-0.1/libev-3.31/README +0 -130
  45. data/ext/revdispatch/libdispatch-0.1/libev-3.31/aclocal.m4 +0 -7268
  46. data/ext/revdispatch/libdispatch-0.1/libev-3.31/autogen.sh +0 -6
  47. data/ext/revdispatch/libdispatch-0.1/libev-3.31/config.guess +0 -1516
  48. data/ext/revdispatch/libdispatch-0.1/libev-3.31/config.h.in +0 -112
  49. data/ext/revdispatch/libdispatch-0.1/libev-3.31/config.sub +0 -1626
  50. data/ext/revdispatch/libdispatch-0.1/libev-3.31/configure +0 -21500
  51. data/ext/revdispatch/libdispatch-0.1/libev-3.31/configure.ac +0 -18
  52. data/ext/revdispatch/libdispatch-0.1/libev-3.31/ev.3 +0 -3344
  53. data/ext/revdispatch/libdispatch-0.1/libev-3.31/ev.pod +0 -3268
  54. data/ext/revdispatch/libdispatch-0.1/libev-3.31/install-sh +0 -294
  55. data/ext/revdispatch/libdispatch-0.1/libev-3.31/libev.m4 +0 -28
  56. data/ext/revdispatch/libdispatch-0.1/libev-3.31/ltmain.sh +0 -6871
  57. data/ext/revdispatch/libdispatch-0.1/libev-3.31/missing +0 -336
  58. data/ext/revdispatch/libdispatch-0.1/libev-3.31/mkinstalldirs +0 -111
  59. data/ext/revdispatch/libdispatch-0.1/ltmain.sh +0 -6930
  60. data/ext/revdispatch/libdispatch-0.1/missing +0 -367
  61. data/ext/revdispatch/libdispatch-0.1/src/Makefile.am +0 -11
  62. data/ext/revdispatch/libdispatch-0.1/src/Makefile.in +0 -485
  63. data/ext/revdispatch/libdispatch-0.1/test/Makefile.am +0 -30
  64. data/ext/revdispatch/libdispatch-0.1/test/Makefile.in +0 -623
  65. data/ext/revdispatch/libdispatch-0.1/test/key_test.cc +0 -52
  66. data/ext/revdispatch/libdispatch-0.1/test/next_test.cc +0 -84
  67. data/ext/revdispatch/libdispatch-0.1/test/opt_test.cc +0 -70
  68. data/ext/revdispatch/libdispatch-0.1/test/pipe_test.cc +0 -241
  69. data/ext/revdispatch/libdispatch-0.1/test/post_test.cc +0 -66
  70. data/ext/revdispatch/libdispatch-0.1/test/stress_test.cc +0 -62
@@ -1,42 +0,0 @@
1
- AC_INIT
2
- AC_CONFIG_SRCDIR([src/ev_dispatch.cc])
3
-
4
- AM_INIT_AUTOMAKE(libdispatch,0.1)
5
- AC_CONFIG_HEADERS([config.h])
6
- AM_MAINTAINER_MODE
7
- # Checks for programs.
8
- AC_PROG_CC
9
- AC_PROG_CXX
10
-
11
- # set C++ compiling and linkage
12
- AC_LANG(C++)
13
-
14
- AC_PROG_INSTALL
15
- AC_PROG_LIBTOOL
16
-
17
- if test "x$GCC" = xyes ; then
18
- CXXFLAGS="$CXXFLAGS -O3"
19
- fi
20
- #if( test `uname -m | grep -ci i386 ` && test `uname | grep -ci darwin`); then
21
- # CXXFLAGS="$CXXFLAGS -arch ppc -arch i386"
22
- #fi
23
- libev=`pwd`/libev-3.31/
24
- AC_SUBST(LIBEV_PATH,$libev)
25
-
26
- AC_CHECK_HEADERS(curl/curl.h)
27
- # TODO: abort if the libcurl version isn't met
28
- AC_CHECK_TYPES([curl_socket_t],[],["libcurl is too old!"],[#include "curl/curl.h"])
29
- AC_CHECK_PROGS([curl-config])
30
-
31
- # include libev's m4 macros for config.h
32
- m4_include([libev-3.31/libev.m4])
33
-
34
- AC_CONFIG_FILES([Makefile src/Makefile test/Makefile])
35
- AC_OUTPUT
36
-
37
- if( ! test -d ${libev}/.libs ); then
38
- echo "Building libev... in ${libev}";
39
- cd $libev;
40
- ./configure --disable-shared;
41
- make;
42
- fi
@@ -1,584 +0,0 @@
1
- #! /bin/sh
2
- # depcomp - compile a program generating dependencies as side-effects
3
-
4
- scriptversion=2006-10-15.18
5
-
6
- # Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006 Free Software
7
- # Foundation, Inc.
8
-
9
- # This program is free software; you can redistribute it and/or modify
10
- # it under the terms of the GNU General Public License as published by
11
- # the Free Software Foundation; either version 2, or (at your option)
12
- # any later version.
13
-
14
- # This program is distributed in the hope that it will be useful,
15
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
16
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
- # GNU General Public License for more details.
18
-
19
- # You should have received a copy of the GNU General Public License
20
- # along with this program; if not, write to the Free Software
21
- # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
22
- # 02110-1301, USA.
23
-
24
- # As a special exception to the GNU General Public License, if you
25
- # distribute this file as part of a program that contains a
26
- # configuration script generated by Autoconf, you may include it under
27
- # the same distribution terms that you use for the rest of that program.
28
-
29
- # Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
30
-
31
- case $1 in
32
- '')
33
- echo "$0: No command. Try \`$0 --help' for more information." 1>&2
34
- exit 1;
35
- ;;
36
- -h | --h*)
37
- cat <<\EOF
38
- Usage: depcomp [--help] [--version] PROGRAM [ARGS]
39
-
40
- Run PROGRAMS ARGS to compile a file, generating dependencies
41
- as side-effects.
42
-
43
- Environment variables:
44
- depmode Dependency tracking mode.
45
- source Source file read by `PROGRAMS ARGS'.
46
- object Object file output by `PROGRAMS ARGS'.
47
- DEPDIR directory where to store dependencies.
48
- depfile Dependency file to output.
49
- tmpdepfile Temporary file to use when outputing dependencies.
50
- libtool Whether libtool is used (yes/no).
51
-
52
- Report bugs to <bug-automake@gnu.org>.
53
- EOF
54
- exit $?
55
- ;;
56
- -v | --v*)
57
- echo "depcomp $scriptversion"
58
- exit $?
59
- ;;
60
- esac
61
-
62
- if test -z "$depmode" || test -z "$source" || test -z "$object"; then
63
- echo "depcomp: Variables source, object and depmode must be set" 1>&2
64
- exit 1
65
- fi
66
-
67
- # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
68
- depfile=${depfile-`echo "$object" |
69
- sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
70
- tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
71
-
72
- rm -f "$tmpdepfile"
73
-
74
- # Some modes work just like other modes, but use different flags. We
75
- # parameterize here, but still list the modes in the big case below,
76
- # to make depend.m4 easier to write. Note that we *cannot* use a case
77
- # here, because this file can only contain one case statement.
78
- if test "$depmode" = hp; then
79
- # HP compiler uses -M and no extra arg.
80
- gccflag=-M
81
- depmode=gcc
82
- fi
83
-
84
- if test "$depmode" = dashXmstdout; then
85
- # This is just like dashmstdout with a different argument.
86
- dashmflag=-xM
87
- depmode=dashmstdout
88
- fi
89
-
90
- case "$depmode" in
91
- gcc3)
92
- ## gcc 3 implements dependency tracking that does exactly what
93
- ## we want. Yay! Note: for some reason libtool 1.4 doesn't like
94
- ## it if -MD -MP comes after the -MF stuff. Hmm.
95
- ## Unfortunately, FreeBSD c89 acceptance of flags depends upon
96
- ## the command line argument order; so add the flags where they
97
- ## appear in depend2.am. Note that the slowdown incurred here
98
- ## affects only configure: in makefiles, %FASTDEP% shortcuts this.
99
- for arg
100
- do
101
- case $arg in
102
- -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
103
- *) set fnord "$@" "$arg" ;;
104
- esac
105
- shift # fnord
106
- shift # $arg
107
- done
108
- "$@"
109
- stat=$?
110
- if test $stat -eq 0; then :
111
- else
112
- rm -f "$tmpdepfile"
113
- exit $stat
114
- fi
115
- mv "$tmpdepfile" "$depfile"
116
- ;;
117
-
118
- gcc)
119
- ## There are various ways to get dependency output from gcc. Here's
120
- ## why we pick this rather obscure method:
121
- ## - Don't want to use -MD because we'd like the dependencies to end
122
- ## up in a subdir. Having to rename by hand is ugly.
123
- ## (We might end up doing this anyway to support other compilers.)
124
- ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
125
- ## -MM, not -M (despite what the docs say).
126
- ## - Using -M directly means running the compiler twice (even worse
127
- ## than renaming).
128
- if test -z "$gccflag"; then
129
- gccflag=-MD,
130
- fi
131
- "$@" -Wp,"$gccflag$tmpdepfile"
132
- stat=$?
133
- if test $stat -eq 0; then :
134
- else
135
- rm -f "$tmpdepfile"
136
- exit $stat
137
- fi
138
- rm -f "$depfile"
139
- echo "$object : \\" > "$depfile"
140
- alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
141
- ## The second -e expression handles DOS-style file names with drive letters.
142
- sed -e 's/^[^:]*: / /' \
143
- -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
144
- ## This next piece of magic avoids the `deleted header file' problem.
145
- ## The problem is that when a header file which appears in a .P file
146
- ## is deleted, the dependency causes make to die (because there is
147
- ## typically no way to rebuild the header). We avoid this by adding
148
- ## dummy dependencies for each header file. Too bad gcc doesn't do
149
- ## this for us directly.
150
- tr ' ' '
151
- ' < "$tmpdepfile" |
152
- ## Some versions of gcc put a space before the `:'. On the theory
153
- ## that the space means something, we add a space to the output as
154
- ## well.
155
- ## Some versions of the HPUX 10.20 sed can't process this invocation
156
- ## correctly. Breaking it into two sed invocations is a workaround.
157
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
158
- rm -f "$tmpdepfile"
159
- ;;
160
-
161
- hp)
162
- # This case exists only to let depend.m4 do its work. It works by
163
- # looking at the text of this script. This case will never be run,
164
- # since it is checked for above.
165
- exit 1
166
- ;;
167
-
168
- sgi)
169
- if test "$libtool" = yes; then
170
- "$@" "-Wp,-MDupdate,$tmpdepfile"
171
- else
172
- "$@" -MDupdate "$tmpdepfile"
173
- fi
174
- stat=$?
175
- if test $stat -eq 0; then :
176
- else
177
- rm -f "$tmpdepfile"
178
- exit $stat
179
- fi
180
- rm -f "$depfile"
181
-
182
- if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
183
- echo "$object : \\" > "$depfile"
184
-
185
- # Clip off the initial element (the dependent). Don't try to be
186
- # clever and replace this with sed code, as IRIX sed won't handle
187
- # lines with more than a fixed number of characters (4096 in
188
- # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
189
- # the IRIX cc adds comments like `#:fec' to the end of the
190
- # dependency line.
191
- tr ' ' '
192
- ' < "$tmpdepfile" \
193
- | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
194
- tr '
195
- ' ' ' >> $depfile
196
- echo >> $depfile
197
-
198
- # The second pass generates a dummy entry for each header file.
199
- tr ' ' '
200
- ' < "$tmpdepfile" \
201
- | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
202
- >> $depfile
203
- else
204
- # The sourcefile does not contain any dependencies, so just
205
- # store a dummy comment line, to avoid errors with the Makefile
206
- # "include basename.Plo" scheme.
207
- echo "#dummy" > "$depfile"
208
- fi
209
- rm -f "$tmpdepfile"
210
- ;;
211
-
212
- aix)
213
- # The C for AIX Compiler uses -M and outputs the dependencies
214
- # in a .u file. In older versions, this file always lives in the
215
- # current directory. Also, the AIX compiler puts `$object:' at the
216
- # start of each line; $object doesn't have directory information.
217
- # Version 6 uses the directory in both cases.
218
- stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'`
219
- tmpdepfile="$stripped.u"
220
- if test "$libtool" = yes; then
221
- "$@" -Wc,-M
222
- else
223
- "$@" -M
224
- fi
225
- stat=$?
226
-
227
- if test -f "$tmpdepfile"; then :
228
- else
229
- stripped=`echo "$stripped" | sed 's,^.*/,,'`
230
- tmpdepfile="$stripped.u"
231
- fi
232
-
233
- if test $stat -eq 0; then :
234
- else
235
- rm -f "$tmpdepfile"
236
- exit $stat
237
- fi
238
-
239
- if test -f "$tmpdepfile"; then
240
- outname="$stripped.o"
241
- # Each line is of the form `foo.o: dependent.h'.
242
- # Do two passes, one to just change these to
243
- # `$object: dependent.h' and one to simply `dependent.h:'.
244
- sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile"
245
- sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile"
246
- else
247
- # The sourcefile does not contain any dependencies, so just
248
- # store a dummy comment line, to avoid errors with the Makefile
249
- # "include basename.Plo" scheme.
250
- echo "#dummy" > "$depfile"
251
- fi
252
- rm -f "$tmpdepfile"
253
- ;;
254
-
255
- icc)
256
- # Intel's C compiler understands `-MD -MF file'. However on
257
- # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
258
- # ICC 7.0 will fill foo.d with something like
259
- # foo.o: sub/foo.c
260
- # foo.o: sub/foo.h
261
- # which is wrong. We want:
262
- # sub/foo.o: sub/foo.c
263
- # sub/foo.o: sub/foo.h
264
- # sub/foo.c:
265
- # sub/foo.h:
266
- # ICC 7.1 will output
267
- # foo.o: sub/foo.c sub/foo.h
268
- # and will wrap long lines using \ :
269
- # foo.o: sub/foo.c ... \
270
- # sub/foo.h ... \
271
- # ...
272
-
273
- "$@" -MD -MF "$tmpdepfile"
274
- stat=$?
275
- if test $stat -eq 0; then :
276
- else
277
- rm -f "$tmpdepfile"
278
- exit $stat
279
- fi
280
- rm -f "$depfile"
281
- # Each line is of the form `foo.o: dependent.h',
282
- # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
283
- # Do two passes, one to just change these to
284
- # `$object: dependent.h' and one to simply `dependent.h:'.
285
- sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
286
- # Some versions of the HPUX 10.20 sed can't process this invocation
287
- # correctly. Breaking it into two sed invocations is a workaround.
288
- sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
289
- sed -e 's/$/ :/' >> "$depfile"
290
- rm -f "$tmpdepfile"
291
- ;;
292
-
293
- hp2)
294
- # The "hp" stanza above does not work with aCC (C++) and HP's ia64
295
- # compilers, which have integrated preprocessors. The correct option
296
- # to use with these is +Maked; it writes dependencies to a file named
297
- # 'foo.d', which lands next to the object file, wherever that
298
- # happens to be.
299
- # Much of this is similar to the tru64 case; see comments there.
300
- dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
301
- test "x$dir" = "x$object" && dir=
302
- base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
303
- if test "$libtool" = yes; then
304
- tmpdepfile1=$dir$base.d
305
- tmpdepfile2=$dir.libs/$base.d
306
- "$@" -Wc,+Maked
307
- else
308
- tmpdepfile1=$dir$base.d
309
- tmpdepfile2=$dir$base.d
310
- "$@" +Maked
311
- fi
312
- stat=$?
313
- if test $stat -eq 0; then :
314
- else
315
- rm -f "$tmpdepfile1" "$tmpdepfile2"
316
- exit $stat
317
- fi
318
-
319
- for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
320
- do
321
- test -f "$tmpdepfile" && break
322
- done
323
- if test -f "$tmpdepfile"; then
324
- sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
325
- # Add `dependent.h:' lines.
326
- sed -ne '2,${; s/^ *//; s/ \\*$//; s/$/:/; p;}' "$tmpdepfile" >> "$depfile"
327
- else
328
- echo "#dummy" > "$depfile"
329
- fi
330
- rm -f "$tmpdepfile" "$tmpdepfile2"
331
- ;;
332
-
333
- tru64)
334
- # The Tru64 compiler uses -MD to generate dependencies as a side
335
- # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
336
- # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
337
- # dependencies in `foo.d' instead, so we check for that too.
338
- # Subdirectories are respected.
339
- dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
340
- test "x$dir" = "x$object" && dir=
341
- base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
342
-
343
- if test "$libtool" = yes; then
344
- # With Tru64 cc, shared objects can also be used to make a
345
- # static library. This mechanism is used in libtool 1.4 series to
346
- # handle both shared and static libraries in a single compilation.
347
- # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
348
- #
349
- # With libtool 1.5 this exception was removed, and libtool now
350
- # generates 2 separate objects for the 2 libraries. These two
351
- # compilations output dependencies in $dir.libs/$base.o.d and
352
- # in $dir$base.o.d. We have to check for both files, because
353
- # one of the two compilations can be disabled. We should prefer
354
- # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
355
- # automatically cleaned when .libs/ is deleted, while ignoring
356
- # the former would cause a distcleancheck panic.
357
- tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
358
- tmpdepfile2=$dir$base.o.d # libtool 1.5
359
- tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
360
- tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
361
- "$@" -Wc,-MD
362
- else
363
- tmpdepfile1=$dir$base.o.d
364
- tmpdepfile2=$dir$base.d
365
- tmpdepfile3=$dir$base.d
366
- tmpdepfile4=$dir$base.d
367
- "$@" -MD
368
- fi
369
-
370
- stat=$?
371
- if test $stat -eq 0; then :
372
- else
373
- rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
374
- exit $stat
375
- fi
376
-
377
- for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
378
- do
379
- test -f "$tmpdepfile" && break
380
- done
381
- if test -f "$tmpdepfile"; then
382
- sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
383
- # That's a tab and a space in the [].
384
- sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
385
- else
386
- echo "#dummy" > "$depfile"
387
- fi
388
- rm -f "$tmpdepfile"
389
- ;;
390
-
391
- #nosideeffect)
392
- # This comment above is used by automake to tell side-effect
393
- # dependency tracking mechanisms from slower ones.
394
-
395
- dashmstdout)
396
- # Important note: in order to support this mode, a compiler *must*
397
- # always write the preprocessed file to stdout, regardless of -o.
398
- "$@" || exit $?
399
-
400
- # Remove the call to Libtool.
401
- if test "$libtool" = yes; then
402
- while test $1 != '--mode=compile'; do
403
- shift
404
- done
405
- shift
406
- fi
407
-
408
- # Remove `-o $object'.
409
- IFS=" "
410
- for arg
411
- do
412
- case $arg in
413
- -o)
414
- shift
415
- ;;
416
- $object)
417
- shift
418
- ;;
419
- *)
420
- set fnord "$@" "$arg"
421
- shift # fnord
422
- shift # $arg
423
- ;;
424
- esac
425
- done
426
-
427
- test -z "$dashmflag" && dashmflag=-M
428
- # Require at least two characters before searching for `:'
429
- # in the target name. This is to cope with DOS-style filenames:
430
- # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
431
- "$@" $dashmflag |
432
- sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
433
- rm -f "$depfile"
434
- cat < "$tmpdepfile" > "$depfile"
435
- tr ' ' '
436
- ' < "$tmpdepfile" | \
437
- ## Some versions of the HPUX 10.20 sed can't process this invocation
438
- ## correctly. Breaking it into two sed invocations is a workaround.
439
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
440
- rm -f "$tmpdepfile"
441
- ;;
442
-
443
- dashXmstdout)
444
- # This case only exists to satisfy depend.m4. It is never actually
445
- # run, as this mode is specially recognized in the preamble.
446
- exit 1
447
- ;;
448
-
449
- makedepend)
450
- "$@" || exit $?
451
- # Remove any Libtool call
452
- if test "$libtool" = yes; then
453
- while test $1 != '--mode=compile'; do
454
- shift
455
- done
456
- shift
457
- fi
458
- # X makedepend
459
- shift
460
- cleared=no
461
- for arg in "$@"; do
462
- case $cleared in
463
- no)
464
- set ""; shift
465
- cleared=yes ;;
466
- esac
467
- case "$arg" in
468
- -D*|-I*)
469
- set fnord "$@" "$arg"; shift ;;
470
- # Strip any option that makedepend may not understand. Remove
471
- # the object too, otherwise makedepend will parse it as a source file.
472
- -*|$object)
473
- ;;
474
- *)
475
- set fnord "$@" "$arg"; shift ;;
476
- esac
477
- done
478
- obj_suffix="`echo $object | sed 's/^.*\././'`"
479
- touch "$tmpdepfile"
480
- ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
481
- rm -f "$depfile"
482
- cat < "$tmpdepfile" > "$depfile"
483
- sed '1,2d' "$tmpdepfile" | tr ' ' '
484
- ' | \
485
- ## Some versions of the HPUX 10.20 sed can't process this invocation
486
- ## correctly. Breaking it into two sed invocations is a workaround.
487
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
488
- rm -f "$tmpdepfile" "$tmpdepfile".bak
489
- ;;
490
-
491
- cpp)
492
- # Important note: in order to support this mode, a compiler *must*
493
- # always write the preprocessed file to stdout.
494
- "$@" || exit $?
495
-
496
- # Remove the call to Libtool.
497
- if test "$libtool" = yes; then
498
- while test $1 != '--mode=compile'; do
499
- shift
500
- done
501
- shift
502
- fi
503
-
504
- # Remove `-o $object'.
505
- IFS=" "
506
- for arg
507
- do
508
- case $arg in
509
- -o)
510
- shift
511
- ;;
512
- $object)
513
- shift
514
- ;;
515
- *)
516
- set fnord "$@" "$arg"
517
- shift # fnord
518
- shift # $arg
519
- ;;
520
- esac
521
- done
522
-
523
- "$@" -E |
524
- sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
525
- -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
526
- sed '$ s: \\$::' > "$tmpdepfile"
527
- rm -f "$depfile"
528
- echo "$object : \\" > "$depfile"
529
- cat < "$tmpdepfile" >> "$depfile"
530
- sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
531
- rm -f "$tmpdepfile"
532
- ;;
533
-
534
- msvisualcpp)
535
- # Important note: in order to support this mode, a compiler *must*
536
- # always write the preprocessed file to stdout, regardless of -o,
537
- # because we must use -o when running libtool.
538
- "$@" || exit $?
539
- IFS=" "
540
- for arg
541
- do
542
- case "$arg" in
543
- "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
544
- set fnord "$@"
545
- shift
546
- shift
547
- ;;
548
- *)
549
- set fnord "$@" "$arg"
550
- shift
551
- shift
552
- ;;
553
- esac
554
- done
555
- "$@" -E |
556
- sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
557
- rm -f "$depfile"
558
- echo "$object : \\" > "$depfile"
559
- . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
560
- echo " " >> "$depfile"
561
- . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
562
- rm -f "$tmpdepfile"
563
- ;;
564
-
565
- none)
566
- exec "$@"
567
- ;;
568
-
569
- *)
570
- echo "Unknown depmode $depmode" 1>&2
571
- exit 1
572
- ;;
573
- esac
574
-
575
- exit 0
576
-
577
- # Local Variables:
578
- # mode: shell-script
579
- # sh-indentation: 2
580
- # eval: (add-hook 'write-file-hooks 'time-stamp)
581
- # time-stamp-start: "scriptversion="
582
- # time-stamp-format: "%:y-%02m-%02d.%02H"
583
- # time-stamp-end: "$"
584
- # End: