pf2 0.1.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (107) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +29 -2
  3. data/Cargo.lock +650 -0
  4. data/Cargo.toml +3 -0
  5. data/README.md +110 -13
  6. data/Rakefile +8 -0
  7. data/crates/backtrace-sys2/.gitignore +1 -0
  8. data/crates/backtrace-sys2/Cargo.toml +9 -0
  9. data/crates/backtrace-sys2/build.rs +48 -0
  10. data/crates/backtrace-sys2/src/lib.rs +5 -0
  11. data/crates/backtrace-sys2/src/libbacktrace/.gitignore +15 -0
  12. data/crates/backtrace-sys2/src/libbacktrace/Isaac.Newton-Opticks.txt +9286 -0
  13. data/crates/backtrace-sys2/src/libbacktrace/LICENSE +29 -0
  14. data/crates/backtrace-sys2/src/libbacktrace/Makefile.am +623 -0
  15. data/crates/backtrace-sys2/src/libbacktrace/Makefile.in +2666 -0
  16. data/crates/backtrace-sys2/src/libbacktrace/README.md +36 -0
  17. data/crates/backtrace-sys2/src/libbacktrace/aclocal.m4 +864 -0
  18. data/crates/backtrace-sys2/src/libbacktrace/alloc.c +167 -0
  19. data/crates/backtrace-sys2/src/libbacktrace/allocfail.c +136 -0
  20. data/crates/backtrace-sys2/src/libbacktrace/allocfail.sh +104 -0
  21. data/crates/backtrace-sys2/src/libbacktrace/atomic.c +113 -0
  22. data/crates/backtrace-sys2/src/libbacktrace/backtrace-supported.h.in +66 -0
  23. data/crates/backtrace-sys2/src/libbacktrace/backtrace.c +129 -0
  24. data/crates/backtrace-sys2/src/libbacktrace/backtrace.h +189 -0
  25. data/crates/backtrace-sys2/src/libbacktrace/btest.c +501 -0
  26. data/crates/backtrace-sys2/src/libbacktrace/compile +348 -0
  27. data/crates/backtrace-sys2/src/libbacktrace/config/enable.m4 +38 -0
  28. data/crates/backtrace-sys2/src/libbacktrace/config/lead-dot.m4 +31 -0
  29. data/crates/backtrace-sys2/src/libbacktrace/config/libtool.m4 +7436 -0
  30. data/crates/backtrace-sys2/src/libbacktrace/config/ltoptions.m4 +369 -0
  31. data/crates/backtrace-sys2/src/libbacktrace/config/ltsugar.m4 +123 -0
  32. data/crates/backtrace-sys2/src/libbacktrace/config/ltversion.m4 +23 -0
  33. data/crates/backtrace-sys2/src/libbacktrace/config/lt~obsolete.m4 +98 -0
  34. data/crates/backtrace-sys2/src/libbacktrace/config/multi.m4 +68 -0
  35. data/crates/backtrace-sys2/src/libbacktrace/config/override.m4 +117 -0
  36. data/crates/backtrace-sys2/src/libbacktrace/config/unwind_ipinfo.m4 +37 -0
  37. data/crates/backtrace-sys2/src/libbacktrace/config/warnings.m4 +227 -0
  38. data/crates/backtrace-sys2/src/libbacktrace/config.guess +1700 -0
  39. data/crates/backtrace-sys2/src/libbacktrace/config.h.in +182 -0
  40. data/crates/backtrace-sys2/src/libbacktrace/config.sub +1885 -0
  41. data/crates/backtrace-sys2/src/libbacktrace/configure +15740 -0
  42. data/crates/backtrace-sys2/src/libbacktrace/configure.ac +613 -0
  43. data/crates/backtrace-sys2/src/libbacktrace/dwarf.c +4402 -0
  44. data/crates/backtrace-sys2/src/libbacktrace/edtest.c +120 -0
  45. data/crates/backtrace-sys2/src/libbacktrace/edtest2.c +43 -0
  46. data/crates/backtrace-sys2/src/libbacktrace/elf.c +7443 -0
  47. data/crates/backtrace-sys2/src/libbacktrace/fileline.c +407 -0
  48. data/crates/backtrace-sys2/src/libbacktrace/filenames.h +52 -0
  49. data/crates/backtrace-sys2/src/libbacktrace/filetype.awk +13 -0
  50. data/crates/backtrace-sys2/src/libbacktrace/install-debuginfo-for-buildid.sh.in +65 -0
  51. data/crates/backtrace-sys2/src/libbacktrace/install-sh +501 -0
  52. data/crates/backtrace-sys2/src/libbacktrace/instrumented_alloc.c +114 -0
  53. data/crates/backtrace-sys2/src/libbacktrace/internal.h +389 -0
  54. data/crates/backtrace-sys2/src/libbacktrace/libtool.m4 +7436 -0
  55. data/crates/backtrace-sys2/src/libbacktrace/ltmain.sh +8636 -0
  56. data/crates/backtrace-sys2/src/libbacktrace/ltoptions.m4 +369 -0
  57. data/crates/backtrace-sys2/src/libbacktrace/ltsugar.m4 +123 -0
  58. data/crates/backtrace-sys2/src/libbacktrace/ltversion.m4 +23 -0
  59. data/crates/backtrace-sys2/src/libbacktrace/lt~obsolete.m4 +98 -0
  60. data/crates/backtrace-sys2/src/libbacktrace/macho.c +1355 -0
  61. data/crates/backtrace-sys2/src/libbacktrace/missing +215 -0
  62. data/crates/backtrace-sys2/src/libbacktrace/mmap.c +331 -0
  63. data/crates/backtrace-sys2/src/libbacktrace/mmapio.c +110 -0
  64. data/crates/backtrace-sys2/src/libbacktrace/move-if-change +83 -0
  65. data/crates/backtrace-sys2/src/libbacktrace/mtest.c +410 -0
  66. data/crates/backtrace-sys2/src/libbacktrace/nounwind.c +66 -0
  67. data/crates/backtrace-sys2/src/libbacktrace/pecoff.c +957 -0
  68. data/crates/backtrace-sys2/src/libbacktrace/posix.c +104 -0
  69. data/crates/backtrace-sys2/src/libbacktrace/print.c +92 -0
  70. data/crates/backtrace-sys2/src/libbacktrace/read.c +110 -0
  71. data/crates/backtrace-sys2/src/libbacktrace/simple.c +108 -0
  72. data/crates/backtrace-sys2/src/libbacktrace/sort.c +108 -0
  73. data/crates/backtrace-sys2/src/libbacktrace/state.c +72 -0
  74. data/crates/backtrace-sys2/src/libbacktrace/stest.c +137 -0
  75. data/crates/backtrace-sys2/src/libbacktrace/test-driver +148 -0
  76. data/crates/backtrace-sys2/src/libbacktrace/test_format.c +55 -0
  77. data/crates/backtrace-sys2/src/libbacktrace/testlib.c +234 -0
  78. data/crates/backtrace-sys2/src/libbacktrace/testlib.h +110 -0
  79. data/crates/backtrace-sys2/src/libbacktrace/ttest.c +161 -0
  80. data/crates/backtrace-sys2/src/libbacktrace/unittest.c +92 -0
  81. data/crates/backtrace-sys2/src/libbacktrace/unknown.c +65 -0
  82. data/crates/backtrace-sys2/src/libbacktrace/xcoff.c +1606 -0
  83. data/crates/backtrace-sys2/src/libbacktrace/xztest.c +508 -0
  84. data/crates/backtrace-sys2/src/libbacktrace/zstdtest.c +523 -0
  85. data/crates/backtrace-sys2/src/libbacktrace/ztest.c +541 -0
  86. data/ext/pf2/Cargo.toml +25 -0
  87. data/ext/pf2/build.rs +3 -0
  88. data/ext/pf2/extconf.rb +6 -1
  89. data/ext/pf2/src/backtrace.rs +126 -0
  90. data/ext/pf2/src/lib.rs +15 -0
  91. data/ext/pf2/src/profile.rs +65 -0
  92. data/ext/pf2/src/profile_serializer.rs +204 -0
  93. data/ext/pf2/src/ringbuffer.rs +152 -0
  94. data/ext/pf2/src/ruby_init.rs +74 -0
  95. data/ext/pf2/src/sample.rs +66 -0
  96. data/ext/pf2/src/siginfo_t.c +5 -0
  97. data/ext/pf2/src/signal_scheduler/configuration.rs +31 -0
  98. data/ext/pf2/src/signal_scheduler/timer_installer.rs +199 -0
  99. data/ext/pf2/src/signal_scheduler.rs +311 -0
  100. data/ext/pf2/src/timer_thread_scheduler.rs +319 -0
  101. data/ext/pf2/src/util.rs +30 -0
  102. data/lib/pf2/cli.rb +1 -1
  103. data/lib/pf2/reporter.rb +48 -16
  104. data/lib/pf2/version.rb +1 -1
  105. data/lib/pf2.rb +20 -5
  106. metadata +128 -5
  107. data/ext/pf2/pf2.c +0 -246
@@ -0,0 +1,864 @@
1
+ # generated automatically by aclocal 1.15.1 -*- Autoconf -*-
2
+
3
+ # Copyright (C) 1996-2017 Free Software Foundation, Inc.
4
+
5
+ # This file is free software; the Free Software Foundation
6
+ # gives unlimited permission to copy and/or distribute it,
7
+ # with or without modifications, as long as this notice is preserved.
8
+
9
+ # This program is distributed in the hope that it will be useful,
10
+ # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
11
+ # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
12
+ # PARTICULAR PURPOSE.
13
+
14
+ m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
15
+ m4_ifndef([AC_AUTOCONF_VERSION],
16
+ [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
17
+ m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
18
+ [m4_warning([this file was generated for autoconf 2.69.
19
+ You have another version of autoconf. It may work, but is not guaranteed to.
20
+ If you have problems, you may need to regenerate the build system entirely.
21
+ To do so, use the procedure documented by the package, typically 'autoreconf'.])])
22
+
23
+ # Copyright (C) 2002-2017 Free Software Foundation, Inc.
24
+ #
25
+ # This file is free software; the Free Software Foundation
26
+ # gives unlimited permission to copy and/or distribute it,
27
+ # with or without modifications, as long as this notice is preserved.
28
+
29
+ # AM_AUTOMAKE_VERSION(VERSION)
30
+ # ----------------------------
31
+ # Automake X.Y traces this macro to ensure aclocal.m4 has been
32
+ # generated from the m4 files accompanying Automake X.Y.
33
+ # (This private macro should not be called outside this file.)
34
+ AC_DEFUN([AM_AUTOMAKE_VERSION],
35
+ [am__api_version='1.15'
36
+ dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
37
+ dnl require some minimum version. Point them to the right macro.
38
+ m4_if([$1], [1.15.1], [],
39
+ [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
40
+ ])
41
+
42
+ # _AM_AUTOCONF_VERSION(VERSION)
43
+ # -----------------------------
44
+ # aclocal traces this macro to find the Autoconf version.
45
+ # This is a private macro too. Using m4_define simplifies
46
+ # the logic in aclocal, which can simply ignore this definition.
47
+ m4_define([_AM_AUTOCONF_VERSION], [])
48
+
49
+ # AM_SET_CURRENT_AUTOMAKE_VERSION
50
+ # -------------------------------
51
+ # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
52
+ # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
53
+ AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
54
+ [AM_AUTOMAKE_VERSION([1.15.1])dnl
55
+ m4_ifndef([AC_AUTOCONF_VERSION],
56
+ [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
57
+ _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
58
+
59
+ # AM_AUX_DIR_EXPAND -*- Autoconf -*-
60
+
61
+ # Copyright (C) 2001-2017 Free Software Foundation, Inc.
62
+ #
63
+ # This file is free software; the Free Software Foundation
64
+ # gives unlimited permission to copy and/or distribute it,
65
+ # with or without modifications, as long as this notice is preserved.
66
+
67
+ # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
68
+ # $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to
69
+ # '$srcdir', '$srcdir/..', or '$srcdir/../..'.
70
+ #
71
+ # Of course, Automake must honor this variable whenever it calls a
72
+ # tool from the auxiliary directory. The problem is that $srcdir (and
73
+ # therefore $ac_aux_dir as well) can be either absolute or relative,
74
+ # depending on how configure is run. This is pretty annoying, since
75
+ # it makes $ac_aux_dir quite unusable in subdirectories: in the top
76
+ # source directory, any form will work fine, but in subdirectories a
77
+ # relative path needs to be adjusted first.
78
+ #
79
+ # $ac_aux_dir/missing
80
+ # fails when called from a subdirectory if $ac_aux_dir is relative
81
+ # $top_srcdir/$ac_aux_dir/missing
82
+ # fails if $ac_aux_dir is absolute,
83
+ # fails when called from a subdirectory in a VPATH build with
84
+ # a relative $ac_aux_dir
85
+ #
86
+ # The reason of the latter failure is that $top_srcdir and $ac_aux_dir
87
+ # are both prefixed by $srcdir. In an in-source build this is usually
88
+ # harmless because $srcdir is '.', but things will broke when you
89
+ # start a VPATH build or use an absolute $srcdir.
90
+ #
91
+ # So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
92
+ # iff we strip the leading $srcdir from $ac_aux_dir. That would be:
93
+ # am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
94
+ # and then we would define $MISSING as
95
+ # MISSING="\${SHELL} $am_aux_dir/missing"
96
+ # This will work as long as MISSING is not called from configure, because
97
+ # unfortunately $(top_srcdir) has no meaning in configure.
98
+ # However there are other variables, like CC, which are often used in
99
+ # configure, and could therefore not use this "fixed" $ac_aux_dir.
100
+ #
101
+ # Another solution, used here, is to always expand $ac_aux_dir to an
102
+ # absolute PATH. The drawback is that using absolute paths prevent a
103
+ # configured tree to be moved without reconfiguration.
104
+
105
+ AC_DEFUN([AM_AUX_DIR_EXPAND],
106
+ [AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
107
+ # Expand $ac_aux_dir to an absolute path.
108
+ am_aux_dir=`cd "$ac_aux_dir" && pwd`
109
+ ])
110
+
111
+ # AM_CONDITIONAL -*- Autoconf -*-
112
+
113
+ # Copyright (C) 1997-2017 Free Software Foundation, Inc.
114
+ #
115
+ # This file is free software; the Free Software Foundation
116
+ # gives unlimited permission to copy and/or distribute it,
117
+ # with or without modifications, as long as this notice is preserved.
118
+
119
+ # AM_CONDITIONAL(NAME, SHELL-CONDITION)
120
+ # -------------------------------------
121
+ # Define a conditional.
122
+ AC_DEFUN([AM_CONDITIONAL],
123
+ [AC_PREREQ([2.52])dnl
124
+ m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
125
+ [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
126
+ AC_SUBST([$1_TRUE])dnl
127
+ AC_SUBST([$1_FALSE])dnl
128
+ _AM_SUBST_NOTMAKE([$1_TRUE])dnl
129
+ _AM_SUBST_NOTMAKE([$1_FALSE])dnl
130
+ m4_define([_AM_COND_VALUE_$1], [$2])dnl
131
+ if $2; then
132
+ $1_TRUE=
133
+ $1_FALSE='#'
134
+ else
135
+ $1_TRUE='#'
136
+ $1_FALSE=
137
+ fi
138
+ AC_CONFIG_COMMANDS_PRE(
139
+ [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
140
+ AC_MSG_ERROR([[conditional "$1" was never defined.
141
+ Usually this means the macro was only invoked conditionally.]])
142
+ fi])])
143
+
144
+ # Do all the work for Automake. -*- Autoconf -*-
145
+
146
+ # Copyright (C) 1996-2017 Free Software Foundation, Inc.
147
+ #
148
+ # This file is free software; the Free Software Foundation
149
+ # gives unlimited permission to copy and/or distribute it,
150
+ # with or without modifications, as long as this notice is preserved.
151
+
152
+ # This macro actually does too much. Some checks are only needed if
153
+ # your package does certain things. But this isn't really a big deal.
154
+
155
+ dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
156
+ m4_define([AC_PROG_CC],
157
+ m4_defn([AC_PROG_CC])
158
+ [_AM_PROG_CC_C_O
159
+ ])
160
+
161
+ # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
162
+ # AM_INIT_AUTOMAKE([OPTIONS])
163
+ # -----------------------------------------------
164
+ # The call with PACKAGE and VERSION arguments is the old style
165
+ # call (pre autoconf-2.50), which is being phased out. PACKAGE
166
+ # and VERSION should now be passed to AC_INIT and removed from
167
+ # the call to AM_INIT_AUTOMAKE.
168
+ # We support both call styles for the transition. After
169
+ # the next Automake release, Autoconf can make the AC_INIT
170
+ # arguments mandatory, and then we can depend on a new Autoconf
171
+ # release and drop the old call support.
172
+ AC_DEFUN([AM_INIT_AUTOMAKE],
173
+ [AC_PREREQ([2.65])dnl
174
+ dnl Autoconf wants to disallow AM_ names. We explicitly allow
175
+ dnl the ones we care about.
176
+ m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
177
+ AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
178
+ AC_REQUIRE([AC_PROG_INSTALL])dnl
179
+ if test "`cd $srcdir && pwd`" != "`pwd`"; then
180
+ # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
181
+ # is not polluted with repeated "-I."
182
+ AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
183
+ # test to see if srcdir already configured
184
+ if test -f $srcdir/config.status; then
185
+ AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
186
+ fi
187
+ fi
188
+
189
+ # test whether we have cygpath
190
+ if test -z "$CYGPATH_W"; then
191
+ if (cygpath --version) >/dev/null 2>/dev/null; then
192
+ CYGPATH_W='cygpath -w'
193
+ else
194
+ CYGPATH_W=echo
195
+ fi
196
+ fi
197
+ AC_SUBST([CYGPATH_W])
198
+
199
+ # Define the identity of the package.
200
+ dnl Distinguish between old-style and new-style calls.
201
+ m4_ifval([$2],
202
+ [AC_DIAGNOSE([obsolete],
203
+ [$0: two- and three-arguments forms are deprecated.])
204
+ m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
205
+ AC_SUBST([PACKAGE], [$1])dnl
206
+ AC_SUBST([VERSION], [$2])],
207
+ [_AM_SET_OPTIONS([$1])dnl
208
+ dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
209
+ m4_if(
210
+ m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
211
+ [ok:ok],,
212
+ [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
213
+ AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
214
+ AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
215
+
216
+ _AM_IF_OPTION([no-define],,
217
+ [AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
218
+ AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
219
+
220
+ # Some tools Automake needs.
221
+ AC_REQUIRE([AM_SANITY_CHECK])dnl
222
+ AC_REQUIRE([AC_ARG_PROGRAM])dnl
223
+ AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
224
+ AM_MISSING_PROG([AUTOCONF], [autoconf])
225
+ AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
226
+ AM_MISSING_PROG([AUTOHEADER], [autoheader])
227
+ AM_MISSING_PROG([MAKEINFO], [makeinfo])
228
+ AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
229
+ AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
230
+ AC_REQUIRE([AC_PROG_MKDIR_P])dnl
231
+ # For better backward compatibility. To be removed once Automake 1.9.x
232
+ # dies out for good. For more background, see:
233
+ # <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
234
+ # <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
235
+ AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
236
+ # We need awk for the "check" target (and possibly the TAP driver). The
237
+ # system "awk" is bad on some platforms.
238
+ AC_REQUIRE([AC_PROG_AWK])dnl
239
+ AC_REQUIRE([AC_PROG_MAKE_SET])dnl
240
+ AC_REQUIRE([AM_SET_LEADING_DOT])dnl
241
+ _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
242
+ [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
243
+ [_AM_PROG_TAR([v7])])])
244
+ _AM_IF_OPTION([no-dependencies],,
245
+ [AC_PROVIDE_IFELSE([AC_PROG_CC],
246
+ [_AM_DEPENDENCIES([CC])],
247
+ [m4_define([AC_PROG_CC],
248
+ m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
249
+ AC_PROVIDE_IFELSE([AC_PROG_CXX],
250
+ [_AM_DEPENDENCIES([CXX])],
251
+ [m4_define([AC_PROG_CXX],
252
+ m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
253
+ AC_PROVIDE_IFELSE([AC_PROG_OBJC],
254
+ [_AM_DEPENDENCIES([OBJC])],
255
+ [m4_define([AC_PROG_OBJC],
256
+ m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
257
+ AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
258
+ [_AM_DEPENDENCIES([OBJCXX])],
259
+ [m4_define([AC_PROG_OBJCXX],
260
+ m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
261
+ ])
262
+ AC_REQUIRE([AM_SILENT_RULES])dnl
263
+ dnl The testsuite driver may need to know about EXEEXT, so add the
264
+ dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This
265
+ dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
266
+ AC_CONFIG_COMMANDS_PRE(dnl
267
+ [m4_provide_if([_AM_COMPILER_EXEEXT],
268
+ [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
269
+
270
+ # POSIX will say in a future version that running "rm -f" with no argument
271
+ # is OK; and we want to be able to make that assumption in our Makefile
272
+ # recipes. So use an aggressive probe to check that the usage we want is
273
+ # actually supported "in the wild" to an acceptable degree.
274
+ # See automake bug#10828.
275
+ # To make any issue more visible, cause the running configure to be aborted
276
+ # by default if the 'rm' program in use doesn't match our expectations; the
277
+ # user can still override this though.
278
+ if rm -f && rm -fr && rm -rf; then : OK; else
279
+ cat >&2 <<'END'
280
+ Oops!
281
+
282
+ Your 'rm' program seems unable to run without file operands specified
283
+ on the command line, even when the '-f' option is present. This is contrary
284
+ to the behaviour of most rm programs out there, and not conforming with
285
+ the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
286
+
287
+ Please tell bug-automake@gnu.org about your system, including the value
288
+ of your $PATH and any error possibly output before this message. This
289
+ can help us improve future automake versions.
290
+
291
+ END
292
+ if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
293
+ echo 'Configuration will proceed anyway, since you have set the' >&2
294
+ echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
295
+ echo >&2
296
+ else
297
+ cat >&2 <<'END'
298
+ Aborting the configuration process, to ensure you take notice of the issue.
299
+
300
+ You can download and install GNU coreutils to get an 'rm' implementation
301
+ that behaves properly: <http://www.gnu.org/software/coreutils/>.
302
+
303
+ If you want to complete the configuration process using your problematic
304
+ 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
305
+ to "yes", and re-run configure.
306
+
307
+ END
308
+ AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
309
+ fi
310
+ fi
311
+ dnl The trailing newline in this macro's definition is deliberate, for
312
+ dnl backward compatibility and to allow trailing 'dnl'-style comments
313
+ dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
314
+ ])
315
+
316
+ dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
317
+ dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
318
+ dnl mangled by Autoconf and run in a shell conditional statement.
319
+ m4_define([_AC_COMPILER_EXEEXT],
320
+ m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
321
+
322
+ # When config.status generates a header, we must update the stamp-h file.
323
+ # This file resides in the same directory as the config header
324
+ # that is generated. The stamp files are numbered to have different names.
325
+
326
+ # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
327
+ # loop where config.status creates the headers, so we can generate
328
+ # our stamp files there.
329
+ AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
330
+ [# Compute $1's index in $config_headers.
331
+ _am_arg=$1
332
+ _am_stamp_count=1
333
+ for _am_header in $config_headers :; do
334
+ case $_am_header in
335
+ $_am_arg | $_am_arg:* )
336
+ break ;;
337
+ * )
338
+ _am_stamp_count=`expr $_am_stamp_count + 1` ;;
339
+ esac
340
+ done
341
+ echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
342
+
343
+ # Copyright (C) 2001-2017 Free Software Foundation, Inc.
344
+ #
345
+ # This file is free software; the Free Software Foundation
346
+ # gives unlimited permission to copy and/or distribute it,
347
+ # with or without modifications, as long as this notice is preserved.
348
+
349
+ # AM_PROG_INSTALL_SH
350
+ # ------------------
351
+ # Define $install_sh.
352
+ AC_DEFUN([AM_PROG_INSTALL_SH],
353
+ [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
354
+ if test x"${install_sh+set}" != xset; then
355
+ case $am_aux_dir in
356
+ *\ * | *\ *)
357
+ install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
358
+ *)
359
+ install_sh="\${SHELL} $am_aux_dir/install-sh"
360
+ esac
361
+ fi
362
+ AC_SUBST([install_sh])])
363
+
364
+ # Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
365
+ # From Jim Meyering
366
+
367
+ # Copyright (C) 1996-2017 Free Software Foundation, Inc.
368
+ #
369
+ # This file is free software; the Free Software Foundation
370
+ # gives unlimited permission to copy and/or distribute it,
371
+ # with or without modifications, as long as this notice is preserved.
372
+
373
+ # AM_MAINTAINER_MODE([DEFAULT-MODE])
374
+ # ----------------------------------
375
+ # Control maintainer-specific portions of Makefiles.
376
+ # Default is to disable them, unless 'enable' is passed literally.
377
+ # For symmetry, 'disable' may be passed as well. Anyway, the user
378
+ # can override the default with the --enable/--disable switch.
379
+ AC_DEFUN([AM_MAINTAINER_MODE],
380
+ [m4_case(m4_default([$1], [disable]),
381
+ [enable], [m4_define([am_maintainer_other], [disable])],
382
+ [disable], [m4_define([am_maintainer_other], [enable])],
383
+ [m4_define([am_maintainer_other], [enable])
384
+ m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])])
385
+ AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
386
+ dnl maintainer-mode's default is 'disable' unless 'enable' is passed
387
+ AC_ARG_ENABLE([maintainer-mode],
388
+ [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode],
389
+ am_maintainer_other[ make rules and dependencies not useful
390
+ (and sometimes confusing) to the casual installer])],
391
+ [USE_MAINTAINER_MODE=$enableval],
392
+ [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
393
+ AC_MSG_RESULT([$USE_MAINTAINER_MODE])
394
+ AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
395
+ MAINT=$MAINTAINER_MODE_TRUE
396
+ AC_SUBST([MAINT])dnl
397
+ ]
398
+ )
399
+
400
+ # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
401
+
402
+ # Copyright (C) 1997-2017 Free Software Foundation, Inc.
403
+ #
404
+ # This file is free software; the Free Software Foundation
405
+ # gives unlimited permission to copy and/or distribute it,
406
+ # with or without modifications, as long as this notice is preserved.
407
+
408
+ # AM_MISSING_PROG(NAME, PROGRAM)
409
+ # ------------------------------
410
+ AC_DEFUN([AM_MISSING_PROG],
411
+ [AC_REQUIRE([AM_MISSING_HAS_RUN])
412
+ $1=${$1-"${am_missing_run}$2"}
413
+ AC_SUBST($1)])
414
+
415
+ # AM_MISSING_HAS_RUN
416
+ # ------------------
417
+ # Define MISSING if not defined so far and test if it is modern enough.
418
+ # If it is, set am_missing_run to use it, otherwise, to nothing.
419
+ AC_DEFUN([AM_MISSING_HAS_RUN],
420
+ [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
421
+ AC_REQUIRE_AUX_FILE([missing])dnl
422
+ if test x"${MISSING+set}" != xset; then
423
+ case $am_aux_dir in
424
+ *\ * | *\ *)
425
+ MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
426
+ *)
427
+ MISSING="\${SHELL} $am_aux_dir/missing" ;;
428
+ esac
429
+ fi
430
+ # Use eval to expand $SHELL
431
+ if eval "$MISSING --is-lightweight"; then
432
+ am_missing_run="$MISSING "
433
+ else
434
+ am_missing_run=
435
+ AC_MSG_WARN(['missing' script is too old or missing])
436
+ fi
437
+ ])
438
+
439
+ # Helper functions for option handling. -*- Autoconf -*-
440
+
441
+ # Copyright (C) 2001-2017 Free Software Foundation, Inc.
442
+ #
443
+ # This file is free software; the Free Software Foundation
444
+ # gives unlimited permission to copy and/or distribute it,
445
+ # with or without modifications, as long as this notice is preserved.
446
+
447
+ # _AM_MANGLE_OPTION(NAME)
448
+ # -----------------------
449
+ AC_DEFUN([_AM_MANGLE_OPTION],
450
+ [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
451
+
452
+ # _AM_SET_OPTION(NAME)
453
+ # --------------------
454
+ # Set option NAME. Presently that only means defining a flag for this option.
455
+ AC_DEFUN([_AM_SET_OPTION],
456
+ [m4_define(_AM_MANGLE_OPTION([$1]), [1])])
457
+
458
+ # _AM_SET_OPTIONS(OPTIONS)
459
+ # ------------------------
460
+ # OPTIONS is a space-separated list of Automake options.
461
+ AC_DEFUN([_AM_SET_OPTIONS],
462
+ [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
463
+
464
+ # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
465
+ # -------------------------------------------
466
+ # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
467
+ AC_DEFUN([_AM_IF_OPTION],
468
+ [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
469
+
470
+ # Copyright (C) 1999-2017 Free Software Foundation, Inc.
471
+ #
472
+ # This file is free software; the Free Software Foundation
473
+ # gives unlimited permission to copy and/or distribute it,
474
+ # with or without modifications, as long as this notice is preserved.
475
+
476
+ # _AM_PROG_CC_C_O
477
+ # ---------------
478
+ # Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC
479
+ # to automatically call this.
480
+ AC_DEFUN([_AM_PROG_CC_C_O],
481
+ [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
482
+ AC_REQUIRE_AUX_FILE([compile])dnl
483
+ AC_LANG_PUSH([C])dnl
484
+ AC_CACHE_CHECK(
485
+ [whether $CC understands -c and -o together],
486
+ [am_cv_prog_cc_c_o],
487
+ [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
488
+ # Make sure it works both with $CC and with simple cc.
489
+ # Following AC_PROG_CC_C_O, we do the test twice because some
490
+ # compilers refuse to overwrite an existing .o file with -o,
491
+ # though they will create one.
492
+ am_cv_prog_cc_c_o=yes
493
+ for am_i in 1 2; do
494
+ if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
495
+ && test -f conftest2.$ac_objext; then
496
+ : OK
497
+ else
498
+ am_cv_prog_cc_c_o=no
499
+ break
500
+ fi
501
+ done
502
+ rm -f core conftest*
503
+ unset am_i])
504
+ if test "$am_cv_prog_cc_c_o" != yes; then
505
+ # Losing compiler, so override with the script.
506
+ # FIXME: It is wrong to rewrite CC.
507
+ # But if we don't then we get into trouble of one sort or another.
508
+ # A longer-term fix would be to have automake use am__CC in this case,
509
+ # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
510
+ CC="$am_aux_dir/compile $CC"
511
+ fi
512
+ AC_LANG_POP([C])])
513
+
514
+ # For backward compatibility.
515
+ AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
516
+
517
+ # Copyright (C) 2001-2017 Free Software Foundation, Inc.
518
+ #
519
+ # This file is free software; the Free Software Foundation
520
+ # gives unlimited permission to copy and/or distribute it,
521
+ # with or without modifications, as long as this notice is preserved.
522
+
523
+ # AM_RUN_LOG(COMMAND)
524
+ # -------------------
525
+ # Run COMMAND, save the exit status in ac_status, and log it.
526
+ # (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
527
+ AC_DEFUN([AM_RUN_LOG],
528
+ [{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
529
+ ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
530
+ ac_status=$?
531
+ echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
532
+ (exit $ac_status); }])
533
+
534
+ # Check to make sure that the build environment is sane. -*- Autoconf -*-
535
+
536
+ # Copyright (C) 1996-2017 Free Software Foundation, Inc.
537
+ #
538
+ # This file is free software; the Free Software Foundation
539
+ # gives unlimited permission to copy and/or distribute it,
540
+ # with or without modifications, as long as this notice is preserved.
541
+
542
+ # AM_SANITY_CHECK
543
+ # ---------------
544
+ AC_DEFUN([AM_SANITY_CHECK],
545
+ [AC_MSG_CHECKING([whether build environment is sane])
546
+ # Reject unsafe characters in $srcdir or the absolute working directory
547
+ # name. Accept space and tab only in the latter.
548
+ am_lf='
549
+ '
550
+ case `pwd` in
551
+ *[[\\\"\#\$\&\'\`$am_lf]]*)
552
+ AC_MSG_ERROR([unsafe absolute working directory name]);;
553
+ esac
554
+ case $srcdir in
555
+ *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
556
+ AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
557
+ esac
558
+
559
+ # Do 'set' in a subshell so we don't clobber the current shell's
560
+ # arguments. Must try -L first in case configure is actually a
561
+ # symlink; some systems play weird games with the mod time of symlinks
562
+ # (eg FreeBSD returns the mod time of the symlink's containing
563
+ # directory).
564
+ if (
565
+ am_has_slept=no
566
+ for am_try in 1 2; do
567
+ echo "timestamp, slept: $am_has_slept" > conftest.file
568
+ set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
569
+ if test "$[*]" = "X"; then
570
+ # -L didn't work.
571
+ set X `ls -t "$srcdir/configure" conftest.file`
572
+ fi
573
+ if test "$[*]" != "X $srcdir/configure conftest.file" \
574
+ && test "$[*]" != "X conftest.file $srcdir/configure"; then
575
+
576
+ # If neither matched, then we have a broken ls. This can happen
577
+ # if, for instance, CONFIG_SHELL is bash and it inherits a
578
+ # broken ls alias from the environment. This has actually
579
+ # happened. Such a system could not be considered "sane".
580
+ AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
581
+ alias in your environment])
582
+ fi
583
+ if test "$[2]" = conftest.file || test $am_try -eq 2; then
584
+ break
585
+ fi
586
+ # Just in case.
587
+ sleep 1
588
+ am_has_slept=yes
589
+ done
590
+ test "$[2]" = conftest.file
591
+ )
592
+ then
593
+ # Ok.
594
+ :
595
+ else
596
+ AC_MSG_ERROR([newly created file is older than distributed files!
597
+ Check your system clock])
598
+ fi
599
+ AC_MSG_RESULT([yes])
600
+ # If we didn't sleep, we still need to ensure time stamps of config.status and
601
+ # generated files are strictly newer.
602
+ am_sleep_pid=
603
+ if grep 'slept: no' conftest.file >/dev/null 2>&1; then
604
+ ( sleep 1 ) &
605
+ am_sleep_pid=$!
606
+ fi
607
+ AC_CONFIG_COMMANDS_PRE(
608
+ [AC_MSG_CHECKING([that generated files are newer than configure])
609
+ if test -n "$am_sleep_pid"; then
610
+ # Hide warnings about reused PIDs.
611
+ wait $am_sleep_pid 2>/dev/null
612
+ fi
613
+ AC_MSG_RESULT([done])])
614
+ rm -f conftest.file
615
+ ])
616
+
617
+ # Copyright (C) 2009-2017 Free Software Foundation, Inc.
618
+ #
619
+ # This file is free software; the Free Software Foundation
620
+ # gives unlimited permission to copy and/or distribute it,
621
+ # with or without modifications, as long as this notice is preserved.
622
+
623
+ # AM_SILENT_RULES([DEFAULT])
624
+ # --------------------------
625
+ # Enable less verbose build rules; with the default set to DEFAULT
626
+ # ("yes" being less verbose, "no" or empty being verbose).
627
+ AC_DEFUN([AM_SILENT_RULES],
628
+ [AC_ARG_ENABLE([silent-rules], [dnl
629
+ AS_HELP_STRING(
630
+ [--enable-silent-rules],
631
+ [less verbose build output (undo: "make V=1")])
632
+ AS_HELP_STRING(
633
+ [--disable-silent-rules],
634
+ [verbose build output (undo: "make V=0")])dnl
635
+ ])
636
+ case $enable_silent_rules in @%:@ (((
637
+ yes) AM_DEFAULT_VERBOSITY=0;;
638
+ no) AM_DEFAULT_VERBOSITY=1;;
639
+ *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
640
+ esac
641
+ dnl
642
+ dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
643
+ dnl do not support nested variable expansions.
644
+ dnl See automake bug#9928 and bug#10237.
645
+ am_make=${MAKE-make}
646
+ AC_CACHE_CHECK([whether $am_make supports nested variables],
647
+ [am_cv_make_support_nested_variables],
648
+ [if AS_ECHO([['TRUE=$(BAR$(V))
649
+ BAR0=false
650
+ BAR1=true
651
+ V=1
652
+ am__doit:
653
+ @$(TRUE)
654
+ .PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
655
+ am_cv_make_support_nested_variables=yes
656
+ else
657
+ am_cv_make_support_nested_variables=no
658
+ fi])
659
+ if test $am_cv_make_support_nested_variables = yes; then
660
+ dnl Using '$V' instead of '$(V)' breaks IRIX make.
661
+ AM_V='$(V)'
662
+ AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
663
+ else
664
+ AM_V=$AM_DEFAULT_VERBOSITY
665
+ AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
666
+ fi
667
+ AC_SUBST([AM_V])dnl
668
+ AM_SUBST_NOTMAKE([AM_V])dnl
669
+ AC_SUBST([AM_DEFAULT_V])dnl
670
+ AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
671
+ AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
672
+ AM_BACKSLASH='\'
673
+ AC_SUBST([AM_BACKSLASH])dnl
674
+ _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
675
+ ])
676
+
677
+ # Copyright (C) 2001-2017 Free Software Foundation, Inc.
678
+ #
679
+ # This file is free software; the Free Software Foundation
680
+ # gives unlimited permission to copy and/or distribute it,
681
+ # with or without modifications, as long as this notice is preserved.
682
+
683
+ # AM_PROG_INSTALL_STRIP
684
+ # ---------------------
685
+ # One issue with vendor 'install' (even GNU) is that you can't
686
+ # specify the program used to strip binaries. This is especially
687
+ # annoying in cross-compiling environments, where the build's strip
688
+ # is unlikely to handle the host's binaries.
689
+ # Fortunately install-sh will honor a STRIPPROG variable, so we
690
+ # always use install-sh in "make install-strip", and initialize
691
+ # STRIPPROG with the value of the STRIP variable (set by the user).
692
+ AC_DEFUN([AM_PROG_INSTALL_STRIP],
693
+ [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
694
+ # Installed binaries are usually stripped using 'strip' when the user
695
+ # run "make install-strip". However 'strip' might not be the right
696
+ # tool to use in cross-compilation environments, therefore Automake
697
+ # will honor the 'STRIP' environment variable to overrule this program.
698
+ dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
699
+ if test "$cross_compiling" != no; then
700
+ AC_CHECK_TOOL([STRIP], [strip], :)
701
+ fi
702
+ INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
703
+ AC_SUBST([INSTALL_STRIP_PROGRAM])])
704
+
705
+ # Copyright (C) 2006-2017 Free Software Foundation, Inc.
706
+ #
707
+ # This file is free software; the Free Software Foundation
708
+ # gives unlimited permission to copy and/or distribute it,
709
+ # with or without modifications, as long as this notice is preserved.
710
+
711
+ # _AM_SUBST_NOTMAKE(VARIABLE)
712
+ # ---------------------------
713
+ # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
714
+ # This macro is traced by Automake.
715
+ AC_DEFUN([_AM_SUBST_NOTMAKE])
716
+
717
+ # AM_SUBST_NOTMAKE(VARIABLE)
718
+ # --------------------------
719
+ # Public sister of _AM_SUBST_NOTMAKE.
720
+ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
721
+
722
+ # Check how to create a tarball. -*- Autoconf -*-
723
+
724
+ # Copyright (C) 2004-2017 Free Software Foundation, Inc.
725
+ #
726
+ # This file is free software; the Free Software Foundation
727
+ # gives unlimited permission to copy and/or distribute it,
728
+ # with or without modifications, as long as this notice is preserved.
729
+
730
+ # _AM_PROG_TAR(FORMAT)
731
+ # --------------------
732
+ # Check how to create a tarball in format FORMAT.
733
+ # FORMAT should be one of 'v7', 'ustar', or 'pax'.
734
+ #
735
+ # Substitute a variable $(am__tar) that is a command
736
+ # writing to stdout a FORMAT-tarball containing the directory
737
+ # $tardir.
738
+ # tardir=directory && $(am__tar) > result.tar
739
+ #
740
+ # Substitute a variable $(am__untar) that extract such
741
+ # a tarball read from stdin.
742
+ # $(am__untar) < result.tar
743
+ #
744
+ AC_DEFUN([_AM_PROG_TAR],
745
+ [# Always define AMTAR for backward compatibility. Yes, it's still used
746
+ # in the wild :-( We should find a proper way to deprecate it ...
747
+ AC_SUBST([AMTAR], ['$${TAR-tar}'])
748
+
749
+ # We'll loop over all known methods to create a tar archive until one works.
750
+ _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
751
+
752
+ m4_if([$1], [v7],
753
+ [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
754
+
755
+ [m4_case([$1],
756
+ [ustar],
757
+ [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
758
+ # There is notably a 21 bits limit for the UID and the GID. In fact,
759
+ # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
760
+ # and bug#13588).
761
+ am_max_uid=2097151 # 2^21 - 1
762
+ am_max_gid=$am_max_uid
763
+ # The $UID and $GID variables are not portable, so we need to resort
764
+ # to the POSIX-mandated id(1) utility. Errors in the 'id' calls
765
+ # below are definitely unexpected, so allow the users to see them
766
+ # (that is, avoid stderr redirection).
767
+ am_uid=`id -u || echo unknown`
768
+ am_gid=`id -g || echo unknown`
769
+ AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
770
+ if test $am_uid -le $am_max_uid; then
771
+ AC_MSG_RESULT([yes])
772
+ else
773
+ AC_MSG_RESULT([no])
774
+ _am_tools=none
775
+ fi
776
+ AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
777
+ if test $am_gid -le $am_max_gid; then
778
+ AC_MSG_RESULT([yes])
779
+ else
780
+ AC_MSG_RESULT([no])
781
+ _am_tools=none
782
+ fi],
783
+
784
+ [pax],
785
+ [],
786
+
787
+ [m4_fatal([Unknown tar format])])
788
+
789
+ AC_MSG_CHECKING([how to create a $1 tar archive])
790
+
791
+ # Go ahead even if we have the value already cached. We do so because we
792
+ # need to set the values for the 'am__tar' and 'am__untar' variables.
793
+ _am_tools=${am_cv_prog_tar_$1-$_am_tools}
794
+
795
+ for _am_tool in $_am_tools; do
796
+ case $_am_tool in
797
+ gnutar)
798
+ for _am_tar in tar gnutar gtar; do
799
+ AM_RUN_LOG([$_am_tar --version]) && break
800
+ done
801
+ am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
802
+ am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
803
+ am__untar="$_am_tar -xf -"
804
+ ;;
805
+ plaintar)
806
+ # Must skip GNU tar: if it does not support --format= it doesn't create
807
+ # ustar tarball either.
808
+ (tar --version) >/dev/null 2>&1 && continue
809
+ am__tar='tar chf - "$$tardir"'
810
+ am__tar_='tar chf - "$tardir"'
811
+ am__untar='tar xf -'
812
+ ;;
813
+ pax)
814
+ am__tar='pax -L -x $1 -w "$$tardir"'
815
+ am__tar_='pax -L -x $1 -w "$tardir"'
816
+ am__untar='pax -r'
817
+ ;;
818
+ cpio)
819
+ am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
820
+ am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
821
+ am__untar='cpio -i -H $1 -d'
822
+ ;;
823
+ none)
824
+ am__tar=false
825
+ am__tar_=false
826
+ am__untar=false
827
+ ;;
828
+ esac
829
+
830
+ # If the value was cached, stop now. We just wanted to have am__tar
831
+ # and am__untar set.
832
+ test -n "${am_cv_prog_tar_$1}" && break
833
+
834
+ # tar/untar a dummy directory, and stop if the command works.
835
+ rm -rf conftest.dir
836
+ mkdir conftest.dir
837
+ echo GrepMe > conftest.dir/file
838
+ AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
839
+ rm -rf conftest.dir
840
+ if test -s conftest.tar; then
841
+ AM_RUN_LOG([$am__untar <conftest.tar])
842
+ AM_RUN_LOG([cat conftest.dir/file])
843
+ grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
844
+ fi
845
+ done
846
+ rm -rf conftest.dir
847
+
848
+ AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
849
+ AC_MSG_RESULT([$am_cv_prog_tar_$1])])
850
+
851
+ AC_SUBST([am__tar])
852
+ AC_SUBST([am__untar])
853
+ ]) # _AM_PROG_TAR
854
+
855
+ m4_include([config/lead-dot.m4])
856
+ m4_include([config/libtool.m4])
857
+ m4_include([config/ltoptions.m4])
858
+ m4_include([config/ltsugar.m4])
859
+ m4_include([config/ltversion.m4])
860
+ m4_include([config/lt~obsolete.m4])
861
+ m4_include([config/multi.m4])
862
+ m4_include([config/override.m4])
863
+ m4_include([config/unwind_ipinfo.m4])
864
+ m4_include([config/warnings.m4])