tyler-trie 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (49) hide show
  1. data/VERSION.yml +1 -1
  2. data/ext/trie/extconf.rb +1 -3
  3. metadata +4 -65
  4. data/ext/libdatrie/AUTHORS +0 -1
  5. data/ext/libdatrie/COPYING +0 -510
  6. data/ext/libdatrie/ChangeLog +0 -410
  7. data/ext/libdatrie/INSTALL +0 -236
  8. data/ext/libdatrie/Makefile.am +0 -5
  9. data/ext/libdatrie/Makefile.in +0 -661
  10. data/ext/libdatrie/NEWS +0 -27
  11. data/ext/libdatrie/README +0 -32
  12. data/ext/libdatrie/aclocal.m4 +0 -7431
  13. data/ext/libdatrie/config.guess +0 -1516
  14. data/ext/libdatrie/config.h.in +0 -74
  15. data/ext/libdatrie/config.sub +0 -1626
  16. data/ext/libdatrie/configure +0 -22008
  17. data/ext/libdatrie/configure.ac +0 -71
  18. data/ext/libdatrie/datrie.pc.in +0 -11
  19. data/ext/libdatrie/datrie/Makefile.am +0 -35
  20. data/ext/libdatrie/datrie/Makefile.in +0 -522
  21. data/ext/libdatrie/datrie/alpha-map.c +0 -170
  22. data/ext/libdatrie/datrie/alpha-map.h +0 -36
  23. data/ext/libdatrie/datrie/darray.c +0 -674
  24. data/ext/libdatrie/datrie/darray.h +0 -229
  25. data/ext/libdatrie/datrie/fileutils.c +0 -151
  26. data/ext/libdatrie/datrie/fileutils.h +0 -36
  27. data/ext/libdatrie/datrie/libdatrie.def +0 -31
  28. data/ext/libdatrie/datrie/sb-trie.c +0 -331
  29. data/ext/libdatrie/datrie/sb-trie.h +0 -279
  30. data/ext/libdatrie/datrie/tail.c +0 -344
  31. data/ext/libdatrie/datrie/tail.h +0 -200
  32. data/ext/libdatrie/datrie/trie-private.h +0 -31
  33. data/ext/libdatrie/datrie/trie.c +0 -413
  34. data/ext/libdatrie/datrie/trie.h +0 -270
  35. data/ext/libdatrie/datrie/triedefs.h +0 -63
  36. data/ext/libdatrie/datrie/typedefs.h +0 -113
  37. data/ext/libdatrie/depcomp +0 -530
  38. data/ext/libdatrie/doc/Doxyfile.in +0 -244
  39. data/ext/libdatrie/doc/Makefile.am +0 -29
  40. data/ext/libdatrie/doc/Makefile.in +0 -352
  41. data/ext/libdatrie/install-sh +0 -323
  42. data/ext/libdatrie/ltmain.sh +0 -6938
  43. data/ext/libdatrie/man/Makefile.am +0 -4
  44. data/ext/libdatrie/man/Makefile.in +0 -381
  45. data/ext/libdatrie/man/trietool.1 +0 -107
  46. data/ext/libdatrie/missing +0 -360
  47. data/ext/libdatrie/tools/Makefile.am +0 -7
  48. data/ext/libdatrie/tools/Makefile.in +0 -460
  49. data/ext/libdatrie/tools/trietool.c +0 -308
@@ -1,63 +0,0 @@
1
- /* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2
- /*
3
- * triedefs.h - General typedefs for trie
4
- * Created: 2006-08-11
5
- * Author: Theppitak Karoonboonyanan <thep@linux.thai.net>
6
- */
7
-
8
- #ifndef __TRIEDEFS_H
9
- #define __TRIEDEFS_H
10
-
11
- #include <datrie/typedefs.h>
12
-
13
- /**
14
- * @file triedefs.h
15
- * @brief General typedefs for trie
16
- */
17
-
18
- /**
19
- * @brief Trie IO modes
20
- */
21
- typedef enum {
22
- TRIE_IO_READ = 0x01,
23
- TRIE_IO_WRITE = 0x02,
24
- TRIE_IO_CREATE = 0x04
25
- } TrieIOMode;
26
-
27
- /**
28
- * @brief Trie character type for key
29
- */
30
- typedef unsigned char TrieChar;
31
- /**
32
- * @brief Trie terminator character
33
- */
34
- #define TRIE_CHAR_TERM '\0'
35
- #define TRIE_CHAR_MAX 255
36
-
37
- /**
38
- * @brief Type of Trie index
39
- */
40
- typedef int16 TrieIndex;
41
- /**
42
- * @brief Trie error index
43
- */
44
- #define TRIE_INDEX_ERROR 0
45
- /**
46
- * @brief Maximum trie index value
47
- */
48
- #define TRIE_INDEX_MAX 32767
49
-
50
- /**
51
- * @brief Type of value associated to trie entries
52
- */
53
- typedef int16 TrieData;
54
- /**
55
- * @brief Trie error data
56
- */
57
- #define TRIE_DATA_ERROR -1
58
-
59
- #endif /* __TRIEDEFS_H */
60
-
61
- /*
62
- vi:ts=4:ai:expandtab
63
- */
@@ -1,113 +0,0 @@
1
- /* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2
- /*
3
- * typedefs.h - general types
4
- * Created : 11 Aug 2006
5
- * Author : Theppitak Karoonboonyanan <thep@linux.thai.net>
6
- */
7
-
8
- #ifndef __TYPEDEFS_H
9
- #define __TYPEDEFS_H
10
-
11
- #include <limits.h>
12
-
13
- typedef enum { FALSE = 0, TRUE = 1 } Bool;
14
-
15
- # if UCHAR_MAX == 0xff
16
- # ifndef UINT8_TYPEDEF
17
- # define UINT8_TYPEDEF
18
- typedef unsigned char uint8;
19
- # endif /* UINT8_TYPEDEF */
20
- # endif /* UCHAR_MAX */
21
-
22
- # if SCHAR_MAX == 0x7f
23
- # ifndef INT8_TYPEDEF
24
- # define INT8_TYPEDEF
25
- typedef signed char int8;
26
- # endif /* INT8_TYPEDEF */
27
- # endif /* SCHAR_MAX */
28
-
29
- # if UINT_MAX == 0xffff
30
- # ifndef UINT16_TYPEDEF
31
- # define UINT16_TYPEDEF
32
- typedef unsigned int uint16;
33
- # endif /* UINT16_TYPEDEF */
34
- # endif /* UINT_MAX */
35
-
36
- # if INT_MAX == 0x7fff
37
- # ifndef INT16_TYPEDEF
38
- # define INT16_TYPEDEF
39
- typedef int int16;
40
- # endif /* INT16_TYPEDEF */
41
- # endif /* INT_MAX */
42
-
43
- # if USHRT_MAX == 0xffff
44
- # ifndef UINT16_TYPEDEF
45
- # define UINT16_TYPEDEF
46
- typedef unsigned short uint16;
47
- # endif /* UINT16_TYPEDEF */
48
- # endif /* USHRT_MAX */
49
-
50
- # if SHRT_MAX == 0x7fff
51
- # ifndef INT16_TYPEDEF
52
- # define INT16_TYPEDEF
53
- typedef short int16;
54
- # endif /* INT16_TYPEDEF */
55
- # endif /* SHRT_MAX */
56
-
57
- # if UINT_MAX == 0xffffffff
58
- # ifndef UINT32_TYPEDEF
59
- # define UINT32_TYPEDEF
60
- typedef unsigned int uint32;
61
- # endif /* UINT32_TYPEDEF */
62
- # endif /* UINT_MAX */
63
-
64
- # if INT_MAX == 0x7fffffff
65
- # ifndef INT32_TYPEDEF
66
- # define INT32_TYPEDEF
67
- typedef int int32;
68
- # endif /* INT32_TYPEDEF */
69
- # endif /* INT_MAX */
70
-
71
- # if ULONG_MAX == 0xffffffff
72
- # ifndef UINT32_TYPEDEF
73
- # define UINT32_TYPEDEF
74
- typedef unsigned long uint32;
75
- # endif /* UINT32_TYPEDEF */
76
- # endif /* ULONG_MAX */
77
-
78
- # if LONG_MAX == 0x7fffffff
79
- # ifndef INT32_TYPEDEF
80
- # define INT32_TYPEDEF
81
- typedef long int32;
82
- # endif /* INT32_TYPEDEF */
83
- # endif /* LONG_MAX */
84
-
85
- # ifndef UINT8_TYPEDEF
86
- # error "uint8 type is undefined!"
87
- # endif
88
- # ifndef INT8_TYPEDEF
89
- # error "int8 type is undefined!"
90
- # endif
91
- # ifndef UINT16_TYPEDEF
92
- # error "uint16 type is undefined!"
93
- # endif
94
- # ifndef INT16_TYPEDEF
95
- # error "int16 type is undefined!"
96
- # endif
97
- # ifndef UINT32_TYPEDEF
98
- # error "uint32 type is undefined!"
99
- # endif
100
- # ifndef INT32_TYPEDEF
101
- # error "int32 type is undefined!"
102
- # endif
103
-
104
- typedef uint8 byte;
105
- typedef uint16 word;
106
- typedef uint32 dword;
107
-
108
-
109
- #endif /* __TYPEDEFS_H */
110
-
111
- /*
112
- vi:ts=4:ai:expandtab
113
- */
@@ -1,530 +0,0 @@
1
- #! /bin/sh
2
- # depcomp - compile a program generating dependencies as side-effects
3
-
4
- scriptversion=2005-07-09.11
5
-
6
- # Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
7
-
8
- # This program is free software; you can redistribute it and/or modify
9
- # it under the terms of the GNU General Public License as published by
10
- # the Free Software Foundation; either version 2, or (at your option)
11
- # any later version.
12
-
13
- # This program is distributed in the hope that it will be useful,
14
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
15
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
- # GNU General Public License for more details.
17
-
18
- # You should have received a copy of the GNU General Public License
19
- # along with this program; if not, write to the Free Software
20
- # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
21
- # 02110-1301, USA.
22
-
23
- # As a special exception to the GNU General Public License, if you
24
- # distribute this file as part of a program that contains a
25
- # configuration script generated by Autoconf, you may include it under
26
- # the same distribution terms that you use for the rest of that program.
27
-
28
- # Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
29
-
30
- case $1 in
31
- '')
32
- echo "$0: No command. Try \`$0 --help' for more information." 1>&2
33
- exit 1;
34
- ;;
35
- -h | --h*)
36
- cat <<\EOF
37
- Usage: depcomp [--help] [--version] PROGRAM [ARGS]
38
-
39
- Run PROGRAMS ARGS to compile a file, generating dependencies
40
- as side-effects.
41
-
42
- Environment variables:
43
- depmode Dependency tracking mode.
44
- source Source file read by `PROGRAMS ARGS'.
45
- object Object file output by `PROGRAMS ARGS'.
46
- DEPDIR directory where to store dependencies.
47
- depfile Dependency file to output.
48
- tmpdepfile Temporary file to use when outputing dependencies.
49
- libtool Whether libtool is used (yes/no).
50
-
51
- Report bugs to <bug-automake@gnu.org>.
52
- EOF
53
- exit $?
54
- ;;
55
- -v | --v*)
56
- echo "depcomp $scriptversion"
57
- exit $?
58
- ;;
59
- esac
60
-
61
- if test -z "$depmode" || test -z "$source" || test -z "$object"; then
62
- echo "depcomp: Variables source, object and depmode must be set" 1>&2
63
- exit 1
64
- fi
65
-
66
- # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
67
- depfile=${depfile-`echo "$object" |
68
- sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
69
- tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
70
-
71
- rm -f "$tmpdepfile"
72
-
73
- # Some modes work just like other modes, but use different flags. We
74
- # parameterize here, but still list the modes in the big case below,
75
- # to make depend.m4 easier to write. Note that we *cannot* use a case
76
- # here, because this file can only contain one case statement.
77
- if test "$depmode" = hp; then
78
- # HP compiler uses -M and no extra arg.
79
- gccflag=-M
80
- depmode=gcc
81
- fi
82
-
83
- if test "$depmode" = dashXmstdout; then
84
- # This is just like dashmstdout with a different argument.
85
- dashmflag=-xM
86
- depmode=dashmstdout
87
- fi
88
-
89
- case "$depmode" in
90
- gcc3)
91
- ## gcc 3 implements dependency tracking that does exactly what
92
- ## we want. Yay! Note: for some reason libtool 1.4 doesn't like
93
- ## it if -MD -MP comes after the -MF stuff. Hmm.
94
- "$@" -MT "$object" -MD -MP -MF "$tmpdepfile"
95
- stat=$?
96
- if test $stat -eq 0; then :
97
- else
98
- rm -f "$tmpdepfile"
99
- exit $stat
100
- fi
101
- mv "$tmpdepfile" "$depfile"
102
- ;;
103
-
104
- gcc)
105
- ## There are various ways to get dependency output from gcc. Here's
106
- ## why we pick this rather obscure method:
107
- ## - Don't want to use -MD because we'd like the dependencies to end
108
- ## up in a subdir. Having to rename by hand is ugly.
109
- ## (We might end up doing this anyway to support other compilers.)
110
- ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
111
- ## -MM, not -M (despite what the docs say).
112
- ## - Using -M directly means running the compiler twice (even worse
113
- ## than renaming).
114
- if test -z "$gccflag"; then
115
- gccflag=-MD,
116
- fi
117
- "$@" -Wp,"$gccflag$tmpdepfile"
118
- stat=$?
119
- if test $stat -eq 0; then :
120
- else
121
- rm -f "$tmpdepfile"
122
- exit $stat
123
- fi
124
- rm -f "$depfile"
125
- echo "$object : \\" > "$depfile"
126
- alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
127
- ## The second -e expression handles DOS-style file names with drive letters.
128
- sed -e 's/^[^:]*: / /' \
129
- -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
130
- ## This next piece of magic avoids the `deleted header file' problem.
131
- ## The problem is that when a header file which appears in a .P file
132
- ## is deleted, the dependency causes make to die (because there is
133
- ## typically no way to rebuild the header). We avoid this by adding
134
- ## dummy dependencies for each header file. Too bad gcc doesn't do
135
- ## this for us directly.
136
- tr ' ' '
137
- ' < "$tmpdepfile" |
138
- ## Some versions of gcc put a space before the `:'. On the theory
139
- ## that the space means something, we add a space to the output as
140
- ## well.
141
- ## Some versions of the HPUX 10.20 sed can't process this invocation
142
- ## correctly. Breaking it into two sed invocations is a workaround.
143
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
144
- rm -f "$tmpdepfile"
145
- ;;
146
-
147
- hp)
148
- # This case exists only to let depend.m4 do its work. It works by
149
- # looking at the text of this script. This case will never be run,
150
- # since it is checked for above.
151
- exit 1
152
- ;;
153
-
154
- sgi)
155
- if test "$libtool" = yes; then
156
- "$@" "-Wp,-MDupdate,$tmpdepfile"
157
- else
158
- "$@" -MDupdate "$tmpdepfile"
159
- fi
160
- stat=$?
161
- if test $stat -eq 0; then :
162
- else
163
- rm -f "$tmpdepfile"
164
- exit $stat
165
- fi
166
- rm -f "$depfile"
167
-
168
- if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
169
- echo "$object : \\" > "$depfile"
170
-
171
- # Clip off the initial element (the dependent). Don't try to be
172
- # clever and replace this with sed code, as IRIX sed won't handle
173
- # lines with more than a fixed number of characters (4096 in
174
- # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
175
- # the IRIX cc adds comments like `#:fec' to the end of the
176
- # dependency line.
177
- tr ' ' '
178
- ' < "$tmpdepfile" \
179
- | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
180
- tr '
181
- ' ' ' >> $depfile
182
- echo >> $depfile
183
-
184
- # The second pass generates a dummy entry for each header file.
185
- tr ' ' '
186
- ' < "$tmpdepfile" \
187
- | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
188
- >> $depfile
189
- else
190
- # The sourcefile does not contain any dependencies, so just
191
- # store a dummy comment line, to avoid errors with the Makefile
192
- # "include basename.Plo" scheme.
193
- echo "#dummy" > "$depfile"
194
- fi
195
- rm -f "$tmpdepfile"
196
- ;;
197
-
198
- aix)
199
- # The C for AIX Compiler uses -M and outputs the dependencies
200
- # in a .u file. In older versions, this file always lives in the
201
- # current directory. Also, the AIX compiler puts `$object:' at the
202
- # start of each line; $object doesn't have directory information.
203
- # Version 6 uses the directory in both cases.
204
- stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'`
205
- tmpdepfile="$stripped.u"
206
- if test "$libtool" = yes; then
207
- "$@" -Wc,-M
208
- else
209
- "$@" -M
210
- fi
211
- stat=$?
212
-
213
- if test -f "$tmpdepfile"; then :
214
- else
215
- stripped=`echo "$stripped" | sed 's,^.*/,,'`
216
- tmpdepfile="$stripped.u"
217
- fi
218
-
219
- if test $stat -eq 0; then :
220
- else
221
- rm -f "$tmpdepfile"
222
- exit $stat
223
- fi
224
-
225
- if test -f "$tmpdepfile"; then
226
- outname="$stripped.o"
227
- # Each line is of the form `foo.o: dependent.h'.
228
- # Do two passes, one to just change these to
229
- # `$object: dependent.h' and one to simply `dependent.h:'.
230
- sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile"
231
- sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile"
232
- else
233
- # The sourcefile does not contain any dependencies, so just
234
- # store a dummy comment line, to avoid errors with the Makefile
235
- # "include basename.Plo" scheme.
236
- echo "#dummy" > "$depfile"
237
- fi
238
- rm -f "$tmpdepfile"
239
- ;;
240
-
241
- icc)
242
- # Intel's C compiler understands `-MD -MF file'. However on
243
- # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
244
- # ICC 7.0 will fill foo.d with something like
245
- # foo.o: sub/foo.c
246
- # foo.o: sub/foo.h
247
- # which is wrong. We want:
248
- # sub/foo.o: sub/foo.c
249
- # sub/foo.o: sub/foo.h
250
- # sub/foo.c:
251
- # sub/foo.h:
252
- # ICC 7.1 will output
253
- # foo.o: sub/foo.c sub/foo.h
254
- # and will wrap long lines using \ :
255
- # foo.o: sub/foo.c ... \
256
- # sub/foo.h ... \
257
- # ...
258
-
259
- "$@" -MD -MF "$tmpdepfile"
260
- stat=$?
261
- if test $stat -eq 0; then :
262
- else
263
- rm -f "$tmpdepfile"
264
- exit $stat
265
- fi
266
- rm -f "$depfile"
267
- # Each line is of the form `foo.o: dependent.h',
268
- # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
269
- # Do two passes, one to just change these to
270
- # `$object: dependent.h' and one to simply `dependent.h:'.
271
- sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
272
- # Some versions of the HPUX 10.20 sed can't process this invocation
273
- # correctly. Breaking it into two sed invocations is a workaround.
274
- sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
275
- sed -e 's/$/ :/' >> "$depfile"
276
- rm -f "$tmpdepfile"
277
- ;;
278
-
279
- tru64)
280
- # The Tru64 compiler uses -MD to generate dependencies as a side
281
- # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
282
- # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
283
- # dependencies in `foo.d' instead, so we check for that too.
284
- # Subdirectories are respected.
285
- dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
286
- test "x$dir" = "x$object" && dir=
287
- base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
288
-
289
- if test "$libtool" = yes; then
290
- # With Tru64 cc, shared objects can also be used to make a
291
- # static library. This mecanism is used in libtool 1.4 series to
292
- # handle both shared and static libraries in a single compilation.
293
- # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
294
- #
295
- # With libtool 1.5 this exception was removed, and libtool now
296
- # generates 2 separate objects for the 2 libraries. These two
297
- # compilations output dependencies in in $dir.libs/$base.o.d and
298
- # in $dir$base.o.d. We have to check for both files, because
299
- # one of the two compilations can be disabled. We should prefer
300
- # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
301
- # automatically cleaned when .libs/ is deleted, while ignoring
302
- # the former would cause a distcleancheck panic.
303
- tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
304
- tmpdepfile2=$dir$base.o.d # libtool 1.5
305
- tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
306
- tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
307
- "$@" -Wc,-MD
308
- else
309
- tmpdepfile1=$dir$base.o.d
310
- tmpdepfile2=$dir$base.d
311
- tmpdepfile3=$dir$base.d
312
- tmpdepfile4=$dir$base.d
313
- "$@" -MD
314
- fi
315
-
316
- stat=$?
317
- if test $stat -eq 0; then :
318
- else
319
- rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
320
- exit $stat
321
- fi
322
-
323
- for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
324
- do
325
- test -f "$tmpdepfile" && break
326
- done
327
- if test -f "$tmpdepfile"; then
328
- sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
329
- # That's a tab and a space in the [].
330
- sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
331
- else
332
- echo "#dummy" > "$depfile"
333
- fi
334
- rm -f "$tmpdepfile"
335
- ;;
336
-
337
- #nosideeffect)
338
- # This comment above is used by automake to tell side-effect
339
- # dependency tracking mechanisms from slower ones.
340
-
341
- dashmstdout)
342
- # Important note: in order to support this mode, a compiler *must*
343
- # always write the preprocessed file to stdout, regardless of -o.
344
- "$@" || exit $?
345
-
346
- # Remove the call to Libtool.
347
- if test "$libtool" = yes; then
348
- while test $1 != '--mode=compile'; do
349
- shift
350
- done
351
- shift
352
- fi
353
-
354
- # Remove `-o $object'.
355
- IFS=" "
356
- for arg
357
- do
358
- case $arg in
359
- -o)
360
- shift
361
- ;;
362
- $object)
363
- shift
364
- ;;
365
- *)
366
- set fnord "$@" "$arg"
367
- shift # fnord
368
- shift # $arg
369
- ;;
370
- esac
371
- done
372
-
373
- test -z "$dashmflag" && dashmflag=-M
374
- # Require at least two characters before searching for `:'
375
- # in the target name. This is to cope with DOS-style filenames:
376
- # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
377
- "$@" $dashmflag |
378
- sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
379
- rm -f "$depfile"
380
- cat < "$tmpdepfile" > "$depfile"
381
- tr ' ' '
382
- ' < "$tmpdepfile" | \
383
- ## Some versions of the HPUX 10.20 sed can't process this invocation
384
- ## correctly. Breaking it into two sed invocations is a workaround.
385
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
386
- rm -f "$tmpdepfile"
387
- ;;
388
-
389
- dashXmstdout)
390
- # This case only exists to satisfy depend.m4. It is never actually
391
- # run, as this mode is specially recognized in the preamble.
392
- exit 1
393
- ;;
394
-
395
- makedepend)
396
- "$@" || exit $?
397
- # Remove any Libtool call
398
- if test "$libtool" = yes; then
399
- while test $1 != '--mode=compile'; do
400
- shift
401
- done
402
- shift
403
- fi
404
- # X makedepend
405
- shift
406
- cleared=no
407
- for arg in "$@"; do
408
- case $cleared in
409
- no)
410
- set ""; shift
411
- cleared=yes ;;
412
- esac
413
- case "$arg" in
414
- -D*|-I*)
415
- set fnord "$@" "$arg"; shift ;;
416
- # Strip any option that makedepend may not understand. Remove
417
- # the object too, otherwise makedepend will parse it as a source file.
418
- -*|$object)
419
- ;;
420
- *)
421
- set fnord "$@" "$arg"; shift ;;
422
- esac
423
- done
424
- obj_suffix="`echo $object | sed 's/^.*\././'`"
425
- touch "$tmpdepfile"
426
- ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
427
- rm -f "$depfile"
428
- cat < "$tmpdepfile" > "$depfile"
429
- sed '1,2d' "$tmpdepfile" | tr ' ' '
430
- ' | \
431
- ## Some versions of the HPUX 10.20 sed can't process this invocation
432
- ## correctly. Breaking it into two sed invocations is a workaround.
433
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
434
- rm -f "$tmpdepfile" "$tmpdepfile".bak
435
- ;;
436
-
437
- cpp)
438
- # Important note: in order to support this mode, a compiler *must*
439
- # always write the preprocessed file to stdout.
440
- "$@" || exit $?
441
-
442
- # Remove the call to Libtool.
443
- if test "$libtool" = yes; then
444
- while test $1 != '--mode=compile'; do
445
- shift
446
- done
447
- shift
448
- fi
449
-
450
- # Remove `-o $object'.
451
- IFS=" "
452
- for arg
453
- do
454
- case $arg in
455
- -o)
456
- shift
457
- ;;
458
- $object)
459
- shift
460
- ;;
461
- *)
462
- set fnord "$@" "$arg"
463
- shift # fnord
464
- shift # $arg
465
- ;;
466
- esac
467
- done
468
-
469
- "$@" -E |
470
- sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
471
- -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
472
- sed '$ s: \\$::' > "$tmpdepfile"
473
- rm -f "$depfile"
474
- echo "$object : \\" > "$depfile"
475
- cat < "$tmpdepfile" >> "$depfile"
476
- sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
477
- rm -f "$tmpdepfile"
478
- ;;
479
-
480
- msvisualcpp)
481
- # Important note: in order to support this mode, a compiler *must*
482
- # always write the preprocessed file to stdout, regardless of -o,
483
- # because we must use -o when running libtool.
484
- "$@" || exit $?
485
- IFS=" "
486
- for arg
487
- do
488
- case "$arg" in
489
- "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
490
- set fnord "$@"
491
- shift
492
- shift
493
- ;;
494
- *)
495
- set fnord "$@" "$arg"
496
- shift
497
- shift
498
- ;;
499
- esac
500
- done
501
- "$@" -E |
502
- sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
503
- rm -f "$depfile"
504
- echo "$object : \\" > "$depfile"
505
- . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
506
- echo " " >> "$depfile"
507
- . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
508
- rm -f "$tmpdepfile"
509
- ;;
510
-
511
- none)
512
- exec "$@"
513
- ;;
514
-
515
- *)
516
- echo "Unknown depmode $depmode" 1>&2
517
- exit 1
518
- ;;
519
- esac
520
-
521
- exit 0
522
-
523
- # Local Variables:
524
- # mode: shell-script
525
- # sh-indentation: 2
526
- # eval: (add-hook 'write-file-hooks 'time-stamp)
527
- # time-stamp-start: "scriptversion="
528
- # time-stamp-format: "%:y-%02m-%02d.%02H"
529
- # time-stamp-end: "$"
530
- # End: