admesh 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
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])