admesh 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. checksums.yaml +7 -0
  2. data/ext/admesh/admesh/AUTHORS +11 -0
  3. data/ext/admesh/admesh/COPYING +339 -0
  4. data/ext/admesh/admesh/ChangeLog +143 -0
  5. data/ext/admesh/admesh/ChangeLog.old +42 -0
  6. data/ext/admesh/admesh/INSTALL +14 -0
  7. data/ext/admesh/admesh/Makefile.am +62 -0
  8. data/ext/admesh/admesh/Makefile.in +1100 -0
  9. data/ext/admesh/admesh/README.md +115 -0
  10. data/ext/admesh/admesh/aclocal.m4 +1183 -0
  11. data/ext/admesh/admesh/admesh-doc.txt +475 -0
  12. data/ext/admesh/admesh/admesh.1 +173 -0
  13. data/ext/admesh/admesh/block.stl +86 -0
  14. data/ext/admesh/admesh/compile +347 -0
  15. data/ext/admesh/admesh/config.guess +1420 -0
  16. data/ext/admesh/admesh/config.h.in +65 -0
  17. data/ext/admesh/admesh/config.sub +1798 -0
  18. data/ext/admesh/admesh/configure +14671 -0
  19. data/ext/admesh/admesh/configure.ac +90 -0
  20. data/ext/admesh/admesh/depcomp +791 -0
  21. data/ext/admesh/admesh/install-sh +527 -0
  22. data/ext/admesh/admesh/libadmesh.pc.in +11 -0
  23. data/ext/admesh/admesh/ltmain.sh +9655 -0
  24. data/ext/admesh/admesh/m4/libtool.m4 +7992 -0
  25. data/ext/admesh/admesh/m4/ltoptions.m4 +384 -0
  26. data/ext/admesh/admesh/m4/ltsugar.m4 +123 -0
  27. data/ext/admesh/admesh/m4/ltversion.m4 +23 -0
  28. data/ext/admesh/admesh/m4/lt~obsolete.m4 +98 -0
  29. data/ext/admesh/admesh/missing +215 -0
  30. data/ext/admesh/admesh/src/admesh.c +425 -0
  31. data/ext/admesh/admesh/src/connect.c +971 -0
  32. data/ext/admesh/admesh/src/normals.c +333 -0
  33. data/ext/admesh/admesh/src/shared.c +262 -0
  34. data/ext/admesh/admesh/src/stl.h +201 -0
  35. data/ext/admesh/admesh/src/stl_io.c +479 -0
  36. data/ext/admesh/admesh/src/stlinit.c +377 -0
  37. data/ext/admesh/admesh/src/util.c +557 -0
  38. data/ext/admesh/extconf.rb +14 -0
  39. data/lib/admesh.rb +40 -0
  40. metadata +84 -0
@@ -0,0 +1,115 @@
1
+ About this release and repository:
2
+ ----------------------------------
3
+
4
+ ADMesh was released as an application in 1995/96. Not much happened since then.
5
+ As the code of this project might bring use for others, this "fork" was created
6
+ to provide a shared library. Once done that, I've collected lots of bugfixes
7
+ from the world around us.
8
+
9
+ No further development will be done, but bugs will be resolved, if possible.
10
+
11
+ Don't patch this project downstream but use this code, so all can benefit from
12
+ the changes. Pull requests are welcome, but be sure to generate no warnings.
13
+
14
+ Grab the 0.98.2 tarball:
15
+ https://github.com/admesh/admesh/releases/download/v0.98.2/admesh-0.98.2.tar.gz
16
+
17
+ About ADMesh:
18
+ -------------
19
+
20
+ ADMesh is a program for processing triangulated solid meshes. Currently,
21
+ ADMesh only reads the STL file format that is used for rapid prototyping
22
+ applications, although it can write STL, VRML, OFF, and DXF files.
23
+
24
+ Additional information regarding the underlying algorithms of ADMesh
25
+ can be found in Anthony Martin's Masters Thesis available from here:
26
+
27
+ http://www.varlog.com/admesh-htm/ADMeshThesis.zip
28
+
29
+ Features:
30
+ ---------
31
+
32
+ * Read and write binary and ASCII STL files
33
+ * Check STL files for flaws (i.e. unconnected facets, bad normals)
34
+ * Repair facets by connecting nearby facets that are within a given tolerance
35
+ * Fill holes in the mesh by adding facets.
36
+ * Repair normal directions (i.e. facets should be CCW)
37
+ * Repair normal values (i.e. should be perpendicular to facet with length=1)
38
+ * Remove degenerate facets (i.e. facets with 2 or more vertices equal)
39
+ * Translate in x, y, and z directions
40
+ * Rotate about the x, y, and z axes
41
+ * Mirror about the xy, yz, and xz planes
42
+ * Scale the part by a factor
43
+ * Merge 2 STL files into one
44
+ * Write an OFF file
45
+ * Write a VRML file
46
+ * Write a DXF file
47
+ * Calculate the volume of a part
48
+
49
+ ADMesh outputs the following statistics after processing:
50
+
51
+ ````
52
+ ================= Results produced by ADMesh version 0.98.2 =================
53
+ Input file : sphere.stl
54
+ File type : Binary STL file
55
+ Header : Processed by ADMesh version 0.98.2
56
+ ============== Size ==============
57
+ Min X = -1.334557, Max X = 1.370952
58
+ Min Y = -1.377953, Max Y = 1.377230
59
+ Min Z = -1.373225, Max Z = 1.242838
60
+ ========= Facet Status ========== Original ============ Final ====
61
+ Number of facets : 3656 3656
62
+ Facets with 1 disconnected edge : 18 0
63
+ Facets with 2 disconnected edges : 3 0
64
+ Facets with 3 disconnected edges : 0 0
65
+ Total disconnected facets : 21 0
66
+ === Processing Statistics === ===== Other Statistics =====
67
+ Number of parts : 1 Volume : 10.889216
68
+ Degenerate facets : 0
69
+ Edges fixed : 24
70
+ Facets removed : 0
71
+ Facets added : 0
72
+ Facets reversed : 0
73
+ Backwards edges : 0
74
+ Normals fixed : 0
75
+ ````
76
+
77
+ There are two different algorithms used for fixing unconnected facets. The
78
+ first algorithm finds an unconnected edge, and then checks nearby within a
79
+ given tolerance for another unconnected edge. It then fixes edges within
80
+ tolerance. Some meshes can be completely fixed just using this method. If
81
+ there are still unconnected facets after this "nearby check" has been done,
82
+ then a second algorithm is used. This algorithm just fills any holes in the
83
+ mesh by adding facets until all of the holes are filled. Using these two
84
+ algorithms, almost any imperfect STL file can be "fixed" 100% so that there
85
+ are 0 unconnected facets. Whether the resulting mesh is what you really
86
+ want is another question since there is no way for ADMesh to add information
87
+ that isn't there.
88
+
89
+ At this point ADMesh is only command-line driven and has no windowing
90
+ capabilities. This should make it extremely easy to port to any UNIX-like
91
+ system, and it shouldn't have any problems compiling on Windows NT, and some
92
+ people have had success compiling it under DOS or Windows using DJGPP.
93
+
94
+ ADMesh was developed on a 486/66 with 16Mb running the Linux operating system.
95
+ It has also been compiled and run on the following systems:
96
+ SunOS 4.1.3
97
+ IRIX 5.2
98
+ Please let me know about successes or failures with other systems.
99
+
100
+ On my Linux system with 16Mb of memory, I can easily process files that have
101
+ up to about 200,000 facets. Files larger than this can be processed, but
102
+ the system begins to slow down significantly due to swapping. A system with
103
+ more memory will be able to process greater numbers of facets more easily.
104
+ Following are some indications of process times:
105
+
106
+ * 40,000 facets: 10 seconds
107
+ * 80,000 facets: 20 seconds
108
+ * 160,000 facets: 50 seconds
109
+ * 320,000 facets: 13 minutes (heavy swapping occurred)
110
+
111
+ Note that those times were calculated around 1996.
112
+
113
+ ADMesh is free but copyrighted software. It is distributed under the terms
114
+ of the GNU General Public License (GPL). Details of the GPL are in the file
115
+ COPYING that comes with the ADMesh software package.
@@ -0,0 +1,1183 @@
1
+ # generated automatically by aclocal 1.14.1 -*- Autoconf -*-
2
+
3
+ # Copyright (C) 1996-2013 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-2013 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.14'
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.14.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.14.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-2013 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
+ [dnl Rely on autoconf to set up CDPATH properly.
107
+ AC_PREREQ([2.50])dnl
108
+ # expand $ac_aux_dir to an absolute path
109
+ am_aux_dir=`cd $ac_aux_dir && pwd`
110
+ ])
111
+
112
+ # AM_CONDITIONAL -*- Autoconf -*-
113
+
114
+ # Copyright (C) 1997-2013 Free Software Foundation, Inc.
115
+ #
116
+ # This file is free software; the Free Software Foundation
117
+ # gives unlimited permission to copy and/or distribute it,
118
+ # with or without modifications, as long as this notice is preserved.
119
+
120
+ # AM_CONDITIONAL(NAME, SHELL-CONDITION)
121
+ # -------------------------------------
122
+ # Define a conditional.
123
+ AC_DEFUN([AM_CONDITIONAL],
124
+ [AC_PREREQ([2.52])dnl
125
+ m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
126
+ [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
127
+ AC_SUBST([$1_TRUE])dnl
128
+ AC_SUBST([$1_FALSE])dnl
129
+ _AM_SUBST_NOTMAKE([$1_TRUE])dnl
130
+ _AM_SUBST_NOTMAKE([$1_FALSE])dnl
131
+ m4_define([_AM_COND_VALUE_$1], [$2])dnl
132
+ if $2; then
133
+ $1_TRUE=
134
+ $1_FALSE='#'
135
+ else
136
+ $1_TRUE='#'
137
+ $1_FALSE=
138
+ fi
139
+ AC_CONFIG_COMMANDS_PRE(
140
+ [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
141
+ AC_MSG_ERROR([[conditional "$1" was never defined.
142
+ Usually this means the macro was only invoked conditionally.]])
143
+ fi])])
144
+
145
+ # Copyright (C) 1999-2013 Free Software Foundation, Inc.
146
+ #
147
+ # This file is free software; the Free Software Foundation
148
+ # gives unlimited permission to copy and/or distribute it,
149
+ # with or without modifications, as long as this notice is preserved.
150
+
151
+
152
+ # There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
153
+ # written in clear, in which case automake, when reading aclocal.m4,
154
+ # will think it sees a *use*, and therefore will trigger all it's
155
+ # C support machinery. Also note that it means that autoscan, seeing
156
+ # CC etc. in the Makefile, will ask for an AC_PROG_CC use...
157
+
158
+
159
+ # _AM_DEPENDENCIES(NAME)
160
+ # ----------------------
161
+ # See how the compiler implements dependency checking.
162
+ # NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".
163
+ # We try a few techniques and use that to set a single cache variable.
164
+ #
165
+ # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
166
+ # modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
167
+ # dependency, and given that the user is not expected to run this macro,
168
+ # just rely on AC_PROG_CC.
169
+ AC_DEFUN([_AM_DEPENDENCIES],
170
+ [AC_REQUIRE([AM_SET_DEPDIR])dnl
171
+ AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
172
+ AC_REQUIRE([AM_MAKE_INCLUDE])dnl
173
+ AC_REQUIRE([AM_DEP_TRACK])dnl
174
+
175
+ m4_if([$1], [CC], [depcc="$CC" am_compiler_list=],
176
+ [$1], [CXX], [depcc="$CXX" am_compiler_list=],
177
+ [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
178
+ [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],
179
+ [$1], [UPC], [depcc="$UPC" am_compiler_list=],
180
+ [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
181
+ [depcc="$$1" am_compiler_list=])
182
+
183
+ AC_CACHE_CHECK([dependency style of $depcc],
184
+ [am_cv_$1_dependencies_compiler_type],
185
+ [if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
186
+ # We make a subdir and do the tests there. Otherwise we can end up
187
+ # making bogus files that we don't know about and never remove. For
188
+ # instance it was reported that on HP-UX the gcc test will end up
189
+ # making a dummy file named 'D' -- because '-MD' means "put the output
190
+ # in D".
191
+ rm -rf conftest.dir
192
+ mkdir conftest.dir
193
+ # Copy depcomp to subdir because otherwise we won't find it if we're
194
+ # using a relative directory.
195
+ cp "$am_depcomp" conftest.dir
196
+ cd conftest.dir
197
+ # We will build objects and dependencies in a subdirectory because
198
+ # it helps to detect inapplicable dependency modes. For instance
199
+ # both Tru64's cc and ICC support -MD to output dependencies as a
200
+ # side effect of compilation, but ICC will put the dependencies in
201
+ # the current directory while Tru64 will put them in the object
202
+ # directory.
203
+ mkdir sub
204
+
205
+ am_cv_$1_dependencies_compiler_type=none
206
+ if test "$am_compiler_list" = ""; then
207
+ am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
208
+ fi
209
+ am__universal=false
210
+ m4_case([$1], [CC],
211
+ [case " $depcc " in #(
212
+ *\ -arch\ *\ -arch\ *) am__universal=true ;;
213
+ esac],
214
+ [CXX],
215
+ [case " $depcc " in #(
216
+ *\ -arch\ *\ -arch\ *) am__universal=true ;;
217
+ esac])
218
+
219
+ for depmode in $am_compiler_list; do
220
+ # Setup a source with many dependencies, because some compilers
221
+ # like to wrap large dependency lists on column 80 (with \), and
222
+ # we should not choose a depcomp mode which is confused by this.
223
+ #
224
+ # We need to recreate these files for each test, as the compiler may
225
+ # overwrite some of them when testing with obscure command lines.
226
+ # This happens at least with the AIX C compiler.
227
+ : > sub/conftest.c
228
+ for i in 1 2 3 4 5 6; do
229
+ echo '#include "conftst'$i'.h"' >> sub/conftest.c
230
+ # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
231
+ # Solaris 10 /bin/sh.
232
+ echo '/* dummy */' > sub/conftst$i.h
233
+ done
234
+ echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
235
+
236
+ # We check with '-c' and '-o' for the sake of the "dashmstdout"
237
+ # mode. It turns out that the SunPro C++ compiler does not properly
238
+ # handle '-M -o', and we need to detect this. Also, some Intel
239
+ # versions had trouble with output in subdirs.
240
+ am__obj=sub/conftest.${OBJEXT-o}
241
+ am__minus_obj="-o $am__obj"
242
+ case $depmode in
243
+ gcc)
244
+ # This depmode causes a compiler race in universal mode.
245
+ test "$am__universal" = false || continue
246
+ ;;
247
+ nosideeffect)
248
+ # After this tag, mechanisms are not by side-effect, so they'll
249
+ # only be used when explicitly requested.
250
+ if test "x$enable_dependency_tracking" = xyes; then
251
+ continue
252
+ else
253
+ break
254
+ fi
255
+ ;;
256
+ msvc7 | msvc7msys | msvisualcpp | msvcmsys)
257
+ # This compiler won't grok '-c -o', but also, the minuso test has
258
+ # not run yet. These depmodes are late enough in the game, and
259
+ # so weak that their functioning should not be impacted.
260
+ am__obj=conftest.${OBJEXT-o}
261
+ am__minus_obj=
262
+ ;;
263
+ none) break ;;
264
+ esac
265
+ if depmode=$depmode \
266
+ source=sub/conftest.c object=$am__obj \
267
+ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
268
+ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
269
+ >/dev/null 2>conftest.err &&
270
+ grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
271
+ grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
272
+ grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
273
+ ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
274
+ # icc doesn't choke on unknown options, it will just issue warnings
275
+ # or remarks (even with -Werror). So we grep stderr for any message
276
+ # that says an option was ignored or not supported.
277
+ # When given -MP, icc 7.0 and 7.1 complain thusly:
278
+ # icc: Command line warning: ignoring option '-M'; no argument required
279
+ # The diagnosis changed in icc 8.0:
280
+ # icc: Command line remark: option '-MP' not supported
281
+ if (grep 'ignoring option' conftest.err ||
282
+ grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
283
+ am_cv_$1_dependencies_compiler_type=$depmode
284
+ break
285
+ fi
286
+ fi
287
+ done
288
+
289
+ cd ..
290
+ rm -rf conftest.dir
291
+ else
292
+ am_cv_$1_dependencies_compiler_type=none
293
+ fi
294
+ ])
295
+ AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
296
+ AM_CONDITIONAL([am__fastdep$1], [
297
+ test "x$enable_dependency_tracking" != xno \
298
+ && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
299
+ ])
300
+
301
+
302
+ # AM_SET_DEPDIR
303
+ # -------------
304
+ # Choose a directory name for dependency files.
305
+ # This macro is AC_REQUIREd in _AM_DEPENDENCIES.
306
+ AC_DEFUN([AM_SET_DEPDIR],
307
+ [AC_REQUIRE([AM_SET_LEADING_DOT])dnl
308
+ AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
309
+ ])
310
+
311
+
312
+ # AM_DEP_TRACK
313
+ # ------------
314
+ AC_DEFUN([AM_DEP_TRACK],
315
+ [AC_ARG_ENABLE([dependency-tracking], [dnl
316
+ AS_HELP_STRING(
317
+ [--enable-dependency-tracking],
318
+ [do not reject slow dependency extractors])
319
+ AS_HELP_STRING(
320
+ [--disable-dependency-tracking],
321
+ [speeds up one-time build])])
322
+ if test "x$enable_dependency_tracking" != xno; then
323
+ am_depcomp="$ac_aux_dir/depcomp"
324
+ AMDEPBACKSLASH='\'
325
+ am__nodep='_no'
326
+ fi
327
+ AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
328
+ AC_SUBST([AMDEPBACKSLASH])dnl
329
+ _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
330
+ AC_SUBST([am__nodep])dnl
331
+ _AM_SUBST_NOTMAKE([am__nodep])dnl
332
+ ])
333
+
334
+ # Generate code to set up dependency tracking. -*- Autoconf -*-
335
+
336
+ # Copyright (C) 1999-2013 Free Software Foundation, Inc.
337
+ #
338
+ # This file is free software; the Free Software Foundation
339
+ # gives unlimited permission to copy and/or distribute it,
340
+ # with or without modifications, as long as this notice is preserved.
341
+
342
+
343
+ # _AM_OUTPUT_DEPENDENCY_COMMANDS
344
+ # ------------------------------
345
+ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
346
+ [{
347
+ # Older Autoconf quotes --file arguments for eval, but not when files
348
+ # are listed without --file. Let's play safe and only enable the eval
349
+ # if we detect the quoting.
350
+ case $CONFIG_FILES in
351
+ *\'*) eval set x "$CONFIG_FILES" ;;
352
+ *) set x $CONFIG_FILES ;;
353
+ esac
354
+ shift
355
+ for mf
356
+ do
357
+ # Strip MF so we end up with the name of the file.
358
+ mf=`echo "$mf" | sed -e 's/:.*$//'`
359
+ # Check whether this is an Automake generated Makefile or not.
360
+ # We used to match only the files named 'Makefile.in', but
361
+ # some people rename them; so instead we look at the file content.
362
+ # Grep'ing the first line is not enough: some people post-process
363
+ # each Makefile.in and add a new line on top of each file to say so.
364
+ # Grep'ing the whole file is not good either: AIX grep has a line
365
+ # limit of 2048, but all sed's we know have understand at least 4000.
366
+ if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
367
+ dirpart=`AS_DIRNAME("$mf")`
368
+ else
369
+ continue
370
+ fi
371
+ # Extract the definition of DEPDIR, am__include, and am__quote
372
+ # from the Makefile without running 'make'.
373
+ DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
374
+ test -z "$DEPDIR" && continue
375
+ am__include=`sed -n 's/^am__include = //p' < "$mf"`
376
+ test -z "$am__include" && continue
377
+ am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
378
+ # Find all dependency output files, they are included files with
379
+ # $(DEPDIR) in their names. We invoke sed twice because it is the
380
+ # simplest approach to changing $(DEPDIR) to its actual value in the
381
+ # expansion.
382
+ for file in `sed -n "
383
+ s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
384
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
385
+ # Make sure the directory exists.
386
+ test -f "$dirpart/$file" && continue
387
+ fdir=`AS_DIRNAME(["$file"])`
388
+ AS_MKDIR_P([$dirpart/$fdir])
389
+ # echo "creating $dirpart/$file"
390
+ echo '# dummy' > "$dirpart/$file"
391
+ done
392
+ done
393
+ }
394
+ ])# _AM_OUTPUT_DEPENDENCY_COMMANDS
395
+
396
+
397
+ # AM_OUTPUT_DEPENDENCY_COMMANDS
398
+ # -----------------------------
399
+ # This macro should only be invoked once -- use via AC_REQUIRE.
400
+ #
401
+ # This code is only required when automatic dependency tracking
402
+ # is enabled. FIXME. This creates each '.P' file that we will
403
+ # need in order to bootstrap the dependency handling code.
404
+ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
405
+ [AC_CONFIG_COMMANDS([depfiles],
406
+ [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
407
+ [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
408
+ ])
409
+
410
+ # Do all the work for Automake. -*- Autoconf -*-
411
+
412
+ # Copyright (C) 1996-2013 Free Software Foundation, Inc.
413
+ #
414
+ # This file is free software; the Free Software Foundation
415
+ # gives unlimited permission to copy and/or distribute it,
416
+ # with or without modifications, as long as this notice is preserved.
417
+
418
+ # This macro actually does too much. Some checks are only needed if
419
+ # your package does certain things. But this isn't really a big deal.
420
+
421
+ dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
422
+ m4_define([AC_PROG_CC],
423
+ m4_defn([AC_PROG_CC])
424
+ [_AM_PROG_CC_C_O
425
+ ])
426
+
427
+ # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
428
+ # AM_INIT_AUTOMAKE([OPTIONS])
429
+ # -----------------------------------------------
430
+ # The call with PACKAGE and VERSION arguments is the old style
431
+ # call (pre autoconf-2.50), which is being phased out. PACKAGE
432
+ # and VERSION should now be passed to AC_INIT and removed from
433
+ # the call to AM_INIT_AUTOMAKE.
434
+ # We support both call styles for the transition. After
435
+ # the next Automake release, Autoconf can make the AC_INIT
436
+ # arguments mandatory, and then we can depend on a new Autoconf
437
+ # release and drop the old call support.
438
+ AC_DEFUN([AM_INIT_AUTOMAKE],
439
+ [AC_PREREQ([2.65])dnl
440
+ dnl Autoconf wants to disallow AM_ names. We explicitly allow
441
+ dnl the ones we care about.
442
+ m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
443
+ AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
444
+ AC_REQUIRE([AC_PROG_INSTALL])dnl
445
+ if test "`cd $srcdir && pwd`" != "`pwd`"; then
446
+ # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
447
+ # is not polluted with repeated "-I."
448
+ AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
449
+ # test to see if srcdir already configured
450
+ if test -f $srcdir/config.status; then
451
+ AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
452
+ fi
453
+ fi
454
+
455
+ # test whether we have cygpath
456
+ if test -z "$CYGPATH_W"; then
457
+ if (cygpath --version) >/dev/null 2>/dev/null; then
458
+ CYGPATH_W='cygpath -w'
459
+ else
460
+ CYGPATH_W=echo
461
+ fi
462
+ fi
463
+ AC_SUBST([CYGPATH_W])
464
+
465
+ # Define the identity of the package.
466
+ dnl Distinguish between old-style and new-style calls.
467
+ m4_ifval([$2],
468
+ [AC_DIAGNOSE([obsolete],
469
+ [$0: two- and three-arguments forms are deprecated.])
470
+ m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
471
+ AC_SUBST([PACKAGE], [$1])dnl
472
+ AC_SUBST([VERSION], [$2])],
473
+ [_AM_SET_OPTIONS([$1])dnl
474
+ dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
475
+ m4_if(
476
+ m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
477
+ [ok:ok],,
478
+ [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
479
+ AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
480
+ AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
481
+
482
+ _AM_IF_OPTION([no-define],,
483
+ [AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
484
+ AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
485
+
486
+ # Some tools Automake needs.
487
+ AC_REQUIRE([AM_SANITY_CHECK])dnl
488
+ AC_REQUIRE([AC_ARG_PROGRAM])dnl
489
+ AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
490
+ AM_MISSING_PROG([AUTOCONF], [autoconf])
491
+ AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
492
+ AM_MISSING_PROG([AUTOHEADER], [autoheader])
493
+ AM_MISSING_PROG([MAKEINFO], [makeinfo])
494
+ AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
495
+ AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
496
+ AC_REQUIRE([AC_PROG_MKDIR_P])dnl
497
+ # For better backward compatibility. To be removed once Automake 1.9.x
498
+ # dies out for good. For more background, see:
499
+ # <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
500
+ # <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
501
+ AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
502
+ # We need awk for the "check" target. The system "awk" is bad on
503
+ # some platforms.
504
+ AC_REQUIRE([AC_PROG_AWK])dnl
505
+ AC_REQUIRE([AC_PROG_MAKE_SET])dnl
506
+ AC_REQUIRE([AM_SET_LEADING_DOT])dnl
507
+ _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
508
+ [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
509
+ [_AM_PROG_TAR([v7])])])
510
+ _AM_IF_OPTION([no-dependencies],,
511
+ [AC_PROVIDE_IFELSE([AC_PROG_CC],
512
+ [_AM_DEPENDENCIES([CC])],
513
+ [m4_define([AC_PROG_CC],
514
+ m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
515
+ AC_PROVIDE_IFELSE([AC_PROG_CXX],
516
+ [_AM_DEPENDENCIES([CXX])],
517
+ [m4_define([AC_PROG_CXX],
518
+ m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
519
+ AC_PROVIDE_IFELSE([AC_PROG_OBJC],
520
+ [_AM_DEPENDENCIES([OBJC])],
521
+ [m4_define([AC_PROG_OBJC],
522
+ m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
523
+ AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
524
+ [_AM_DEPENDENCIES([OBJCXX])],
525
+ [m4_define([AC_PROG_OBJCXX],
526
+ m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
527
+ ])
528
+ AC_REQUIRE([AM_SILENT_RULES])dnl
529
+ dnl The testsuite driver may need to know about EXEEXT, so add the
530
+ dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This
531
+ dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
532
+ AC_CONFIG_COMMANDS_PRE(dnl
533
+ [m4_provide_if([_AM_COMPILER_EXEEXT],
534
+ [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
535
+
536
+ # POSIX will say in a future version that running "rm -f" with no argument
537
+ # is OK; and we want to be able to make that assumption in our Makefile
538
+ # recipes. So use an aggressive probe to check that the usage we want is
539
+ # actually supported "in the wild" to an acceptable degree.
540
+ # See automake bug#10828.
541
+ # To make any issue more visible, cause the running configure to be aborted
542
+ # by default if the 'rm' program in use doesn't match our expectations; the
543
+ # user can still override this though.
544
+ if rm -f && rm -fr && rm -rf; then : OK; else
545
+ cat >&2 <<'END'
546
+ Oops!
547
+
548
+ Your 'rm' program seems unable to run without file operands specified
549
+ on the command line, even when the '-f' option is present. This is contrary
550
+ to the behaviour of most rm programs out there, and not conforming with
551
+ the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
552
+
553
+ Please tell bug-automake@gnu.org about your system, including the value
554
+ of your $PATH and any error possibly output before this message. This
555
+ can help us improve future automake versions.
556
+
557
+ END
558
+ if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
559
+ echo 'Configuration will proceed anyway, since you have set the' >&2
560
+ echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
561
+ echo >&2
562
+ else
563
+ cat >&2 <<'END'
564
+ Aborting the configuration process, to ensure you take notice of the issue.
565
+
566
+ You can download and install GNU coreutils to get an 'rm' implementation
567
+ that behaves properly: <http://www.gnu.org/software/coreutils/>.
568
+
569
+ If you want to complete the configuration process using your problematic
570
+ 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
571
+ to "yes", and re-run configure.
572
+
573
+ END
574
+ AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
575
+ fi
576
+ fi])
577
+
578
+ dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
579
+ dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
580
+ dnl mangled by Autoconf and run in a shell conditional statement.
581
+ m4_define([_AC_COMPILER_EXEEXT],
582
+ m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
583
+
584
+ # When config.status generates a header, we must update the stamp-h file.
585
+ # This file resides in the same directory as the config header
586
+ # that is generated. The stamp files are numbered to have different names.
587
+
588
+ # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
589
+ # loop where config.status creates the headers, so we can generate
590
+ # our stamp files there.
591
+ AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
592
+ [# Compute $1's index in $config_headers.
593
+ _am_arg=$1
594
+ _am_stamp_count=1
595
+ for _am_header in $config_headers :; do
596
+ case $_am_header in
597
+ $_am_arg | $_am_arg:* )
598
+ break ;;
599
+ * )
600
+ _am_stamp_count=`expr $_am_stamp_count + 1` ;;
601
+ esac
602
+ done
603
+ echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
604
+
605
+ # Copyright (C) 2001-2013 Free Software Foundation, Inc.
606
+ #
607
+ # This file is free software; the Free Software Foundation
608
+ # gives unlimited permission to copy and/or distribute it,
609
+ # with or without modifications, as long as this notice is preserved.
610
+
611
+ # AM_PROG_INSTALL_SH
612
+ # ------------------
613
+ # Define $install_sh.
614
+ AC_DEFUN([AM_PROG_INSTALL_SH],
615
+ [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
616
+ if test x"${install_sh}" != xset; then
617
+ case $am_aux_dir in
618
+ *\ * | *\ *)
619
+ install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
620
+ *)
621
+ install_sh="\${SHELL} $am_aux_dir/install-sh"
622
+ esac
623
+ fi
624
+ AC_SUBST([install_sh])])
625
+
626
+ # Copyright (C) 2003-2013 Free Software Foundation, Inc.
627
+ #
628
+ # This file is free software; the Free Software Foundation
629
+ # gives unlimited permission to copy and/or distribute it,
630
+ # with or without modifications, as long as this notice is preserved.
631
+
632
+ # Check whether the underlying file-system supports filenames
633
+ # with a leading dot. For instance MS-DOS doesn't.
634
+ AC_DEFUN([AM_SET_LEADING_DOT],
635
+ [rm -rf .tst 2>/dev/null
636
+ mkdir .tst 2>/dev/null
637
+ if test -d .tst; then
638
+ am__leading_dot=.
639
+ else
640
+ am__leading_dot=_
641
+ fi
642
+ rmdir .tst 2>/dev/null
643
+ AC_SUBST([am__leading_dot])])
644
+
645
+ # Check to see how 'make' treats includes. -*- Autoconf -*-
646
+
647
+ # Copyright (C) 2001-2013 Free Software Foundation, Inc.
648
+ #
649
+ # This file is free software; the Free Software Foundation
650
+ # gives unlimited permission to copy and/or distribute it,
651
+ # with or without modifications, as long as this notice is preserved.
652
+
653
+ # AM_MAKE_INCLUDE()
654
+ # -----------------
655
+ # Check to see how make treats includes.
656
+ AC_DEFUN([AM_MAKE_INCLUDE],
657
+ [am_make=${MAKE-make}
658
+ cat > confinc << 'END'
659
+ am__doit:
660
+ @echo this is the am__doit target
661
+ .PHONY: am__doit
662
+ END
663
+ # If we don't find an include directive, just comment out the code.
664
+ AC_MSG_CHECKING([for style of include used by $am_make])
665
+ am__include="#"
666
+ am__quote=
667
+ _am_result=none
668
+ # First try GNU make style include.
669
+ echo "include confinc" > confmf
670
+ # Ignore all kinds of additional output from 'make'.
671
+ case `$am_make -s -f confmf 2> /dev/null` in #(
672
+ *the\ am__doit\ target*)
673
+ am__include=include
674
+ am__quote=
675
+ _am_result=GNU
676
+ ;;
677
+ esac
678
+ # Now try BSD make style include.
679
+ if test "$am__include" = "#"; then
680
+ echo '.include "confinc"' > confmf
681
+ case `$am_make -s -f confmf 2> /dev/null` in #(
682
+ *the\ am__doit\ target*)
683
+ am__include=.include
684
+ am__quote="\""
685
+ _am_result=BSD
686
+ ;;
687
+ esac
688
+ fi
689
+ AC_SUBST([am__include])
690
+ AC_SUBST([am__quote])
691
+ AC_MSG_RESULT([$_am_result])
692
+ rm -f confinc confmf
693
+ ])
694
+
695
+ # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
696
+
697
+ # Copyright (C) 1997-2013 Free Software Foundation, Inc.
698
+ #
699
+ # This file is free software; the Free Software Foundation
700
+ # gives unlimited permission to copy and/or distribute it,
701
+ # with or without modifications, as long as this notice is preserved.
702
+
703
+ # AM_MISSING_PROG(NAME, PROGRAM)
704
+ # ------------------------------
705
+ AC_DEFUN([AM_MISSING_PROG],
706
+ [AC_REQUIRE([AM_MISSING_HAS_RUN])
707
+ $1=${$1-"${am_missing_run}$2"}
708
+ AC_SUBST($1)])
709
+
710
+ # AM_MISSING_HAS_RUN
711
+ # ------------------
712
+ # Define MISSING if not defined so far and test if it is modern enough.
713
+ # If it is, set am_missing_run to use it, otherwise, to nothing.
714
+ AC_DEFUN([AM_MISSING_HAS_RUN],
715
+ [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
716
+ AC_REQUIRE_AUX_FILE([missing])dnl
717
+ if test x"${MISSING+set}" != xset; then
718
+ case $am_aux_dir in
719
+ *\ * | *\ *)
720
+ MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
721
+ *)
722
+ MISSING="\${SHELL} $am_aux_dir/missing" ;;
723
+ esac
724
+ fi
725
+ # Use eval to expand $SHELL
726
+ if eval "$MISSING --is-lightweight"; then
727
+ am_missing_run="$MISSING "
728
+ else
729
+ am_missing_run=
730
+ AC_MSG_WARN(['missing' script is too old or missing])
731
+ fi
732
+ ])
733
+
734
+ # -*- Autoconf -*-
735
+ # Obsolete and "removed" macros, that must however still report explicit
736
+ # error messages when used, to smooth transition.
737
+ #
738
+ # Copyright (C) 1996-2013 Free Software Foundation, Inc.
739
+ #
740
+ # This file is free software; the Free Software Foundation
741
+ # gives unlimited permission to copy and/or distribute it,
742
+ # with or without modifications, as long as this notice is preserved.
743
+
744
+ AC_DEFUN([AM_CONFIG_HEADER],
745
+ [AC_DIAGNOSE([obsolete],
746
+ ['$0': this macro is obsolete.
747
+ You should use the 'AC][_CONFIG_HEADERS' macro instead.])dnl
748
+ AC_CONFIG_HEADERS($@)])
749
+
750
+ AC_DEFUN([AM_PROG_CC_STDC],
751
+ [AC_PROG_CC
752
+ am_cv_prog_cc_stdc=$ac_cv_prog_cc_stdc
753
+ AC_DIAGNOSE([obsolete],
754
+ ['$0': this macro is obsolete.
755
+ You should simply use the 'AC][_PROG_CC' macro instead.
756
+ Also, your code should no longer depend upon 'am_cv_prog_cc_stdc',
757
+ but upon 'ac_cv_prog_cc_stdc'.])])
758
+
759
+ AC_DEFUN([AM_C_PROTOTYPES],
760
+ [AC_FATAL([automatic de-ANSI-fication support has been removed])])
761
+ AU_DEFUN([fp_C_PROTOTYPES], [AM_C_PROTOTYPES])
762
+
763
+ # Helper functions for option handling. -*- Autoconf -*-
764
+
765
+ # Copyright (C) 2001-2013 Free Software Foundation, Inc.
766
+ #
767
+ # This file is free software; the Free Software Foundation
768
+ # gives unlimited permission to copy and/or distribute it,
769
+ # with or without modifications, as long as this notice is preserved.
770
+
771
+ # _AM_MANGLE_OPTION(NAME)
772
+ # -----------------------
773
+ AC_DEFUN([_AM_MANGLE_OPTION],
774
+ [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
775
+
776
+ # _AM_SET_OPTION(NAME)
777
+ # --------------------
778
+ # Set option NAME. Presently that only means defining a flag for this option.
779
+ AC_DEFUN([_AM_SET_OPTION],
780
+ [m4_define(_AM_MANGLE_OPTION([$1]), [1])])
781
+
782
+ # _AM_SET_OPTIONS(OPTIONS)
783
+ # ------------------------
784
+ # OPTIONS is a space-separated list of Automake options.
785
+ AC_DEFUN([_AM_SET_OPTIONS],
786
+ [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
787
+
788
+ # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
789
+ # -------------------------------------------
790
+ # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
791
+ AC_DEFUN([_AM_IF_OPTION],
792
+ [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
793
+
794
+ # Copyright (C) 1999-2013 Free Software Foundation, Inc.
795
+ #
796
+ # This file is free software; the Free Software Foundation
797
+ # gives unlimited permission to copy and/or distribute it,
798
+ # with or without modifications, as long as this notice is preserved.
799
+
800
+ # _AM_PROG_CC_C_O
801
+ # ---------------
802
+ # Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC
803
+ # to automatically call this.
804
+ AC_DEFUN([_AM_PROG_CC_C_O],
805
+ [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
806
+ AC_REQUIRE_AUX_FILE([compile])dnl
807
+ AC_LANG_PUSH([C])dnl
808
+ AC_CACHE_CHECK(
809
+ [whether $CC understands -c and -o together],
810
+ [am_cv_prog_cc_c_o],
811
+ [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
812
+ # Make sure it works both with $CC and with simple cc.
813
+ # Following AC_PROG_CC_C_O, we do the test twice because some
814
+ # compilers refuse to overwrite an existing .o file with -o,
815
+ # though they will create one.
816
+ am_cv_prog_cc_c_o=yes
817
+ for am_i in 1 2; do
818
+ if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
819
+ && test -f conftest2.$ac_objext; then
820
+ : OK
821
+ else
822
+ am_cv_prog_cc_c_o=no
823
+ break
824
+ fi
825
+ done
826
+ rm -f core conftest*
827
+ unset am_i])
828
+ if test "$am_cv_prog_cc_c_o" != yes; then
829
+ # Losing compiler, so override with the script.
830
+ # FIXME: It is wrong to rewrite CC.
831
+ # But if we don't then we get into trouble of one sort or another.
832
+ # A longer-term fix would be to have automake use am__CC in this case,
833
+ # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
834
+ CC="$am_aux_dir/compile $CC"
835
+ fi
836
+ AC_LANG_POP([C])])
837
+
838
+ # For backward compatibility.
839
+ AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
840
+
841
+ # Copyright (C) 2001-2013 Free Software Foundation, Inc.
842
+ #
843
+ # This file is free software; the Free Software Foundation
844
+ # gives unlimited permission to copy and/or distribute it,
845
+ # with or without modifications, as long as this notice is preserved.
846
+
847
+ # AM_RUN_LOG(COMMAND)
848
+ # -------------------
849
+ # Run COMMAND, save the exit status in ac_status, and log it.
850
+ # (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
851
+ AC_DEFUN([AM_RUN_LOG],
852
+ [{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
853
+ ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
854
+ ac_status=$?
855
+ echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
856
+ (exit $ac_status); }])
857
+
858
+ # Check to make sure that the build environment is sane. -*- Autoconf -*-
859
+
860
+ # Copyright (C) 1996-2013 Free Software Foundation, Inc.
861
+ #
862
+ # This file is free software; the Free Software Foundation
863
+ # gives unlimited permission to copy and/or distribute it,
864
+ # with or without modifications, as long as this notice is preserved.
865
+
866
+ # AM_SANITY_CHECK
867
+ # ---------------
868
+ AC_DEFUN([AM_SANITY_CHECK],
869
+ [AC_MSG_CHECKING([whether build environment is sane])
870
+ # Reject unsafe characters in $srcdir or the absolute working directory
871
+ # name. Accept space and tab only in the latter.
872
+ am_lf='
873
+ '
874
+ case `pwd` in
875
+ *[[\\\"\#\$\&\'\`$am_lf]]*)
876
+ AC_MSG_ERROR([unsafe absolute working directory name]);;
877
+ esac
878
+ case $srcdir in
879
+ *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
880
+ AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
881
+ esac
882
+
883
+ # Do 'set' in a subshell so we don't clobber the current shell's
884
+ # arguments. Must try -L first in case configure is actually a
885
+ # symlink; some systems play weird games with the mod time of symlinks
886
+ # (eg FreeBSD returns the mod time of the symlink's containing
887
+ # directory).
888
+ if (
889
+ am_has_slept=no
890
+ for am_try in 1 2; do
891
+ echo "timestamp, slept: $am_has_slept" > conftest.file
892
+ set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
893
+ if test "$[*]" = "X"; then
894
+ # -L didn't work.
895
+ set X `ls -t "$srcdir/configure" conftest.file`
896
+ fi
897
+ if test "$[*]" != "X $srcdir/configure conftest.file" \
898
+ && test "$[*]" != "X conftest.file $srcdir/configure"; then
899
+
900
+ # If neither matched, then we have a broken ls. This can happen
901
+ # if, for instance, CONFIG_SHELL is bash and it inherits a
902
+ # broken ls alias from the environment. This has actually
903
+ # happened. Such a system could not be considered "sane".
904
+ AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
905
+ alias in your environment])
906
+ fi
907
+ if test "$[2]" = conftest.file || test $am_try -eq 2; then
908
+ break
909
+ fi
910
+ # Just in case.
911
+ sleep 1
912
+ am_has_slept=yes
913
+ done
914
+ test "$[2]" = conftest.file
915
+ )
916
+ then
917
+ # Ok.
918
+ :
919
+ else
920
+ AC_MSG_ERROR([newly created file is older than distributed files!
921
+ Check your system clock])
922
+ fi
923
+ AC_MSG_RESULT([yes])
924
+ # If we didn't sleep, we still need to ensure time stamps of config.status and
925
+ # generated files are strictly newer.
926
+ am_sleep_pid=
927
+ if grep 'slept: no' conftest.file >/dev/null 2>&1; then
928
+ ( sleep 1 ) &
929
+ am_sleep_pid=$!
930
+ fi
931
+ AC_CONFIG_COMMANDS_PRE(
932
+ [AC_MSG_CHECKING([that generated files are newer than configure])
933
+ if test -n "$am_sleep_pid"; then
934
+ # Hide warnings about reused PIDs.
935
+ wait $am_sleep_pid 2>/dev/null
936
+ fi
937
+ AC_MSG_RESULT([done])])
938
+ rm -f conftest.file
939
+ ])
940
+
941
+ # Copyright (C) 2009-2013 Free Software Foundation, Inc.
942
+ #
943
+ # This file is free software; the Free Software Foundation
944
+ # gives unlimited permission to copy and/or distribute it,
945
+ # with or without modifications, as long as this notice is preserved.
946
+
947
+ # AM_SILENT_RULES([DEFAULT])
948
+ # --------------------------
949
+ # Enable less verbose build rules; with the default set to DEFAULT
950
+ # ("yes" being less verbose, "no" or empty being verbose).
951
+ AC_DEFUN([AM_SILENT_RULES],
952
+ [AC_ARG_ENABLE([silent-rules], [dnl
953
+ AS_HELP_STRING(
954
+ [--enable-silent-rules],
955
+ [less verbose build output (undo: "make V=1")])
956
+ AS_HELP_STRING(
957
+ [--disable-silent-rules],
958
+ [verbose build output (undo: "make V=0")])dnl
959
+ ])
960
+ case $enable_silent_rules in @%:@ (((
961
+ yes) AM_DEFAULT_VERBOSITY=0;;
962
+ no) AM_DEFAULT_VERBOSITY=1;;
963
+ *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
964
+ esac
965
+ dnl
966
+ dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
967
+ dnl do not support nested variable expansions.
968
+ dnl See automake bug#9928 and bug#10237.
969
+ am_make=${MAKE-make}
970
+ AC_CACHE_CHECK([whether $am_make supports nested variables],
971
+ [am_cv_make_support_nested_variables],
972
+ [if AS_ECHO([['TRUE=$(BAR$(V))
973
+ BAR0=false
974
+ BAR1=true
975
+ V=1
976
+ am__doit:
977
+ @$(TRUE)
978
+ .PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
979
+ am_cv_make_support_nested_variables=yes
980
+ else
981
+ am_cv_make_support_nested_variables=no
982
+ fi])
983
+ if test $am_cv_make_support_nested_variables = yes; then
984
+ dnl Using '$V' instead of '$(V)' breaks IRIX make.
985
+ AM_V='$(V)'
986
+ AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
987
+ else
988
+ AM_V=$AM_DEFAULT_VERBOSITY
989
+ AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
990
+ fi
991
+ AC_SUBST([AM_V])dnl
992
+ AM_SUBST_NOTMAKE([AM_V])dnl
993
+ AC_SUBST([AM_DEFAULT_V])dnl
994
+ AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
995
+ AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
996
+ AM_BACKSLASH='\'
997
+ AC_SUBST([AM_BACKSLASH])dnl
998
+ _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
999
+ ])
1000
+
1001
+ # Copyright (C) 2001-2013 Free Software Foundation, Inc.
1002
+ #
1003
+ # This file is free software; the Free Software Foundation
1004
+ # gives unlimited permission to copy and/or distribute it,
1005
+ # with or without modifications, as long as this notice is preserved.
1006
+
1007
+ # AM_PROG_INSTALL_STRIP
1008
+ # ---------------------
1009
+ # One issue with vendor 'install' (even GNU) is that you can't
1010
+ # specify the program used to strip binaries. This is especially
1011
+ # annoying in cross-compiling environments, where the build's strip
1012
+ # is unlikely to handle the host's binaries.
1013
+ # Fortunately install-sh will honor a STRIPPROG variable, so we
1014
+ # always use install-sh in "make install-strip", and initialize
1015
+ # STRIPPROG with the value of the STRIP variable (set by the user).
1016
+ AC_DEFUN([AM_PROG_INSTALL_STRIP],
1017
+ [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
1018
+ # Installed binaries are usually stripped using 'strip' when the user
1019
+ # run "make install-strip". However 'strip' might not be the right
1020
+ # tool to use in cross-compilation environments, therefore Automake
1021
+ # will honor the 'STRIP' environment variable to overrule this program.
1022
+ dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
1023
+ if test "$cross_compiling" != no; then
1024
+ AC_CHECK_TOOL([STRIP], [strip], :)
1025
+ fi
1026
+ INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
1027
+ AC_SUBST([INSTALL_STRIP_PROGRAM])])
1028
+
1029
+ # Copyright (C) 2006-2013 Free Software Foundation, Inc.
1030
+ #
1031
+ # This file is free software; the Free Software Foundation
1032
+ # gives unlimited permission to copy and/or distribute it,
1033
+ # with or without modifications, as long as this notice is preserved.
1034
+
1035
+ # _AM_SUBST_NOTMAKE(VARIABLE)
1036
+ # ---------------------------
1037
+ # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
1038
+ # This macro is traced by Automake.
1039
+ AC_DEFUN([_AM_SUBST_NOTMAKE])
1040
+
1041
+ # AM_SUBST_NOTMAKE(VARIABLE)
1042
+ # --------------------------
1043
+ # Public sister of _AM_SUBST_NOTMAKE.
1044
+ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
1045
+
1046
+ # Check how to create a tarball. -*- Autoconf -*-
1047
+
1048
+ # Copyright (C) 2004-2013 Free Software Foundation, Inc.
1049
+ #
1050
+ # This file is free software; the Free Software Foundation
1051
+ # gives unlimited permission to copy and/or distribute it,
1052
+ # with or without modifications, as long as this notice is preserved.
1053
+
1054
+ # _AM_PROG_TAR(FORMAT)
1055
+ # --------------------
1056
+ # Check how to create a tarball in format FORMAT.
1057
+ # FORMAT should be one of 'v7', 'ustar', or 'pax'.
1058
+ #
1059
+ # Substitute a variable $(am__tar) that is a command
1060
+ # writing to stdout a FORMAT-tarball containing the directory
1061
+ # $tardir.
1062
+ # tardir=directory && $(am__tar) > result.tar
1063
+ #
1064
+ # Substitute a variable $(am__untar) that extract such
1065
+ # a tarball read from stdin.
1066
+ # $(am__untar) < result.tar
1067
+ #
1068
+ AC_DEFUN([_AM_PROG_TAR],
1069
+ [# Always define AMTAR for backward compatibility. Yes, it's still used
1070
+ # in the wild :-( We should find a proper way to deprecate it ...
1071
+ AC_SUBST([AMTAR], ['$${TAR-tar}'])
1072
+
1073
+ # We'll loop over all known methods to create a tar archive until one works.
1074
+ _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
1075
+
1076
+ m4_if([$1], [v7],
1077
+ [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
1078
+
1079
+ [m4_case([$1],
1080
+ [ustar],
1081
+ [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
1082
+ # There is notably a 21 bits limit for the UID and the GID. In fact,
1083
+ # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
1084
+ # and bug#13588).
1085
+ am_max_uid=2097151 # 2^21 - 1
1086
+ am_max_gid=$am_max_uid
1087
+ # The $UID and $GID variables are not portable, so we need to resort
1088
+ # to the POSIX-mandated id(1) utility. Errors in the 'id' calls
1089
+ # below are definitely unexpected, so allow the users to see them
1090
+ # (that is, avoid stderr redirection).
1091
+ am_uid=`id -u || echo unknown`
1092
+ am_gid=`id -g || echo unknown`
1093
+ AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
1094
+ if test $am_uid -le $am_max_uid; then
1095
+ AC_MSG_RESULT([yes])
1096
+ else
1097
+ AC_MSG_RESULT([no])
1098
+ _am_tools=none
1099
+ fi
1100
+ AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
1101
+ if test $am_gid -le $am_max_gid; then
1102
+ AC_MSG_RESULT([yes])
1103
+ else
1104
+ AC_MSG_RESULT([no])
1105
+ _am_tools=none
1106
+ fi],
1107
+
1108
+ [pax],
1109
+ [],
1110
+
1111
+ [m4_fatal([Unknown tar format])])
1112
+
1113
+ AC_MSG_CHECKING([how to create a $1 tar archive])
1114
+
1115
+ # Go ahead even if we have the value already cached. We do so because we
1116
+ # need to set the values for the 'am__tar' and 'am__untar' variables.
1117
+ _am_tools=${am_cv_prog_tar_$1-$_am_tools}
1118
+
1119
+ for _am_tool in $_am_tools; do
1120
+ case $_am_tool in
1121
+ gnutar)
1122
+ for _am_tar in tar gnutar gtar; do
1123
+ AM_RUN_LOG([$_am_tar --version]) && break
1124
+ done
1125
+ am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
1126
+ am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
1127
+ am__untar="$_am_tar -xf -"
1128
+ ;;
1129
+ plaintar)
1130
+ # Must skip GNU tar: if it does not support --format= it doesn't create
1131
+ # ustar tarball either.
1132
+ (tar --version) >/dev/null 2>&1 && continue
1133
+ am__tar='tar chf - "$$tardir"'
1134
+ am__tar_='tar chf - "$tardir"'
1135
+ am__untar='tar xf -'
1136
+ ;;
1137
+ pax)
1138
+ am__tar='pax -L -x $1 -w "$$tardir"'
1139
+ am__tar_='pax -L -x $1 -w "$tardir"'
1140
+ am__untar='pax -r'
1141
+ ;;
1142
+ cpio)
1143
+ am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
1144
+ am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
1145
+ am__untar='cpio -i -H $1 -d'
1146
+ ;;
1147
+ none)
1148
+ am__tar=false
1149
+ am__tar_=false
1150
+ am__untar=false
1151
+ ;;
1152
+ esac
1153
+
1154
+ # If the value was cached, stop now. We just wanted to have am__tar
1155
+ # and am__untar set.
1156
+ test -n "${am_cv_prog_tar_$1}" && break
1157
+
1158
+ # tar/untar a dummy directory, and stop if the command works.
1159
+ rm -rf conftest.dir
1160
+ mkdir conftest.dir
1161
+ echo GrepMe > conftest.dir/file
1162
+ AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
1163
+ rm -rf conftest.dir
1164
+ if test -s conftest.tar; then
1165
+ AM_RUN_LOG([$am__untar <conftest.tar])
1166
+ AM_RUN_LOG([cat conftest.dir/file])
1167
+ grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
1168
+ fi
1169
+ done
1170
+ rm -rf conftest.dir
1171
+
1172
+ AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
1173
+ AC_MSG_RESULT([$am_cv_prog_tar_$1])])
1174
+
1175
+ AC_SUBST([am__tar])
1176
+ AC_SUBST([am__untar])
1177
+ ]) # _AM_PROG_TAR
1178
+
1179
+ m4_include([m4/libtool.m4])
1180
+ m4_include([m4/ltoptions.m4])
1181
+ m4_include([m4/ltsugar.m4])
1182
+ m4_include([m4/ltversion.m4])
1183
+ m4_include([m4/lt~obsolete.m4])