.
[platform/upstream/coreutils.git] / aclocal.m4
1 # generated automatically by aclocal 1.7.9a -*- Autoconf -*-
2
3 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002
4 # Free Software Foundation, Inc.
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 # Do all the work for Automake.                            -*- Autoconf -*-
15
16 # This macro actually does too much some checks are only needed if
17 # your package does certain things.  But this isn't really a big deal.
18
19 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
20 # Free Software Foundation, Inc.
21
22 # This program is free software; you can redistribute it and/or modify
23 # it under the terms of the GNU General Public License as published by
24 # the Free Software Foundation; either version 2, or (at your option)
25 # any later version.
26
27 # This program is distributed in the hope that it will be useful,
28 # but WITHOUT ANY WARRANTY; without even the implied warranty of
29 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
30 # GNU General Public License for more details.
31
32 # You should have received a copy of the GNU General Public License
33 # along with this program; if not, write to the Free Software
34 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
35 # 02111-1307, USA.
36
37 # serial 10
38
39 AC_PREREQ([2.54])
40
41 # Autoconf 2.50 wants to disallow AM_ names.  We explicitly allow
42 # the ones we care about.
43 m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
44
45 # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
46 # AM_INIT_AUTOMAKE([OPTIONS])
47 # -----------------------------------------------
48 # The call with PACKAGE and VERSION arguments is the old style
49 # call (pre autoconf-2.50), which is being phased out.  PACKAGE
50 # and VERSION should now be passed to AC_INIT and removed from
51 # the call to AM_INIT_AUTOMAKE.
52 # We support both call styles for the transition.  After
53 # the next Automake release, Autoconf can make the AC_INIT
54 # arguments mandatory, and then we can depend on a new Autoconf
55 # release and drop the old call support.
56 AC_DEFUN([AM_INIT_AUTOMAKE],
57 [AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
58  AC_REQUIRE([AC_PROG_INSTALL])dnl
59 # test to see if srcdir already configured
60 if test "`cd $srcdir && pwd`" != "`pwd`" &&
61    test -f $srcdir/config.status; then
62   AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
63 fi
64
65 # test whether we have cygpath
66 if test -z "$CYGPATH_W"; then
67   if (cygpath --version) >/dev/null 2>/dev/null; then
68     CYGPATH_W='cygpath -w'
69   else
70     CYGPATH_W=echo
71   fi
72 fi
73 AC_SUBST([CYGPATH_W])
74
75 # Define the identity of the package.
76 dnl Distinguish between old-style and new-style calls.
77 m4_ifval([$2],
78 [m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
79  AC_SUBST([PACKAGE], [$1])dnl
80  AC_SUBST([VERSION], [$2])],
81 [_AM_SET_OPTIONS([$1])dnl
82  AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
83  AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
84
85 _AM_IF_OPTION([no-define],,
86 [AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
87  AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
88
89 # Some tools Automake needs.
90 AC_REQUIRE([AM_SANITY_CHECK])dnl
91 AC_REQUIRE([AC_ARG_PROGRAM])dnl
92 AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
93 AM_MISSING_PROG(AUTOCONF, autoconf)
94 AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
95 AM_MISSING_PROG(AUTOHEADER, autoheader)
96 AM_MISSING_PROG(MAKEINFO, makeinfo)
97 AM_MISSING_PROG(AMTAR, tar)
98 AM_PROG_INSTALL_SH
99 AM_PROG_INSTALL_STRIP
100 # We need awk for the "check" target.  The system "awk" is bad on
101 # some platforms.
102 AC_REQUIRE([AC_PROG_AWK])dnl
103 AC_REQUIRE([AC_PROG_MAKE_SET])dnl
104 AC_REQUIRE([AM_SET_LEADING_DOT])dnl
105
106 _AM_IF_OPTION([no-dependencies],,
107 [AC_PROVIDE_IFELSE([AC_PROG_CC],
108                   [_AM_DEPENDENCIES(CC)],
109                   [define([AC_PROG_CC],
110                           defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
111 AC_PROVIDE_IFELSE([AC_PROG_CXX],
112                   [_AM_DEPENDENCIES(CXX)],
113                   [define([AC_PROG_CXX],
114                           defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
115 ])
116 ])
117
118
119 # When config.status generates a header, we must update the stamp-h file.
120 # This file resides in the same directory as the config header
121 # that is generated.  The stamp files are numbered to have different names.
122
123 # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
124 # loop where config.status creates the headers, so we can generate
125 # our stamp files there.
126 AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
127 [# Compute $1's index in $config_headers.
128 _am_stamp_count=1
129 for _am_header in $config_headers :; do
130   case $_am_header in
131     $1 | $1:* )
132       break ;;
133     * )
134       _am_stamp_count=`expr $_am_stamp_count + 1` ;;
135   esac
136 done
137 echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
138
139 # Copyright 2002  Free Software Foundation, Inc.
140
141 # This program is free software; you can redistribute it and/or modify
142 # it under the terms of the GNU General Public License as published by
143 # the Free Software Foundation; either version 2, or (at your option)
144 # any later version.
145
146 # This program is distributed in the hope that it will be useful,
147 # but WITHOUT ANY WARRANTY; without even the implied warranty of
148 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
149 # GNU General Public License for more details.
150
151 # You should have received a copy of the GNU General Public License
152 # along with this program; if not, write to the Free Software
153 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
154
155 # AM_AUTOMAKE_VERSION(VERSION)
156 # ----------------------------
157 # Automake X.Y traces this macro to ensure aclocal.m4 has been
158 # generated from the m4 files accompanying Automake X.Y.
159 AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.7"])
160
161 # AM_SET_CURRENT_AUTOMAKE_VERSION
162 # -------------------------------
163 # Call AM_AUTOMAKE_VERSION so it can be traced.
164 # This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
165 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
166          [AM_AUTOMAKE_VERSION([1.7.9a])])
167
168 # Helper functions for option handling.                    -*- Autoconf -*-
169
170 # Copyright 2001, 2002  Free Software Foundation, Inc.
171
172 # This program is free software; you can redistribute it and/or modify
173 # it under the terms of the GNU General Public License as published by
174 # the Free Software Foundation; either version 2, or (at your option)
175 # any later version.
176
177 # This program is distributed in the hope that it will be useful,
178 # but WITHOUT ANY WARRANTY; without even the implied warranty of
179 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
180 # GNU General Public License for more details.
181
182 # You should have received a copy of the GNU General Public License
183 # along with this program; if not, write to the Free Software
184 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
185 # 02111-1307, USA.
186
187 # serial 2
188
189 # _AM_MANGLE_OPTION(NAME)
190 # -----------------------
191 AC_DEFUN([_AM_MANGLE_OPTION],
192 [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
193
194 # _AM_SET_OPTION(NAME)
195 # ------------------------------
196 # Set option NAME.  Presently that only means defining a flag for this option.
197 AC_DEFUN([_AM_SET_OPTION],
198 [m4_define(_AM_MANGLE_OPTION([$1]), 1)])
199
200 # _AM_SET_OPTIONS(OPTIONS)
201 # ----------------------------------
202 # OPTIONS is a space-separated list of Automake options.
203 AC_DEFUN([_AM_SET_OPTIONS],
204 [AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
205
206 # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
207 # -------------------------------------------
208 # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
209 AC_DEFUN([_AM_IF_OPTION],
210 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
211
212 #
213 # Check to make sure that the build environment is sane.
214 #
215
216 # Copyright 1996, 1997, 2000, 2001 Free Software Foundation, Inc.
217
218 # This program is free software; you can redistribute it and/or modify
219 # it under the terms of the GNU General Public License as published by
220 # the Free Software Foundation; either version 2, or (at your option)
221 # any later version.
222
223 # This program is distributed in the hope that it will be useful,
224 # but WITHOUT ANY WARRANTY; without even the implied warranty of
225 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
226 # GNU General Public License for more details.
227
228 # You should have received a copy of the GNU General Public License
229 # along with this program; if not, write to the Free Software
230 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
231 # 02111-1307, USA.
232
233 # serial 3
234
235 # AM_SANITY_CHECK
236 # ---------------
237 AC_DEFUN([AM_SANITY_CHECK],
238 [AC_MSG_CHECKING([whether build environment is sane])
239 # Just in case
240 sleep 1
241 echo timestamp > conftest.file
242 # Do `set' in a subshell so we don't clobber the current shell's
243 # arguments.  Must try -L first in case configure is actually a
244 # symlink; some systems play weird games with the mod time of symlinks
245 # (eg FreeBSD returns the mod time of the symlink's containing
246 # directory).
247 if (
248    set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
249    if test "$[*]" = "X"; then
250       # -L didn't work.
251       set X `ls -t $srcdir/configure conftest.file`
252    fi
253    rm -f conftest.file
254    if test "$[*]" != "X $srcdir/configure conftest.file" \
255       && test "$[*]" != "X conftest.file $srcdir/configure"; then
256
257       # If neither matched, then we have a broken ls.  This can happen
258       # if, for instance, CONFIG_SHELL is bash and it inherits a
259       # broken ls alias from the environment.  This has actually
260       # happened.  Such a system could not be considered "sane".
261       AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
262 alias in your environment])
263    fi
264
265    test "$[2]" = conftest.file
266    )
267 then
268    # Ok.
269    :
270 else
271    AC_MSG_ERROR([newly created file is older than distributed files!
272 Check your system clock])
273 fi
274 AC_MSG_RESULT(yes)])
275
276 #  -*- Autoconf -*-
277
278
279 # Copyright 1997, 1999, 2000, 2001 Free Software Foundation, Inc.
280
281 # This program is free software; you can redistribute it and/or modify
282 # it under the terms of the GNU General Public License as published by
283 # the Free Software Foundation; either version 2, or (at your option)
284 # any later version.
285
286 # This program is distributed in the hope that it will be useful,
287 # but WITHOUT ANY WARRANTY; without even the implied warranty of
288 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
289 # GNU General Public License for more details.
290
291 # You should have received a copy of the GNU General Public License
292 # along with this program; if not, write to the Free Software
293 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
294 # 02111-1307, USA.
295
296 # serial 3
297
298 # AM_MISSING_PROG(NAME, PROGRAM)
299 # ------------------------------
300 AC_DEFUN([AM_MISSING_PROG],
301 [AC_REQUIRE([AM_MISSING_HAS_RUN])
302 $1=${$1-"${am_missing_run}$2"}
303 AC_SUBST($1)])
304
305
306 # AM_MISSING_HAS_RUN
307 # ------------------
308 # Define MISSING if not defined so far and test if it supports --run.
309 # If it does, set am_missing_run to use it, otherwise, to nothing.
310 AC_DEFUN([AM_MISSING_HAS_RUN],
311 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
312 test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
313 # Use eval to expand $SHELL
314 if eval "$MISSING --run true"; then
315   am_missing_run="$MISSING --run "
316 else
317   am_missing_run=
318   AC_MSG_WARN([`missing' script is too old or missing])
319 fi
320 ])
321
322 # AM_AUX_DIR_EXPAND
323
324 # Copyright 2001 Free Software Foundation, Inc.
325
326 # This program is free software; you can redistribute it and/or modify
327 # it under the terms of the GNU General Public License as published by
328 # the Free Software Foundation; either version 2, or (at your option)
329 # any later version.
330
331 # This program is distributed in the hope that it will be useful,
332 # but WITHOUT ANY WARRANTY; without even the implied warranty of
333 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
334 # GNU General Public License for more details.
335
336 # You should have received a copy of the GNU General Public License
337 # along with this program; if not, write to the Free Software
338 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
339 # 02111-1307, USA.
340
341 # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
342 # $ac_aux_dir to `$srcdir/foo'.  In other projects, it is set to
343 # `$srcdir', `$srcdir/..', or `$srcdir/../..'.
344 #
345 # Of course, Automake must honor this variable whenever it calls a
346 # tool from the auxiliary directory.  The problem is that $srcdir (and
347 # therefore $ac_aux_dir as well) can be either absolute or relative,
348 # depending on how configure is run.  This is pretty annoying, since
349 # it makes $ac_aux_dir quite unusable in subdirectories: in the top
350 # source directory, any form will work fine, but in subdirectories a
351 # relative path needs to be adjusted first.
352 #
353 # $ac_aux_dir/missing
354 #    fails when called from a subdirectory if $ac_aux_dir is relative
355 # $top_srcdir/$ac_aux_dir/missing
356 #    fails if $ac_aux_dir is absolute,
357 #    fails when called from a subdirectory in a VPATH build with
358 #          a relative $ac_aux_dir
359 #
360 # The reason of the latter failure is that $top_srcdir and $ac_aux_dir
361 # are both prefixed by $srcdir.  In an in-source build this is usually
362 # harmless because $srcdir is `.', but things will broke when you
363 # start a VPATH build or use an absolute $srcdir.
364 #
365 # So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
366 # iff we strip the leading $srcdir from $ac_aux_dir.  That would be:
367 #   am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
368 # and then we would define $MISSING as
369 #   MISSING="\${SHELL} $am_aux_dir/missing"
370 # This will work as long as MISSING is not called from configure, because
371 # unfortunately $(top_srcdir) has no meaning in configure.
372 # However there are other variables, like CC, which are often used in
373 # configure, and could therefore not use this "fixed" $ac_aux_dir.
374 #
375 # Another solution, used here, is to always expand $ac_aux_dir to an
376 # absolute PATH.  The drawback is that using absolute paths prevent a
377 # configured tree to be moved without reconfiguration.
378
379 # Rely on autoconf to set up CDPATH properly.
380 AC_PREREQ([2.50])
381
382 AC_DEFUN([AM_AUX_DIR_EXPAND], [
383 # expand $ac_aux_dir to an absolute path
384 am_aux_dir=`cd $ac_aux_dir && pwd`
385 ])
386
387 # AM_PROG_INSTALL_SH
388 # ------------------
389 # Define $install_sh.
390
391 # Copyright 2001 Free Software Foundation, Inc.
392
393 # This program is free software; you can redistribute it and/or modify
394 # it under the terms of the GNU General Public License as published by
395 # the Free Software Foundation; either version 2, or (at your option)
396 # any later version.
397
398 # This program is distributed in the hope that it will be useful,
399 # but WITHOUT ANY WARRANTY; without even the implied warranty of
400 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
401 # GNU General Public License for more details.
402
403 # You should have received a copy of the GNU General Public License
404 # along with this program; if not, write to the Free Software
405 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
406 # 02111-1307, USA.
407
408 AC_DEFUN([AM_PROG_INSTALL_SH],
409 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
410 install_sh=${install_sh-"$am_aux_dir/install-sh"}
411 AC_SUBST(install_sh)])
412
413 # AM_PROG_INSTALL_STRIP
414
415 # Copyright 2001 Free Software Foundation, Inc.
416
417 # This program is free software; you can redistribute it and/or modify
418 # it under the terms of the GNU General Public License as published by
419 # the Free Software Foundation; either version 2, or (at your option)
420 # any later version.
421
422 # This program is distributed in the hope that it will be useful,
423 # but WITHOUT ANY WARRANTY; without even the implied warranty of
424 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
425 # GNU General Public License for more details.
426
427 # You should have received a copy of the GNU General Public License
428 # along with this program; if not, write to the Free Software
429 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
430 # 02111-1307, USA.
431
432 # One issue with vendor `install' (even GNU) is that you can't
433 # specify the program used to strip binaries.  This is especially
434 # annoying in cross-compiling environments, where the build's strip
435 # is unlikely to handle the host's binaries.
436 # Fortunately install-sh will honor a STRIPPROG variable, so we
437 # always use install-sh in `make install-strip', and initialize
438 # STRIPPROG with the value of the STRIP variable (set by the user).
439 AC_DEFUN([AM_PROG_INSTALL_STRIP],
440 [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
441 # Installed binaries are usually stripped using `strip' when the user
442 # run `make install-strip'.  However `strip' might not be the right
443 # tool to use in cross-compilation environments, therefore Automake
444 # will honor the `STRIP' environment variable to overrule this program.
445 dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
446 if test "$cross_compiling" != no; then
447   AC_CHECK_TOOL([STRIP], [strip], :)
448 fi
449 INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
450 AC_SUBST([INSTALL_STRIP_PROGRAM])])
451
452 #                                                          -*- Autoconf -*-
453 # Copyright (C) 2003  Free Software Foundation, Inc.
454
455 # This program is free software; you can redistribute it and/or modify
456 # it under the terms of the GNU General Public License as published by
457 # the Free Software Foundation; either version 2, or (at your option)
458 # any later version.
459
460 # This program is distributed in the hope that it will be useful,
461 # but WITHOUT ANY WARRANTY; without even the implied warranty of
462 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
463 # GNU General Public License for more details.
464
465 # You should have received a copy of the GNU General Public License
466 # along with this program; if not, write to the Free Software
467 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
468 # 02111-1307, USA.
469
470 # serial 1
471
472 # Check whether the underlying file-system supports filenames
473 # with a leading dot.  For instance MS-DOS doesn't.
474 AC_DEFUN([AM_SET_LEADING_DOT],
475 [rm -rf .tst 2>/dev/null
476 mkdir .tst 2>/dev/null
477 if test -d .tst; then
478   am__leading_dot=.
479 else
480   am__leading_dot=_
481 fi
482 rmdir .tst 2>/dev/null
483 AC_SUBST([am__leading_dot])])
484
485 # serial 5                                              -*- Autoconf -*-
486
487 # Copyright (C) 1999, 2000, 2001, 2002, 2003  Free Software Foundation, Inc.
488
489 # This program is free software; you can redistribute it and/or modify
490 # it under the terms of the GNU General Public License as published by
491 # the Free Software Foundation; either version 2, or (at your option)
492 # any later version.
493
494 # This program is distributed in the hope that it will be useful,
495 # but WITHOUT ANY WARRANTY; without even the implied warranty of
496 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
497 # GNU General Public License for more details.
498
499 # You should have received a copy of the GNU General Public License
500 # along with this program; if not, write to the Free Software
501 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
502 # 02111-1307, USA.
503
504
505 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
506 # written in clear, in which case automake, when reading aclocal.m4,
507 # will think it sees a *use*, and therefore will trigger all it's
508 # C support machinery.  Also note that it means that autoscan, seeing
509 # CC etc. in the Makefile, will ask for an AC_PROG_CC use...
510
511
512
513 # _AM_DEPENDENCIES(NAME)
514 # ----------------------
515 # See how the compiler implements dependency checking.
516 # NAME is "CC", "CXX", "GCJ", or "OBJC".
517 # We try a few techniques and use that to set a single cache variable.
518 #
519 # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
520 # modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
521 # dependency, and given that the user is not expected to run this macro,
522 # just rely on AC_PROG_CC.
523 AC_DEFUN([_AM_DEPENDENCIES],
524 [AC_REQUIRE([AM_SET_DEPDIR])dnl
525 AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
526 AC_REQUIRE([AM_MAKE_INCLUDE])dnl
527 AC_REQUIRE([AM_DEP_TRACK])dnl
528
529 ifelse([$1], CC,   [depcc="$CC"   am_compiler_list=],
530        [$1], CXX,  [depcc="$CXX"  am_compiler_list=],
531        [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
532        [$1], GCJ,  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],
533                    [depcc="$$1"   am_compiler_list=])
534
535 AC_CACHE_CHECK([dependency style of $depcc],
536                [am_cv_$1_dependencies_compiler_type],
537 [if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
538   # We make a subdir and do the tests there.  Otherwise we can end up
539   # making bogus files that we don't know about and never remove.  For
540   # instance it was reported that on HP-UX the gcc test will end up
541   # making a dummy file named `D' -- because `-MD' means `put the output
542   # in D'.
543   mkdir conftest.dir
544   # Copy depcomp to subdir because otherwise we won't find it if we're
545   # using a relative directory.
546   cp "$am_depcomp" conftest.dir
547   cd conftest.dir
548   # We will build objects and dependencies in a subdirectory because
549   # it helps to detect inapplicable dependency modes.  For instance
550   # both Tru64's cc and ICC support -MD to output dependencies as a
551   # side effect of compilation, but ICC will put the dependencies in
552   # the current directory while Tru64 will put them in the object
553   # directory.
554   mkdir sub
555
556   am_cv_$1_dependencies_compiler_type=none
557   if test "$am_compiler_list" = ""; then
558      am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
559   fi
560   for depmode in $am_compiler_list; do
561     # Setup a source with many dependencies, because some compilers
562     # like to wrap large dependency lists on column 80 (with \), and
563     # we should not choose a depcomp mode which is confused by this.
564     #
565     # We need to recreate these files for each test, as the compiler may
566     # overwrite some of them when testing with obscure command lines.
567     # This happens at least with the AIX C compiler.
568     : > sub/conftest.c
569     for i in 1 2 3 4 5 6; do
570       echo '#include "conftst'$i'.h"' >> sub/conftest.c
571       : > sub/conftst$i.h
572     done
573     echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
574
575     case $depmode in
576     nosideeffect)
577       # after this tag, mechanisms are not by side-effect, so they'll
578       # only be used when explicitly requested
579       if test "x$enable_dependency_tracking" = xyes; then
580         continue
581       else
582         break
583       fi
584       ;;
585     none) break ;;
586     esac
587     # We check with `-c' and `-o' for the sake of the "dashmstdout"
588     # mode.  It turns out that the SunPro C++ compiler does not properly
589     # handle `-M -o', and we need to detect this.
590     if depmode=$depmode \
591        source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
592        depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
593        $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
594          >/dev/null 2>conftest.err &&
595        grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
596        grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
597        ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
598       # icc doesn't choke on unknown options, it will just issue warnings
599       # (even with -Werror).  So we grep stderr for any message
600       # that says an option was ignored.
601       if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
602         am_cv_$1_dependencies_compiler_type=$depmode
603         break
604       fi
605     fi
606   done
607
608   cd ..
609   rm -rf conftest.dir
610 else
611   am_cv_$1_dependencies_compiler_type=none
612 fi
613 ])
614 AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
615 AM_CONDITIONAL([am__fastdep$1], [
616   test "x$enable_dependency_tracking" != xno \
617   && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
618 ])
619
620
621 # AM_SET_DEPDIR
622 # -------------
623 # Choose a directory name for dependency files.
624 # This macro is AC_REQUIREd in _AM_DEPENDENCIES
625 AC_DEFUN([AM_SET_DEPDIR],
626 [AC_REQUIRE([AM_SET_LEADING_DOT])dnl
627 AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
628 ])
629
630
631 # AM_DEP_TRACK
632 # ------------
633 AC_DEFUN([AM_DEP_TRACK],
634 [AC_ARG_ENABLE(dependency-tracking,
635 [  --disable-dependency-tracking Speeds up one-time builds
636   --enable-dependency-tracking  Do not reject slow dependency extractors])
637 if test "x$enable_dependency_tracking" != xno; then
638   am_depcomp="$ac_aux_dir/depcomp"
639   AMDEPBACKSLASH='\'
640 fi
641 AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
642 AC_SUBST([AMDEPBACKSLASH])
643 ])
644
645 # Generate code to set up dependency tracking.   -*- Autoconf -*-
646
647 # Copyright 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
648
649 # This program is free software; you can redistribute it and/or modify
650 # it under the terms of the GNU General Public License as published by
651 # the Free Software Foundation; either version 2, or (at your option)
652 # any later version.
653
654 # This program is distributed in the hope that it will be useful,
655 # but WITHOUT ANY WARRANTY; without even the implied warranty of
656 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
657 # GNU General Public License for more details.
658
659 # You should have received a copy of the GNU General Public License
660 # along with this program; if not, write to the Free Software
661 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
662 # 02111-1307, USA.
663
664 #serial 2
665
666 # _AM_OUTPUT_DEPENDENCY_COMMANDS
667 # ------------------------------
668 AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
669 [for mf in $CONFIG_FILES; do
670   # Strip MF so we end up with the name of the file.
671   mf=`echo "$mf" | sed -e 's/:.*$//'`
672   # Check whether this is an Automake generated Makefile or not.
673   # We used to match only the files named `Makefile.in', but
674   # some people rename them; so instead we look at the file content.
675   # Grep'ing the first line is not enough: some people post-process
676   # each Makefile.in and add a new line on top of each file to say so.
677   # So let's grep whole file.
678   if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
679     dirpart=`AS_DIRNAME("$mf")`
680   else
681     continue
682   fi
683   grep '^DEP_FILES *= *[[^ @%:@]]' < "$mf" > /dev/null || continue
684   # Extract the definition of DEP_FILES from the Makefile without
685   # running `make'.
686   DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"`
687   test -z "$DEPDIR" && continue
688   # When using ansi2knr, U may be empty or an underscore; expand it
689   U=`sed -n -e '/^U = / s///p' < "$mf"`
690   test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR"
691   # We invoke sed twice because it is the simplest approach to
692   # changing $(DEPDIR) to its actual value in the expansion.
693   for file in `sed -n -e '
694     /^DEP_FILES = .*\\\\$/ {
695       s/^DEP_FILES = //
696       :loop
697         s/\\\\$//
698         p
699         n
700         /\\\\$/ b loop
701       p
702     }
703     /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \
704        sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
705     # Make sure the directory exists.
706     test -f "$dirpart/$file" && continue
707     fdir=`AS_DIRNAME(["$file"])`
708     AS_MKDIR_P([$dirpart/$fdir])
709     # echo "creating $dirpart/$file"
710     echo '# dummy' > "$dirpart/$file"
711   done
712 done
713 ])# _AM_OUTPUT_DEPENDENCY_COMMANDS
714
715
716 # AM_OUTPUT_DEPENDENCY_COMMANDS
717 # -----------------------------
718 # This macro should only be invoked once -- use via AC_REQUIRE.
719 #
720 # This code is only required when automatic dependency tracking
721 # is enabled.  FIXME.  This creates each `.P' file that we will
722 # need in order to bootstrap the dependency handling code.
723 AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
724 [AC_CONFIG_COMMANDS([depfiles],
725      [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
726      [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
727 ])
728
729 # Check to see how 'make' treats includes.      -*- Autoconf -*-
730
731 # Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
732
733 # This program is free software; you can redistribute it and/or modify
734 # it under the terms of the GNU General Public License as published by
735 # the Free Software Foundation; either version 2, or (at your option)
736 # any later version.
737
738 # This program is distributed in the hope that it will be useful,
739 # but WITHOUT ANY WARRANTY; without even the implied warranty of
740 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
741 # GNU General Public License for more details.
742
743 # You should have received a copy of the GNU General Public License
744 # along with this program; if not, write to the Free Software
745 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
746 # 02111-1307, USA.
747
748 # serial 2
749
750 # AM_MAKE_INCLUDE()
751 # -----------------
752 # Check to see how make treats includes.
753 AC_DEFUN([AM_MAKE_INCLUDE],
754 [am_make=${MAKE-make}
755 cat > confinc << 'END'
756 am__doit:
757         @echo done
758 .PHONY: am__doit
759 END
760 # If we don't find an include directive, just comment out the code.
761 AC_MSG_CHECKING([for style of include used by $am_make])
762 am__include="#"
763 am__quote=
764 _am_result=none
765 # First try GNU make style include.
766 echo "include confinc" > confmf
767 # We grep out `Entering directory' and `Leaving directory'
768 # messages which can occur if `w' ends up in MAKEFLAGS.
769 # In particular we don't look at `^make:' because GNU make might
770 # be invoked under some other name (usually "gmake"), in which
771 # case it prints its new name instead of `make'.
772 if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
773    am__include=include
774    am__quote=
775    _am_result=GNU
776 fi
777 # Now try BSD make style include.
778 if test "$am__include" = "#"; then
779    echo '.include "confinc"' > confmf
780    if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
781       am__include=.include
782       am__quote="\""
783       _am_result=BSD
784    fi
785 fi
786 AC_SUBST([am__include])
787 AC_SUBST([am__quote])
788 AC_MSG_RESULT([$_am_result])
789 rm -f confinc confmf
790 ])
791
792 # AM_CONDITIONAL                                              -*- Autoconf -*-
793
794 # Copyright 1997, 2000, 2001 Free Software Foundation, Inc.
795
796 # This program is free software; you can redistribute it and/or modify
797 # it under the terms of the GNU General Public License as published by
798 # the Free Software Foundation; either version 2, or (at your option)
799 # any later version.
800
801 # This program is distributed in the hope that it will be useful,
802 # but WITHOUT ANY WARRANTY; without even the implied warranty of
803 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
804 # GNU General Public License for more details.
805
806 # You should have received a copy of the GNU General Public License
807 # along with this program; if not, write to the Free Software
808 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
809 # 02111-1307, USA.
810
811 # serial 5
812
813 AC_PREREQ(2.52)
814
815 # AM_CONDITIONAL(NAME, SHELL-CONDITION)
816 # -------------------------------------
817 # Define a conditional.
818 AC_DEFUN([AM_CONDITIONAL],
819 [ifelse([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
820         [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
821 AC_SUBST([$1_TRUE])
822 AC_SUBST([$1_FALSE])
823 if $2; then
824   $1_TRUE=
825   $1_FALSE='#'
826 else
827   $1_TRUE='#'
828   $1_FALSE=
829 fi
830 AC_CONFIG_COMMANDS_PRE(
831 [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
832   AC_MSG_ERROR([conditional "$1" was never defined.
833 Usually this means the macro was only invoked conditionally.])
834 fi])])
835
836 # Enable extensions on systems that normally disable them.
837
838 # Copyright (C) 2003 Free Software Foundation, Inc.
839
840 # This file is free software, distributed under the terms of the GNU
841 # General Public License.  As a special exception to the GNU General
842 # Public License, this file may be distributed as part of a program
843 # that contains a configuration script generated by Autoconf, under
844 # the same distribution terms as the rest of that program.
845
846 # gl_USE_SYSTEM_EXTENSIONS
847 # ------------------------
848 # Enable extensions on systems that normally disable them,
849 # typically due to standards-conformance issues.
850 AC_DEFUN([gl_USE_SYSTEM_EXTENSIONS], [
851   AC_BEFORE([$0], [AC_COMPILE_IFELSE])
852   AC_BEFORE([$0], [AC_RUN_IFELSE])
853
854   AC_REQUIRE([AC_GNU_SOURCE])
855   AC_REQUIRE([AC_AIX])
856   AC_REQUIRE([AC_MINIX])
857
858   AH_VERBATIM([__EXTENSIONS__],
859 [/* Enable extensions on Solaris.  */
860 #ifndef __EXTENSIONS__
861 # undef __EXTENSIONS__
862 #endif])
863   AC_DEFINE([__EXTENSIONS__])
864 ])
865
866 #serial 5
867
868 dnl From Jim Meyering.
869 dnl Find a new-enough version of Perl.
870 dnl
871
872 AC_DEFUN([jm_PERL],
873 [
874   dnl FIXME: don't hard-code 5.003
875   dnl FIXME: should we cache the result?
876   AC_MSG_CHECKING([for perl5.003 or newer])
877   if test "${PERL+set}" = set; then
878     # `PERL' is set in the user's environment.
879     candidate_perl_names="$PERL"
880     perl_specified=yes
881   else
882     candidate_perl_names='perl perl5'
883     perl_specified=no
884   fi
885
886   found=no
887   AC_SUBST(PERL)
888   PERL="$am_missing_run perl"
889   for perl in $candidate_perl_names; do
890     # Run test in a subshell; some versions of sh will print an error if
891     # an executable is not found, even if stderr is redirected.
892     if ( $perl -e 'require 5.003; use File::Compare' ) > /dev/null 2>&1; then
893       PERL=$perl
894       found=yes
895       break
896     fi
897   done
898
899   AC_MSG_RESULT($found)
900   test $found = no && AC_MSG_WARN([
901 WARNING: You don't seem to have perl5.003 or newer installed, or you lack
902          a usable version of the Perl File::Compare module.  As a result,
903          you may be unable to run a few tests or to regenerate certain
904          files if you modify the sources from which they are derived.
905 ] )
906 ])
907
908 #serial 70   -*- autoconf -*-
909
910 dnl Misc type-related macros for fileutils, sh-utils, textutils.
911
912 AC_DEFUN([jm_MACROS],
913 [
914   AC_PREREQ(2.58)
915
916   GNU_PACKAGE="GNU $PACKAGE"
917   AC_DEFINE_UNQUOTED(GNU_PACKAGE, "$GNU_PACKAGE",
918     [The concatenation of the strings `GNU ', and PACKAGE.])
919   AC_SUBST(GNU_PACKAGE)
920
921   AM_MISSING_PROG(HELP2MAN, help2man)
922   AC_SUBST(OPTIONAL_BIN_PROGS)
923   AC_SUBST(MAN)
924   AC_SUBST(DF_PROG)
925
926   dnl This macro actually runs replacement code.  See isc-posix.m4.
927   AC_REQUIRE([AC_ISC_POSIX])dnl
928
929   jm_CHECK_ALL_TYPES
930
931   AC_REQUIRE([UTILS_HOST_OS])
932   AC_REQUIRE([jm_ASSERT])
933   AC_REQUIRE([jm_CHECK_TYPE_STRUCT_UTIMBUF])
934   AC_REQUIRE([jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE])
935   AC_REQUIRE([jm_CHECK_TYPE_STRUCT_DIRENT_D_INO])
936   AC_REQUIRE([jm_CHECK_DECLS])
937
938   AC_REQUIRE([jm_PREREQ])
939
940   AC_REQUIRE([UTILS_FUNC_DIRFD])
941   AC_REQUIRE([AC_FUNC_ACL])
942   AC_REQUIRE([jm_FUNC_LCHOWN])
943   AC_REQUIRE([fetish_FUNC_RMDIR_NOTEMPTY])
944   AC_REQUIRE([jm_FUNC_CHOWN])
945   AC_REQUIRE([AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK])
946   AC_REQUIRE([AC_FUNC_STRERROR_R])
947   AC_REQUIRE([jm_FUNC_GROUP_MEMBER])
948   AC_REQUIRE([jm_AFS])
949   AC_REQUIRE([jm_AC_FUNC_LINK_FOLLOWS_SYMLINK])
950   AC_REQUIRE([jm_FUNC_FPENDING])
951
952   # This is for od and stat, and any other program that
953   # uses the PRI.MAX macros from inttypes.h.
954   AC_REQUIRE([gt_INTTYPES_PRI])
955
956   AC_REQUIRE([jm_FUNC_GETGROUPS])
957
958   AC_REQUIRE([AC_FUNC_FSEEKO])
959   AC_REQUIRE([AC_FUNC_ALLOCA])
960
961   AC_CONFIG_LIBOBJ_DIR([lib])
962   AC_FUNC_GETLOADAVG([lib])
963
964   AC_REQUIRE([jm_SYS_PROC_UPTIME])
965   AC_REQUIRE([jm_FUNC_FTRUNCATE])
966
967   # raise is used by at least sort and ls.
968   AC_REPLACE_FUNCS(raise)
969
970   # By default, argmatch should fail calling usage (1).
971   AC_DEFINE(ARGMATCH_DIE, [usage (1)],
972             [Define to the function xargmatch calls on failures.])
973   AC_DEFINE(ARGMATCH_DIE_DECL, [extern void usage ()],
974             [Define to the declaration of the xargmatch failure function.])
975
976   dnl Used to define SETVBUF in sys2.h.
977   dnl This evokes the following warning from autoconf:
978   dnl ...: warning: AC_TRY_RUN called without default to allow cross compiling
979   AC_FUNC_SETVBUF_REVERSED
980
981   # used by sleep and shred
982   AC_REQUIRE([gl_CLOCK_TIME])
983   AC_CHECK_FUNCS(gettimeofday)
984   AC_FUNC_GETTIMEOFDAY_CLOBBER
985
986   AC_REQUIRE([AC_FUNC_CLOSEDIR_VOID])
987
988   AC_CHECK_FUNCS( \
989     endgrent \
990     endpwent \
991     fdatasync \
992     ftruncate \
993     gethrtime \
994     hasmntopt \
995     isascii \
996     iswspace \
997     lchown \
998     listmntent \
999     localeconv \
1000     memcpy \
1001     mempcpy \
1002     mkfifo \
1003     realpath \
1004     sethostname \
1005     strchr \
1006     strerror \
1007     strrchr \
1008     sysctl \
1009     sysinfo \
1010     wcrtomb \
1011     tzset \
1012   )
1013
1014   # for test.c
1015   AC_CHECK_FUNCS(setreuid setregid)
1016
1017   AC_FUNC_STRTOD
1018   AC_REQUIRE([UTILS_SYS_OPEN_MAX])
1019   AC_REQUIRE([GL_FUNC_GETCWD_PATH_MAX])
1020   AC_REQUIRE([GL_FUNC_READDIR])
1021
1022   # See if linking `seq' requires -lm.
1023   # It does on nearly every system.  The single exception (so far) is
1024   # BeOS which has all the math functions in the normal runtime library
1025   # and doesn't have a separate math library.
1026
1027   AC_SUBST(SEQ_LIBM)
1028   ac_seq_body='
1029      static double x, y;
1030      x = floor (x);
1031      x = rint (x);
1032      x = modf (x, &y);'
1033   AC_TRY_LINK([#include <math.h>], $ac_seq_body, ,
1034     [ac_seq_save_LIBS="$LIBS"
1035      LIBS="$LIBS -lm"
1036      AC_TRY_LINK([#include <math.h>], $ac_seq_body, SEQ_LIBM=-lm)
1037      LIBS="$ac_seq_save_LIBS"
1038     ])
1039
1040   AM_LANGINFO_CODESET
1041   jm_GLIBC21
1042   AM_ICONV
1043   jm_FUNC_UNLINK_BUSY_TEXT
1044
1045   # These tests are for df.
1046   AC_REQUIRE([gl_FSUSAGE])
1047   AC_REQUIRE([gl_MOUNTLIST])
1048   if test $gl_cv_list_mounted_fs = yes && test $gl_cv_fs_space = yes; then
1049     DF_PROG='df$(EXEEXT)'
1050   fi
1051   AC_REQUIRE([jm_AC_DOS])
1052   AC_REQUIRE([AC_FUNC_CANONICALIZE_FILE_NAME])
1053
1054   # If any of these functions don't exist (e.g. DJGPP 2.03),
1055   # use the corresponding stub.
1056   AC_CHECK_FUNC([fchdir], , [AC_LIBOBJ(fchdir-stub)])
1057   AC_CHECK_FUNC([fchown], , [AC_LIBOBJ(fchown-stub)])
1058
1059   AC_REQUIRE([gl_FUNC_FREE])
1060 ])
1061
1062 # These tests must be run before any use of AC_CHECK_TYPE,
1063 # because that macro compiles code that tests e.g., HAVE_UNISTD_H.
1064 # See the definition of ac_includes_default in `configure'.
1065 AC_DEFUN([jm_CHECK_ALL_HEADERS],
1066 [
1067   AC_CHECK_HEADERS( \
1068     errno.h  \
1069     fcntl.h \
1070     float.h \
1071     hurd.h \
1072     limits.h \
1073     memory.h \
1074     mntent.h \
1075     mnttab.h \
1076     netdb.h \
1077     paths.h \
1078     stdlib.h \
1079     stddef.h \
1080     stdint.h \
1081     string.h \
1082     sys/filsys.h \
1083     sys/fs/s5param.h \
1084     sys/fs_types.h \
1085     sys/fstyp.h \
1086     sys/ioctl.h \
1087     sys/mntent.h \
1088     sys/mount.h \
1089     sys/param.h \
1090     sys/resource.h \
1091     sys/socket.h \
1092     sys/statfs.h \
1093     sys/statvfs.h \
1094     sys/sysctl.h \
1095     sys/systeminfo.h \
1096     sys/time.h \
1097     sys/timeb.h \
1098     sys/vfs.h \
1099     sys/wait.h \
1100     syslog.h \
1101     termios.h \
1102     unistd.h \
1103     utime.h \
1104     values.h \
1105   )
1106 ])
1107
1108 # This macro must be invoked before any tests that run the compiler.
1109 AC_DEFUN([jm_CHECK_ALL_TYPES],
1110 [
1111   dnl This test must come as early as possible after the compiler configuration
1112   dnl tests, because the choice of the file model can (in principle) affect
1113   dnl whether functions and headers are available, whether they work, etc.
1114   AC_REQUIRE([AC_SYS_LARGEFILE])
1115
1116   dnl This test must precede tests of compiler characteristics like
1117   dnl that for the inline keyword, since it may change the degree to
1118   dnl which the compiler supports such features.
1119   AC_REQUIRE([AM_C_PROTOTYPES])
1120
1121   dnl Checks for typedefs, structures, and compiler characteristics.
1122   AC_REQUIRE([AC_C_BIGENDIAN])
1123   AC_REQUIRE([AC_C_CONST])
1124   AC_REQUIRE([AC_C_VOLATILE])
1125   AC_REQUIRE([AC_C_INLINE])
1126   AC_REQUIRE([AC_C_LONG_DOUBLE])
1127
1128   AC_REQUIRE([jm_CHECK_ALL_HEADERS])
1129   AC_REQUIRE([AC_HEADER_DIRENT])
1130   AC_REQUIRE([AC_HEADER_STDC])
1131   AC_CHECK_MEMBERS(
1132     [struct stat.st_author,
1133      struct stat.st_blksize],,,
1134     [$ac_includes_default
1135 #include <sys/stat.h>
1136   ])
1137   AC_REQUIRE([AC_STRUCT_ST_BLOCKS])
1138
1139   AC_REQUIRE([AC_HEADER_STAT])
1140   AC_REQUIRE([AC_STRUCT_ST_MTIM_NSEC])
1141   AC_REQUIRE([AC_STRUCT_ST_DM_MODE])
1142
1143   AC_REQUIRE([AC_TYPE_GETGROUPS])
1144   AC_REQUIRE([AC_TYPE_MODE_T])
1145   AC_REQUIRE([AC_TYPE_OFF_T])
1146   AC_REQUIRE([AC_TYPE_PID_T])
1147   AC_REQUIRE([AC_TYPE_SIGNAL])
1148   AC_REQUIRE([AC_TYPE_SIZE_T])
1149   AC_REQUIRE([AC_TYPE_UID_T])
1150   AC_CHECK_TYPE(ino_t, unsigned long int)
1151   AC_CHECK_TYPE(uintptr_t, size_t)
1152
1153   gt_TYPE_SSIZE_T
1154
1155   dnl This relies on the fact that autoconf 2.14a's implementation of
1156   dnl AC_CHECK_TYPE checks includes unistd.h.
1157   AC_CHECK_TYPE(major_t, unsigned int)
1158   AC_CHECK_TYPE(minor_t, unsigned int)
1159
1160   AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])
1161   AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG])
1162
1163   AC_REQUIRE([AC_HEADER_MAJOR])
1164   AC_REQUIRE([AC_HEADER_DIRENT])
1165
1166 ])
1167
1168 # isc-posix.m4 serial 2 (gettext-0.11.2)
1169 dnl Copyright (C) 1995-2002 Free Software Foundation, Inc.
1170 dnl This file is free software, distributed under the terms of the GNU
1171 dnl General Public License.  As a special exception to the GNU General
1172 dnl Public License, this file may be distributed as part of a program
1173 dnl that contains a configuration script generated by Autoconf, under
1174 dnl the same distribution terms as the rest of that program.
1175
1176 # This file is not needed with autoconf-2.53 and newer.  Remove it in 2005.
1177
1178 # This test replaces the one in autoconf.
1179 # Currently this macro should have the same name as the autoconf macro
1180 # because gettext's gettext.m4 (distributed in the automake package)
1181 # still uses it.  Otherwise, the use in gettext.m4 makes autoheader
1182 # give these diagnostics:
1183 #   configure.in:556: AC_TRY_COMPILE was called before AC_ISC_POSIX
1184 #   configure.in:556: AC_TRY_RUN was called before AC_ISC_POSIX
1185
1186 undefine([AC_ISC_POSIX])
1187
1188 AC_DEFUN([AC_ISC_POSIX],
1189   [
1190     dnl This test replaces the obsolescent AC_ISC_POSIX kludge.
1191     AC_CHECK_LIB(cposix, strerror, [LIBS="$LIBS -lcposix"])
1192   ]
1193 )
1194
1195 #serial 3
1196
1197 dnl From Paul Eggert.
1198
1199 # Define HOST_OPERATING_SYSTEM to a name for the host operating system.
1200 AC_DEFUN([UTILS_HOST_OS],
1201 [
1202   AC_CACHE_CHECK([host operating system],
1203     utils_cv_host_operating_system,
1204
1205     [[case $host_os in
1206
1207        # These operating system names do not use the default heuristic below.
1208        # They are in reverse order, so that more-specific prefixes come first.
1209        winnt*)          os='Windows NT';;
1210        vos*)            os='VOS';;
1211        sysv*)           os='Unix System V';;
1212        superux*)        os='SUPER-UX';;
1213        sunos*)          os='SunOS';;
1214        stop*)           os='STOP';;
1215        sco*)            os='SCO Unix';;
1216        riscos*)         os='RISC OS';;
1217        riscix*)         os='RISCiX';;
1218        qnx*)            os='QNX';;
1219        pw32*)           os='PW32';;
1220        ptx*)            os='ptx';;
1221        plan9*)          os='Plan 9';;
1222        osf*)            os='Tru64';;
1223        os2*)            os='OS/2';;
1224        openbsd*)        os='OpenBSD';;
1225        nsk*)            os='NonStop Kernel';;
1226        nonstopux*)      os='NonStop-UX';;
1227        netbsd*-gnu*)    os='GNU/NetBSD';; # NetBSD kernel+libc, GNU userland
1228        netbsd*)         os='NetBSD';;
1229        knetbsd*-gnu)    os='GNU/KNetBSD';; # NetBSD kernel, GNU libc+userland
1230        kfreebsd*-gnu)   os='GNU/KFreeBSD';; # FreeBSD kernel, GNU libc+userland
1231        msdosdjgpp*)     os='DJGPP';;
1232        mpeix*)          os='MPE/iX';;
1233        mint*)           os='MiNT';;
1234        mingw*)          os='MinGW';;
1235        lynxos*)         os='LynxOS';;
1236        linux*)          os='GNU/Linux';;
1237        hpux*)           os='HP-UX';;
1238        hiux*)           os='HI-UX';;
1239        gnu*)            os='GNU';;
1240        freebsd*)        os='FreeBSD';;
1241        dgux*)           os='DG/UX';;
1242        bsdi*)           os='BSD/OS';;
1243        bsd*)            os='BSD';;
1244        beos*)           os='BeOS';;
1245        aux*)            os='A/UX';;
1246        atheos*)         os='AtheOS';;
1247        amigaos*)        os='Amiga OS';;
1248        aix*)            os='AIX';;
1249
1250        # The default heuristic takes the initial alphabetic string
1251        # from $host_os, but capitalizes its first letter.
1252        [A-Za-z]*)
1253          os=`
1254            expr "X$host_os" : 'X\([A-Za-z]\)' | tr '[a-z]' '[A-Z]'
1255          ``
1256            expr "X$host_os" : 'X.\([A-Za-z]*\)'
1257          `
1258          ;;
1259
1260        # If $host_os does not start with an alphabetic string, use it unchanged.
1261        *)
1262          os=$host_os;;
1263      esac
1264      utils_cv_host_operating_system=$os]])
1265   AC_DEFINE_UNQUOTED(HOST_OPERATING_SYSTEM,
1266     "$utils_cv_host_operating_system",
1267     [The host operating system.])
1268 ])
1269
1270 #serial 3
1271 dnl based on code from Eleftherios Gkioulekas
1272
1273 AC_DEFUN([jm_ASSERT],
1274 [
1275   AC_MSG_CHECKING(whether to enable assertions)
1276   AC_ARG_ENABLE(assert,
1277         [  --disable-assert        turn off assertions],
1278         [ AC_MSG_RESULT(no)
1279           AC_DEFINE(NDEBUG,1,[Define to 1 if assertions should be disabled.]) ],
1280         [ AC_MSG_RESULT(yes) ]
1281                )
1282 ])
1283
1284 #serial 5
1285
1286 dnl From Jim Meyering
1287
1288 dnl Define HAVE_STRUCT_UTIMBUF if `struct utimbuf' is declared --
1289 dnl usually in <utime.h>.
1290 dnl Some systems have utime.h but don't declare the struct anywhere.
1291
1292 AC_DEFUN([jm_CHECK_TYPE_STRUCT_UTIMBUF],
1293 [
1294   AC_CHECK_HEADERS_ONCE(sys/time.h utime.h)
1295   AC_REQUIRE([AC_HEADER_TIME])
1296   AC_CACHE_CHECK([for struct utimbuf], fu_cv_sys_struct_utimbuf,
1297     [AC_TRY_COMPILE(
1298       [
1299 #ifdef TIME_WITH_SYS_TIME
1300 # include <sys/time.h>
1301 # include <time.h>
1302 #else
1303 # ifdef HAVE_SYS_TIME_H
1304 #  include <sys/time.h>
1305 # else
1306 #  include <time.h>
1307 # endif
1308 #endif
1309 #ifdef HAVE_UTIME_H
1310 # include <utime.h>
1311 #endif
1312       ],
1313       [static struct utimbuf x; x.actime = x.modtime;],
1314       fu_cv_sys_struct_utimbuf=yes,
1315       fu_cv_sys_struct_utimbuf=no)
1316     ])
1317
1318   if test $fu_cv_sys_struct_utimbuf = yes; then
1319     AC_DEFINE(HAVE_STRUCT_UTIMBUF, 1,
1320       [Define if struct utimbuf is declared -- usually in <utime.h>.
1321        Some systems have utime.h but don't declare the struct anywhere. ])
1322   fi
1323 ])
1324
1325 # onceonly_2_57.m4 serial 3
1326 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
1327 dnl This file is free software, distributed under the terms of the GNU
1328 dnl General Public License.  As a special exception to the GNU General
1329 dnl Public License, this file may be distributed as part of a program
1330 dnl that contains a configuration script generated by Autoconf, under
1331 dnl the same distribution terms as the rest of that program.
1332
1333 dnl This file defines some "once only" variants of standard autoconf macros.
1334 dnl   AC_CHECK_HEADERS_ONCE         like  AC_CHECK_HEADERS
1335 dnl   AC_CHECK_FUNCS_ONCE           like  AC_CHECK_FUNCS
1336 dnl   AC_CHECK_DECLS_ONCE           like  AC_CHECK_DECLS
1337 dnl   AC_REQUIRE([AC_HEADER_STDC])  like  AC_HEADER_STDC
1338 dnl The advantage is that the check for each of the headers/functions/decls
1339 dnl will be put only once into the 'configure' file. It keeps the size of
1340 dnl the 'configure' file down, and avoids redundant output when 'configure'
1341 dnl is run.
1342 dnl The drawback is that the checks cannot be conditionalized. If you write
1343 dnl   if some_condition; then gl_CHECK_HEADERS(stdlib.h); fi
1344 dnl inside an AC_DEFUNed function, the gl_CHECK_HEADERS macro call expands to
1345 dnl empty, and the check will be inserted before the body of the AC_DEFUNed
1346 dnl function.
1347
1348 dnl This is like onceonly.m4, except that it uses diversions to named sections
1349 dnl DEFAULTS and INIT_PREPARE in order to check all requested headers at once,
1350 dnl thus reducing the size of 'configure'. Works with autoconf-2.57. The
1351 dnl size reduction is ca. 9%.
1352
1353 dnl Autoconf version 2.57 or newer is recommended.
1354 AC_PREREQ(2.54)
1355
1356 # AC_CHECK_HEADERS_ONCE(HEADER1 HEADER2 ...) is a once-only variant of
1357 # AC_CHECK_HEADERS(HEADER1 HEADER2 ...).
1358 AC_DEFUN([AC_CHECK_HEADERS_ONCE], [
1359   :
1360   AC_FOREACH([gl_HEADER_NAME], [$1], [
1361     AC_DEFUN([gl_CHECK_HEADER_]m4_quote(translit(gl_HEADER_NAME,
1362                                                  [./-], [___])), [
1363       m4_divert_text([INIT_PREPARE],
1364         [gl_header_list="$gl_header_list gl_HEADER_NAME"])
1365       gl_HEADERS_EXPANSION
1366       AH_TEMPLATE(AS_TR_CPP([HAVE_]m4_defn([gl_HEADER_NAME])),
1367         [Define to 1 if you have the <]m4_defn([gl_HEADER_NAME])[> header file.])
1368     ])
1369     AC_REQUIRE([gl_CHECK_HEADER_]m4_quote(translit(gl_HEADER_NAME,
1370                                                    [./-], [___])))
1371   ])
1372 ])
1373 m4_define([gl_HEADERS_EXPANSION], [
1374   m4_divert_text([DEFAULTS], [gl_header_list=])
1375   AC_CHECK_HEADERS([$gl_header_list])
1376   m4_define([gl_HEADERS_EXPANSION], [])
1377 ])
1378
1379 # AC_CHECK_FUNCS_ONCE(FUNC1 FUNC2 ...) is a once-only variant of
1380 # AC_CHECK_FUNCS(FUNC1 FUNC2 ...).
1381 AC_DEFUN([AC_CHECK_FUNCS_ONCE], [
1382   :
1383   AC_FOREACH([gl_FUNC_NAME], [$1], [
1384     AC_DEFUN([gl_CHECK_FUNC_]m4_defn([gl_FUNC_NAME]), [
1385       m4_divert_text([INIT_PREPARE],
1386         [gl_func_list="$gl_func_list gl_FUNC_NAME"])
1387       gl_FUNCS_EXPANSION
1388       AH_TEMPLATE(AS_TR_CPP([HAVE_]m4_defn([gl_FUNC_NAME])),
1389         [Define to 1 if you have the `]m4_defn([gl_FUNC_NAME])[' function.])
1390     ])
1391     AC_REQUIRE([gl_CHECK_FUNC_]m4_defn([gl_FUNC_NAME]))
1392   ])
1393 ])
1394 m4_define([gl_FUNCS_EXPANSION], [
1395   m4_divert_text([DEFAULTS], [gl_func_list=])
1396   AC_CHECK_FUNCS([$gl_func_list])
1397   m4_define([gl_FUNCS_EXPANSION], [])
1398 ])
1399
1400 # AC_CHECK_DECLS_ONCE(DECL1 DECL2 ...) is a once-only variant of
1401 # AC_CHECK_DECLS(DECL1, DECL2, ...).
1402 AC_DEFUN([AC_CHECK_DECLS_ONCE], [
1403   :
1404   AC_FOREACH([gl_DECL_NAME], [$1], [
1405     AC_DEFUN([gl_CHECK_DECL_]m4_defn([gl_DECL_NAME]), [
1406       AC_CHECK_DECLS(m4_defn([gl_DECL_NAME]))
1407     ])
1408     AC_REQUIRE([gl_CHECK_DECL_]m4_defn([gl_DECL_NAME]))
1409   ])
1410 ])
1411
1412 #serial 6
1413
1414 dnl From Jim Meyering.
1415 dnl
1416 dnl Check whether struct dirent has a member named d_type.
1417 dnl
1418
1419 AC_DEFUN([jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE],
1420   [AC_REQUIRE([AC_HEADER_DIRENT])dnl
1421    AC_CACHE_CHECK([for d_type member in directory struct],
1422                   jm_cv_struct_dirent_d_type,
1423      [AC_TRY_LINK(dnl
1424        [
1425 #include <sys/types.h>
1426 #ifdef HAVE_DIRENT_H
1427 # include <dirent.h>
1428 #else /* not HAVE_DIRENT_H */
1429 # define dirent direct
1430 # ifdef HAVE_SYS_NDIR_H
1431 #  include <sys/ndir.h>
1432 # endif /* HAVE_SYS_NDIR_H */
1433 # ifdef HAVE_SYS_DIR_H
1434 #  include <sys/dir.h>
1435 # endif /* HAVE_SYS_DIR_H */
1436 # ifdef HAVE_NDIR_H
1437 #  include <ndir.h>
1438 # endif /* HAVE_NDIR_H */
1439 #endif /* HAVE_DIRENT_H */
1440        ],
1441        [struct dirent dp; dp.d_type = 0;],
1442
1443        jm_cv_struct_dirent_d_type=yes,
1444        jm_cv_struct_dirent_d_type=no)
1445      ]
1446    )
1447    if test $jm_cv_struct_dirent_d_type = yes; then
1448      AC_DEFINE(HAVE_STRUCT_DIRENT_D_TYPE, 1,
1449        [Define if there is a member named d_type in the struct describing
1450         directory headers.])
1451    fi
1452   ]
1453 )
1454
1455 #serial 5
1456
1457 dnl From Jim Meyering.
1458 dnl
1459 dnl Check whether struct dirent has a member named d_ino.
1460 dnl
1461
1462 AC_DEFUN([jm_CHECK_TYPE_STRUCT_DIRENT_D_INO],
1463   [AC_REQUIRE([AC_HEADER_DIRENT])dnl
1464    AC_CACHE_CHECK([for d_ino member in directory struct],
1465                   jm_cv_struct_dirent_d_ino,
1466      [AC_TRY_LINK(dnl
1467        [
1468 #include <sys/types.h>
1469 #ifdef HAVE_DIRENT_H
1470 # include <dirent.h>
1471 #else /* not HAVE_DIRENT_H */
1472 # define dirent direct
1473 # ifdef HAVE_SYS_NDIR_H
1474 #  include <sys/ndir.h>
1475 # endif /* HAVE_SYS_NDIR_H */
1476 # ifdef HAVE_SYS_DIR_H
1477 #  include <sys/dir.h>
1478 # endif /* HAVE_SYS_DIR_H */
1479 # ifdef HAVE_NDIR_H
1480 #  include <ndir.h>
1481 # endif /* HAVE_NDIR_H */
1482 #endif /* HAVE_DIRENT_H */
1483        ],
1484        [struct dirent dp; dp.d_ino = 0;],
1485
1486        jm_cv_struct_dirent_d_ino=yes,
1487        jm_cv_struct_dirent_d_ino=no)
1488      ]
1489    )
1490    if test $jm_cv_struct_dirent_d_ino = yes; then
1491      AC_DEFINE(D_INO_IN_DIRENT, 1,
1492        [Define if there is a member named d_ino in the struct describing
1493         directory headers.])
1494    fi
1495   ]
1496 )
1497
1498 #serial 19
1499
1500 dnl This is just a wrapper function to encapsulate this kludge.
1501 dnl Putting it in a separate file like this helps share it between
1502 dnl different packages.
1503 AC_DEFUN([jm_CHECK_DECLS],
1504 [
1505   AC_REQUIRE([_jm_DECL_HEADERS])
1506   AC_REQUIRE([AC_HEADER_TIME])
1507   headers='
1508 #include <stdio.h>
1509 #include <string.h>
1510 #include <stdlib.h>
1511
1512 #if HAVE_UNISTD_H
1513 # include <unistd.h>
1514 #endif
1515
1516 #include <sys/types.h>
1517 #if TIME_WITH_SYS_TIME
1518 # include <sys/time.h>
1519 # include <time.h>
1520 #else
1521 # if HAVE_SYS_TIME_H
1522 #  include <sys/time.h>
1523 # else
1524 #  include <time.h>
1525 # endif
1526 #endif
1527
1528 #if HAVE_UTMP_H
1529 # include <utmp.h>
1530 #endif
1531
1532 #if HAVE_GRP_H
1533 # include <grp.h>
1534 #endif
1535
1536 #if HAVE_PWD_H
1537 # include <pwd.h>
1538 #endif
1539 '
1540
1541   AC_CHECK_DECLS([
1542     free,
1543     getenv,
1544     geteuid,
1545     getgrgid,
1546     getlogin,
1547     getpwuid,
1548     getuid,
1549     getutent,
1550     lseek,
1551     malloc,
1552     memchr,
1553     memrchr,
1554     nanosleep,
1555     realloc,
1556     stpcpy,
1557     strndup,
1558     strnlen,
1559     strstr,
1560     strtoul,
1561     strtoull,
1562     ttyname], , , $headers)
1563 ])
1564
1565 dnl FIXME: when autoconf has support for it.
1566 dnl This is a little helper so we can require these header checks.
1567 AC_DEFUN([_jm_DECL_HEADERS],
1568 [
1569   AC_REQUIRE([AC_HEADER_STDC])
1570   AC_CHECK_HEADERS(grp.h memory.h pwd.h string.h strings.h stdlib.h \
1571                    unistd.h sys/time.h utmp.h utmpx.h)
1572 ])
1573
1574 #serial 36
1575
1576 dnl We use jm_ for non Autoconf macros.
1577 m4_pattern_forbid([^jm_[ABCDEFGHIJKLMNOPQRSTUVXYZ]])dnl
1578 m4_pattern_forbid([^gl_[ABCDEFGHIJKLMNOPQRSTUVXYZ]])dnl
1579
1580 # These are the prerequisite macros for files in the lib/
1581 # directory of the coreutils package.
1582
1583 AC_DEFUN([jm_PREREQ],
1584 [
1585   # We don't yet use c-stack.c.
1586   # AC_REQUIRE([gl_C_STACK])
1587
1588   AC_REQUIRE([AM_FUNC_GETLINE])
1589   AC_REQUIRE([AM_STDBOOL_H])
1590   AC_REQUIRE([UTILS_FUNC_MKDIR_TRAILING_SLASH])
1591   AC_REQUIRE([UTILS_FUNC_MKSTEMP])
1592   AC_REQUIRE([gl_BACKUPFILE])
1593   AC_REQUIRE([gl_CANON_HOST])
1594   AC_REQUIRE([gl_CLOSEOUT])
1595   AC_REQUIRE([gl_DIRNAME])
1596   AC_REQUIRE([gl_ERROR])
1597   AC_REQUIRE([gl_EXCLUDE])
1598   AC_REQUIRE([gl_EXITFAIL])
1599   AC_REQUIRE([gl_FILEBLOCKS])
1600   AC_REQUIRE([gl_FILEMODE])
1601   AC_REQUIRE([gl_FILE_TYPE])
1602   AC_REQUIRE([gl_FSUSAGE])
1603   AC_REQUIRE([gl_FUNC_ALLOCA])
1604   AC_REQUIRE([gl_FUNC_ATEXIT])
1605   AC_REQUIRE([gl_FUNC_DUP2])
1606   AC_REQUIRE([gl_FUNC_EUIDACCESS])
1607   AC_REQUIRE([gl_FUNC_FNMATCH_GNU])
1608   AC_REQUIRE([gl_FUNC_GETHOSTNAME])
1609   AC_REQUIRE([gl_FUNC_GETLOADAVG])
1610   AC_REQUIRE([gl_FUNC_GETPASS])
1611   AC_REQUIRE([gl_FUNC_GETUSERSHELL])
1612   AC_REQUIRE([gl_FUNC_MEMCHR])
1613   AC_REQUIRE([gl_FUNC_MEMCPY])
1614   AC_REQUIRE([gl_FUNC_MEMMOVE])
1615   AC_REQUIRE([gl_FUNC_MEMRCHR])
1616   AC_REQUIRE([gl_FUNC_MEMSET])
1617   AC_REQUIRE([gl_FUNC_MKTIME])
1618   AC_REQUIRE([gl_FUNC_READLINK])
1619   AC_REQUIRE([gl_FUNC_RMDIR])
1620   AC_REQUIRE([gl_FUNC_RPMATCH])
1621   AC_REQUIRE([gl_FUNC_SIG2STR])
1622   AC_REQUIRE([gl_FUNC_STPCPY])
1623   AC_REQUIRE([gl_FUNC_STRCSPN])
1624   AC_REQUIRE([gl_FUNC_STRDUP])
1625   AC_REQUIRE([gl_FUNC_STRNDUP])
1626   AC_REQUIRE([gl_FUNC_STRNLEN])
1627   AC_REQUIRE([gl_FUNC_STRPBRK])
1628   AC_REQUIRE([gl_FUNC_STRSTR])
1629   AC_REQUIRE([gl_FUNC_STRTOD])
1630   AC_REQUIRE([gl_FUNC_STRTOIMAX])
1631   AC_REQUIRE([gl_FUNC_STRTOLL])
1632   AC_REQUIRE([gl_FUNC_STRTOL])
1633   AC_REQUIRE([gl_FUNC_STRTOULL])
1634   AC_REQUIRE([gl_FUNC_STRTOUL])
1635   AC_REQUIRE([gl_FUNC_STRTOUMAX])
1636   AC_REQUIRE([gl_FUNC_STRVERSCMP])
1637   AC_REQUIRE([gl_FUNC_VASNPRINTF])
1638   AC_REQUIRE([gl_FUNC_VASPRINTF])
1639   AC_REQUIRE([gl_GETDATE])
1640   AC_REQUIRE([gl_GETNDELIM2])
1641   AC_REQUIRE([gl_GETOPT])
1642   AC_REQUIRE([gl_GETPAGESIZE])
1643   AC_REQUIRE([gl_GETUGROUPS])
1644   AC_REQUIRE([gl_HARD_LOCALE])
1645   AC_REQUIRE([gl_HASH])
1646   AC_REQUIRE([gl_HUMAN])
1647   AC_REQUIRE([gl_IDCACHE])
1648   AC_REQUIRE([gl_LONG_OPTIONS])
1649   AC_REQUIRE([gl_MAKEPATH])
1650   AC_REQUIRE([gl_MBSWIDTH])
1651   AC_REQUIRE([gl_MD5])
1652   AC_REQUIRE([gl_MEMCOLL])
1653   AC_REQUIRE([gl_MODECHANGE])
1654   AC_REQUIRE([gl_MOUNTLIST])
1655   AC_REQUIRE([gl_OBSTACK])
1656   AC_REQUIRE([gl_PATHMAX])
1657   AC_REQUIRE([gl_PATH_CONCAT])
1658   AC_REQUIRE([gl_PHYSMEM])
1659   AC_REQUIRE([gl_POSIXTM])
1660   AC_REQUIRE([gl_POSIXVER])
1661   AC_REQUIRE([gl_QUOTEARG])
1662   AC_REQUIRE([gl_QUOTE])
1663   AC_REQUIRE([gl_READTOKENS])
1664   AC_REQUIRE([gl_READUTMP])
1665   AC_REQUIRE([gl_REGEX])
1666   AC_REQUIRE([gl_SAFE_READ])
1667   AC_REQUIRE([gl_SAFE_WRITE])
1668   AC_REQUIRE([gl_SAME])
1669   AC_REQUIRE([gl_SAVEDIR])
1670   AC_REQUIRE([gl_SAVE_CWD])
1671   AC_REQUIRE([gl_SETTIME])
1672   AC_REQUIRE([gl_SHA])
1673   AC_REQUIRE([gl_STDIO_SAFER])
1674   AC_REQUIRE([gl_STRCASE])
1675   AC_REQUIRE([gl_TIMESPEC])
1676   AC_REQUIRE([gl_UNICODEIO])
1677   AC_REQUIRE([gl_UNISTD_SAFER])
1678   AC_REQUIRE([gl_USERSPEC])
1679   AC_REQUIRE([gl_UTIMENS])
1680   AC_REQUIRE([gl_XALLOC])
1681   AC_REQUIRE([gl_XGETCWD])
1682   AC_REQUIRE([gl_XREADLINK])
1683   AC_REQUIRE([gl_XSTRTOD])
1684   AC_REQUIRE([gl_XSTRTOL])
1685   AC_REQUIRE([gl_YESNO])
1686   AC_REQUIRE([jm_FUNC_GLIBC_UNLOCKED_IO])
1687   AC_REQUIRE([jm_FUNC_GNU_STRFTIME])
1688   AC_REQUIRE([jm_FUNC_LSTAT])
1689   AC_REQUIRE([jm_FUNC_MALLOC])
1690   AC_REQUIRE([jm_FUNC_MEMCMP])
1691   AC_REQUIRE([jm_FUNC_NANOSLEEP])
1692   AC_REQUIRE([jm_FUNC_PUTENV])
1693   AC_REQUIRE([jm_FUNC_REALLOC])
1694   AC_REQUIRE([jm_FUNC_STAT])
1695   AC_REQUIRE([jm_FUNC_UTIME])
1696   AC_REQUIRE([jm_PREREQ_STAT])
1697   AC_REQUIRE([jm_XSTRTOIMAX])
1698   AC_REQUIRE([jm_XSTRTOUMAX])
1699   AC_REQUIRE([vb_FUNC_RENAME])
1700 ])
1701
1702 AC_DEFUN([jm_PREREQ_STAT],
1703 [
1704   AC_CHECK_HEADERS(sys/sysmacros.h sys/statvfs.h sys/vfs.h inttypes.h)
1705   AC_CHECK_HEADERS(sys/param.h sys/mount.h)
1706   AC_CHECK_FUNCS(statvfs)
1707
1708   # For `struct statfs' on Ultrix 4.4.
1709   AC_CHECK_HEADERS([netinet/in.h nfs/nfs_clnt.h nfs/vfs.h],,,
1710     [AC_INCLUDES_DEFAULT])
1711
1712   AC_REQUIRE([jm_AC_TYPE_LONG_LONG])
1713
1714   statxfs_includes="\
1715 $ac_includes_default
1716 #if HAVE_SYS_STATVFS_H
1717 # include <sys/statvfs.h>
1718 #endif
1719 #if HAVE_SYS_VFS_H
1720 # include <sys/vfs.h>
1721 #endif
1722 #if !HAVE_SYS_STATVFS_H && !HAVE_SYS_VFS_H
1723 # if HAVE_SYS_MOUNT_H && HAVE_SYS_PARAM_H
1724 /* NetBSD 1.5.2 needs these, for the declaration of struct statfs. */
1725 #  include <sys/param.h>
1726 #  include <sys/mount.h>
1727 # elif HAVE_NETINET_IN_H && HAVE_NFS_NFS_CLNT_H && HAVE_NFS_VFS_H
1728 /* Ultrix 4.4 needs these for the declaration of struct statfs.  */
1729 #  include <netinet/in.h>
1730 #  include <nfs/nfs_clnt.h>
1731 #  include <nfs/vfs.h>
1732 # endif
1733 #endif
1734 "
1735   AC_CHECK_MEMBERS([struct statfs.f_basetype],,,[$statxfs_includes])
1736   AC_CHECK_MEMBERS([struct statvfs.f_basetype],,,[$statxfs_includes])
1737   AC_CHECK_MEMBERS([struct statfs.f_fstypename],,,[$statxfs_includes])
1738   AC_CHECK_MEMBERS([struct statfs.f_type],,,[$statxfs_includes])
1739   AC_CHECK_MEMBERS([struct statvfs.f_type],,,[$statxfs_includes])
1740   AC_CHECK_MEMBERS([struct statfs.f_fsid.__val],,,[$statxfs_includes])
1741   AC_CHECK_MEMBERS([struct statvfs.f_fsid.__val],,,[$statxfs_includes])
1742   AC_CHECK_MEMBERS([struct statfs.f_namemax],,,[$statxfs_includes])
1743   AC_CHECK_MEMBERS([struct statvfs.f_namemax],,,[$statxfs_includes])
1744   AC_CHECK_MEMBERS([struct statfs.f_namelen],,,[$statxfs_includes])
1745   AC_CHECK_MEMBERS([struct statvfs.f_namelen],,,[$statxfs_includes])
1746 ])
1747
1748 # getline.m4 serial 9
1749
1750 dnl Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Free Software
1751 dnl Foundation, Inc.
1752
1753 dnl This file is free software, distributed under the terms of the GNU
1754 dnl General Public License.  As a special exception to the GNU General
1755 dnl Public License, this file may be distributed as part of a program
1756 dnl that contains a configuration script generated by Autoconf, under
1757 dnl the same distribution terms as the rest of that program.
1758
1759 AC_PREREQ(2.52)
1760
1761 dnl See if there's a working, system-supplied version of the getline function.
1762 dnl We can't just do AC_REPLACE_FUNCS(getline) because some systems
1763 dnl have a function by that name in -linet that doesn't have anything
1764 dnl to do with the function we need.
1765 AC_DEFUN([AM_FUNC_GETLINE],
1766 [
1767   dnl Persuade glibc <stdio.h> to declare getline() and getdelim().
1768   AC_REQUIRE([AC_GNU_SOURCE])
1769
1770   am_getline_needs_run_time_check=no
1771   AC_CHECK_FUNC(getline,
1772                 dnl Found it in some library.  Verify that it works.
1773                 am_getline_needs_run_time_check=yes,
1774                 am_cv_func_working_getline=no)
1775   if test $am_getline_needs_run_time_check = yes; then
1776     AC_CACHE_CHECK([for working getline function], am_cv_func_working_getline,
1777     [echo fooN |tr -d '\012'|tr N '\012' > conftest.data
1778     AC_TRY_RUN([
1779 #    include <stdio.h>
1780 #    include <stdlib.h>
1781 #    include <string.h>
1782     int main ()
1783     { /* Based on a test program from Karl Heuer.  */
1784       char *line = NULL;
1785       size_t siz = 0;
1786       int len;
1787       FILE *in = fopen ("./conftest.data", "r");
1788       if (!in)
1789         return 1;
1790       len = getline (&line, &siz, in);
1791       exit ((len == 4 && line && strcmp (line, "foo\n") == 0) ? 0 : 1);
1792     }
1793     ], am_cv_func_working_getline=yes dnl The library version works.
1794     , am_cv_func_working_getline=no dnl The library version does NOT work.
1795     , am_cv_func_working_getline=no dnl We're cross compiling.
1796     )])
1797   fi
1798
1799   if test $am_cv_func_working_getline = no; then
1800     dnl We must choose a different name for our function, since on ELF systems
1801     dnl a broken getline() in libc.so would override our getline() in
1802     dnl libgettextlib.so.
1803     AC_DEFINE([getline], [gnu_getline],
1804       [Define to a replacement function name for getline().])
1805     AC_LIBOBJ(getline)
1806     AC_LIBOBJ(getndelim2)
1807     gl_PREREQ_GETLINE
1808     gl_PREREQ_GETNDELIM2
1809   fi
1810 ])
1811
1812 # Prerequisites of lib/getline.c.
1813 AC_DEFUN([gl_PREREQ_GETLINE],
1814 [
1815   AC_CHECK_FUNCS(getdelim)
1816 ])
1817
1818 # getndelim2.m4 serial 2
1819 dnl Copyright (C) 2003 Free Software Foundation, Inc.
1820 dnl This file is free software, distributed under the terms of the GNU
1821 dnl General Public License.  As a special exception to the GNU General
1822 dnl Public License, this file may be distributed as part of a program
1823 dnl that contains a configuration script generated by Autoconf, under
1824 dnl the same distribution terms as the rest of that program.
1825
1826 AC_DEFUN([gl_GETNDELIM2],
1827 [
1828   AC_LIBOBJ(getndelim2)
1829   gl_PREREQ_GETNDELIM2
1830 ])
1831
1832 # Prerequisites of lib/getndelim2.h and lib/getndelim2.c.
1833 AC_DEFUN([gl_PREREQ_GETNDELIM2],
1834 [
1835   dnl Prerequisites of lib/getndelim2.h.
1836   AC_REQUIRE([gt_TYPE_SSIZE_T])
1837   dnl No prerequisites of lib/getndelim2.c.
1838 ])
1839
1840 # ssize_t.m4 serial 3 (gettext-0.12.2)
1841 dnl Copyright (C) 2001-2003 Free Software Foundation, Inc.
1842 dnl This file is free software, distributed under the terms of the GNU
1843 dnl General Public License.  As a special exception to the GNU General
1844 dnl Public License, this file may be distributed as part of a program
1845 dnl that contains a configuration script generated by Autoconf, under
1846 dnl the same distribution terms as the rest of that program.
1847
1848 dnl From Bruno Haible.
1849 dnl Test whether ssize_t is defined.
1850
1851 AC_DEFUN([gt_TYPE_SSIZE_T],
1852 [
1853   AC_CACHE_CHECK([for ssize_t], gt_cv_ssize_t,
1854     [AC_TRY_COMPILE([#include <sys/types.h>],
1855        [int x = sizeof (ssize_t *) + sizeof (ssize_t);],
1856        gt_cv_ssize_t=yes, gt_cv_ssize_t=no)])
1857   if test $gt_cv_ssize_t = no; then
1858     AC_DEFINE(ssize_t, int,
1859               [Define as a signed type of the same size as size_t.])
1860   fi
1861 ])
1862
1863 # Check for stdbool.h that conforms to C99.
1864
1865 # Copyright (C) 2002-2003 Free Software Foundation, Inc.
1866
1867 # This program is free software; you can redistribute it and/or modify
1868 # it under the terms of the GNU General Public License as published by
1869 # the Free Software Foundation; either version 2, or (at your option)
1870 # any later version.
1871
1872 # This program is distributed in the hope that it will be useful,
1873 # but WITHOUT ANY WARRANTY; without even the implied warranty of
1874 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1875 # GNU General Public License for more details.
1876
1877 # You should have received a copy of the GNU General Public License
1878 # along with this program; if not, write to the Free Software
1879 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
1880 # 02111-1307, USA.
1881
1882 # Prepare for substituting <stdbool.h> if it is not supported.
1883
1884 AC_DEFUN([AM_STDBOOL_H],
1885 [
1886   AC_REQUIRE([AC_HEADER_STDBOOL])
1887
1888   # Define two additional variables used in the Makefile substitution.
1889
1890   if test "$ac_cv_header_stdbool_h" = yes; then
1891     STDBOOL_H=''
1892   else
1893     STDBOOL_H='stdbool.h'
1894   fi
1895   AC_SUBST([STDBOOL_H])
1896
1897   if test "$ac_cv_type__Bool" = yes; then
1898     HAVE__BOOL=1
1899   else
1900     HAVE__BOOL=0
1901   fi
1902   AC_SUBST([HAVE__BOOL])
1903 ])
1904
1905 # This macro is only needed in autoconf <= 2.54.  Newer versions of autoconf
1906 # have this macro built-in.
1907
1908 AC_DEFUN([AC_HEADER_STDBOOL],
1909   [AC_CACHE_CHECK([for stdbool.h that conforms to C99],
1910      [ac_cv_header_stdbool_h],
1911      [AC_TRY_COMPILE(
1912         [
1913           #include <stdbool.h>
1914           #ifndef bool
1915            "error: bool is not defined"
1916           #endif
1917           #ifndef false
1918            "error: false is not defined"
1919           #endif
1920           #if false
1921            "error: false is not 0"
1922           #endif
1923           #ifndef true
1924            "error: false is not defined"
1925           #endif
1926           #if true != 1
1927            "error: true is not 1"
1928           #endif
1929           #ifndef __bool_true_false_are_defined
1930            "error: __bool_true_false_are_defined is not defined"
1931           #endif
1932
1933           struct s { _Bool s: 1; _Bool t; } s;
1934
1935           char a[true == 1 ? 1 : -1];
1936           char b[false == 0 ? 1 : -1];
1937           char c[__bool_true_false_are_defined == 1 ? 1 : -1];
1938           char d[(bool) -0.5 == true ? 1 : -1];
1939           bool e = &s;
1940           char f[(_Bool) -0.0 == false ? 1 : -1];
1941           char g[true];
1942           char h[sizeof (_Bool)];
1943           char i[sizeof s.t];
1944         ],
1945         [ return !a + !b + !c + !d + !e + !f + !g + !h + !i; ],
1946         [ac_cv_header_stdbool_h=yes],
1947         [ac_cv_header_stdbool_h=no])])
1948    AC_CHECK_TYPES([_Bool])
1949    if test $ac_cv_header_stdbool_h = yes; then
1950      AC_DEFINE(HAVE_STDBOOL_H, 1, [Define to 1 if stdbool.h conforms to C99.])
1951    fi])
1952
1953 #serial 2
1954
1955 # On some systems, mkdir ("foo/", 0700) fails because of the trailing slash.
1956 # On such systems, arrange to use a wrapper function that removes any
1957 # trailing slashes.
1958 AC_DEFUN([UTILS_FUNC_MKDIR_TRAILING_SLASH],
1959 [dnl
1960   AC_CACHE_CHECK([whether mkdir fails due to a trailing slash],
1961     utils_cv_func_mkdir_trailing_slash_bug,
1962     [
1963       # Arrange for deletion of the temporary directory this test might create.
1964       ac_clean_files="$ac_clean_files confdir-slash"
1965       AC_TRY_RUN([
1966 #       include <sys/types.h>
1967 #       include <sys/stat.h>
1968 #       include <stdlib.h>
1969         int main ()
1970         {
1971           rmdir ("confdir-slash");
1972           exit (mkdir ("confdir-slash/", 0700));
1973         }
1974         ],
1975       utils_cv_func_mkdir_trailing_slash_bug=no,
1976       utils_cv_func_mkdir_trailing_slash_bug=yes,
1977       utils_cv_func_mkdir_trailing_slash_bug=yes
1978       )
1979     ]
1980   )
1981
1982   if test $utils_cv_func_mkdir_trailing_slash_bug = yes; then
1983     AC_LIBOBJ(mkdir)
1984     AC_DEFINE(mkdir, rpl_mkdir,
1985       [Define to rpl_mkdir if the replacement function should be used.])
1986     gl_PREREQ_MKDIR
1987   fi
1988 ])
1989
1990 # Prerequisites of lib/mkdir.c.
1991 AC_DEFUN([gl_PREREQ_MKDIR], [:])
1992
1993 #serial 4
1994
1995 # On some hosts (e.g., HP-UX 10.20, SunOS 4.1.4, Solaris 2.5.1), mkstemp has a
1996 # silly limit that it can create no more than 26 files from a given template.
1997 # Other systems lack mkstemp altogether.
1998 # On OSF1/Tru64 V4.0F, the system-provided mkstemp function can create
1999 # only 32 files per process.
2000 # On systems like the above, arrange to use the replacement function.
2001 AC_DEFUN([UTILS_FUNC_MKSTEMP],
2002 [dnl
2003   AC_REPLACE_FUNCS(mkstemp)
2004   if test $ac_cv_func_mkstemp = no; then
2005     utils_cv_func_mkstemp_limitations=yes
2006   else
2007     AC_CACHE_CHECK([for mkstemp limitations],
2008       utils_cv_func_mkstemp_limitations,
2009       [
2010         AC_TRY_RUN([
2011 #         include <stdlib.h>
2012           int main ()
2013           {
2014             int i;
2015             for (i = 0; i < 70; i++)
2016               {
2017                 char template[] = "conftestXXXXXX";
2018                 int fd = mkstemp (template);
2019                 if (fd == -1)
2020                   exit (1);
2021                 close (fd);
2022               }
2023             exit (0);
2024           }
2025           ],
2026         utils_cv_func_mkstemp_limitations=no,
2027         utils_cv_func_mkstemp_limitations=yes,
2028         utils_cv_func_mkstemp_limitations=yes
2029         )
2030       ]
2031     )
2032   fi
2033
2034   if test $utils_cv_func_mkstemp_limitations = yes; then
2035     AC_LIBOBJ(mkstemp)
2036     AC_LIBOBJ(tempname)
2037     AC_DEFINE(mkstemp, rpl_mkstemp,
2038       [Define to rpl_mkstemp if the replacement function should be used.])
2039     gl_PREREQ_MKSTEMP
2040     jm_PREREQ_TEMPNAME
2041   fi
2042 ])
2043
2044 # Prerequisites of lib/mkstemp.c.
2045 AC_DEFUN([gl_PREREQ_MKSTEMP],
2046 [
2047 ])
2048
2049 # Prerequisites of lib/tempname.c.
2050 AC_DEFUN([jm_PREREQ_TEMPNAME],
2051 [
2052   AC_REQUIRE([AC_HEADER_STAT])
2053   AC_CHECK_HEADERS_ONCE(fcntl.h sys/time.h unistd.h)
2054   AC_CHECK_HEADERS(stdint.h)
2055   AC_CHECK_FUNCS(__secure_getenv gettimeofday)
2056   AC_CHECK_DECLS_ONCE(getenv)
2057   AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])
2058 ])
2059
2060 # uintmax_t.m4 serial 7 (gettext-0.12)
2061 dnl Copyright (C) 1997-2003 Free Software Foundation, Inc.
2062 dnl This file is free software, distributed under the terms of the GNU
2063 dnl General Public License.  As a special exception to the GNU General
2064 dnl Public License, this file may be distributed as part of a program
2065 dnl that contains a configuration script generated by Autoconf, under
2066 dnl the same distribution terms as the rest of that program.
2067
2068 dnl From Paul Eggert.
2069
2070 AC_PREREQ(2.13)
2071
2072 # Define uintmax_t to 'unsigned long' or 'unsigned long long'
2073 # if it is not already defined in <stdint.h> or <inttypes.h>.
2074
2075 AC_DEFUN([jm_AC_TYPE_UINTMAX_T],
2076 [
2077   AC_REQUIRE([jm_AC_HEADER_INTTYPES_H])
2078   AC_REQUIRE([jm_AC_HEADER_STDINT_H])
2079   if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then
2080     AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG])
2081     test $ac_cv_type_unsigned_long_long = yes \
2082       && ac_type='unsigned long long' \
2083       || ac_type='unsigned long'
2084     AC_DEFINE_UNQUOTED(uintmax_t, $ac_type,
2085       [Define to unsigned long or unsigned long long
2086        if <stdint.h> and <inttypes.h> don't define.])
2087   else
2088     AC_DEFINE(HAVE_UINTMAX_T, 1,
2089       [Define if you have the 'uintmax_t' type in <stdint.h> or <inttypes.h>.])
2090   fi
2091 ])
2092
2093 # inttypes_h.m4 serial 5 (gettext-0.12)
2094 dnl Copyright (C) 1997-2003 Free Software Foundation, Inc.
2095 dnl This file is free software, distributed under the terms of the GNU
2096 dnl General Public License.  As a special exception to the GNU General
2097 dnl Public License, this file may be distributed as part of a program
2098 dnl that contains a configuration script generated by Autoconf, under
2099 dnl the same distribution terms as the rest of that program.
2100
2101 dnl From Paul Eggert.
2102
2103 # Define HAVE_INTTYPES_H_WITH_UINTMAX if <inttypes.h> exists,
2104 # doesn't clash with <sys/types.h>, and declares uintmax_t.
2105
2106 AC_DEFUN([jm_AC_HEADER_INTTYPES_H],
2107 [
2108   AC_CACHE_CHECK([for inttypes.h], jm_ac_cv_header_inttypes_h,
2109   [AC_TRY_COMPILE(
2110     [#include <sys/types.h>
2111 #include <inttypes.h>],
2112     [uintmax_t i = (uintmax_t) -1;],
2113     jm_ac_cv_header_inttypes_h=yes,
2114     jm_ac_cv_header_inttypes_h=no)])
2115   if test $jm_ac_cv_header_inttypes_h = yes; then
2116     AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H_WITH_UINTMAX, 1,
2117       [Define if <inttypes.h> exists, doesn't clash with <sys/types.h>,
2118        and declares uintmax_t. ])
2119   fi
2120 ])
2121
2122 # stdint_h.m4 serial 3 (gettext-0.12)
2123 dnl Copyright (C) 1997-2003 Free Software Foundation, Inc.
2124 dnl This file is free software, distributed under the terms of the GNU
2125 dnl General Public License.  As a special exception to the GNU General
2126 dnl Public License, this file may be distributed as part of a program
2127 dnl that contains a configuration script generated by Autoconf, under
2128 dnl the same distribution terms as the rest of that program.
2129
2130 dnl From Paul Eggert.
2131
2132 # Define HAVE_STDINT_H_WITH_UINTMAX if <stdint.h> exists,
2133 # doesn't clash with <sys/types.h>, and declares uintmax_t.
2134
2135 AC_DEFUN([jm_AC_HEADER_STDINT_H],
2136 [
2137   AC_CACHE_CHECK([for stdint.h], jm_ac_cv_header_stdint_h,
2138   [AC_TRY_COMPILE(
2139     [#include <sys/types.h>
2140 #include <stdint.h>],
2141     [uintmax_t i = (uintmax_t) -1;],
2142     jm_ac_cv_header_stdint_h=yes,
2143     jm_ac_cv_header_stdint_h=no)])
2144   if test $jm_ac_cv_header_stdint_h = yes; then
2145     AC_DEFINE_UNQUOTED(HAVE_STDINT_H_WITH_UINTMAX, 1,
2146       [Define if <stdint.h> exists, doesn't clash with <sys/types.h>,
2147        and declares uintmax_t. ])
2148   fi
2149 ])
2150
2151 # ulonglong.m4 serial 3
2152 dnl Copyright (C) 1999-2003 Free Software Foundation, Inc.
2153 dnl This file is free software, distributed under the terms of the GNU
2154 dnl General Public License.  As a special exception to the GNU General
2155 dnl Public License, this file may be distributed as part of a program
2156 dnl that contains a configuration script generated by Autoconf, under
2157 dnl the same distribution terms as the rest of that program.
2158
2159 dnl From Paul Eggert.
2160
2161 # Define HAVE_UNSIGNED_LONG_LONG if 'unsigned long long' works.
2162
2163 AC_DEFUN([jm_AC_TYPE_UNSIGNED_LONG_LONG],
2164 [
2165   AC_CACHE_CHECK([for unsigned long long], ac_cv_type_unsigned_long_long,
2166   [AC_TRY_LINK([unsigned long long ull = 1ULL; int i = 63;],
2167     [unsigned long long ullmax = (unsigned long long) -1;
2168      return ull << i | ull >> i | ullmax / ull | ullmax % ull;],
2169     ac_cv_type_unsigned_long_long=yes,
2170     ac_cv_type_unsigned_long_long=no)])
2171   if test $ac_cv_type_unsigned_long_long = yes; then
2172     AC_DEFINE(HAVE_UNSIGNED_LONG_LONG, 1,
2173       [Define if you have the 'unsigned long long' type.])
2174   fi
2175 ])
2176
2177 # backupfile.m4 serial 3
2178 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
2179 dnl This file is free software, distributed under the terms of the GNU
2180 dnl General Public License.  As a special exception to the GNU General
2181 dnl Public License, this file may be distributed as part of a program
2182 dnl that contains a configuration script generated by Autoconf, under
2183 dnl the same distribution terms as the rest of that program.
2184
2185 AC_DEFUN([gl_BACKUPFILE],
2186 [
2187   dnl Prerequisites of lib/backupfile.c.
2188   AC_REQUIRE([AC_HEADER_DIRENT])
2189   AC_REQUIRE([AC_FUNC_CLOSEDIR_VOID])
2190   jm_CHECK_TYPE_STRUCT_DIRENT_D_INO
2191
2192   dnl Prerequisites of lib/addext.c.
2193   AC_REQUIRE([jm_AC_DOS])
2194   AC_REQUIRE([AC_SYS_LONG_FILE_NAMES])
2195   AC_CHECK_HEADERS_ONCE(unistd.h)
2196   AC_CHECK_FUNCS(pathconf)
2197 ])
2198
2199 #serial 5
2200
2201 # Define some macros required for proper operation of code in lib/*.c
2202 # on MSDOS/Windows systems.
2203
2204 # From Jim Meyering.
2205
2206 AC_DEFUN([jm_AC_DOS],
2207   [
2208     AC_CACHE_CHECK([whether system is Windows or MSDOS], [ac_cv_win_or_dos],
2209       [
2210         AC_TRY_COMPILE([],
2211         [#if !defined _WIN32 && !defined __WIN32__ && !defined __MSDOS__
2212 neither MSDOS nor Windows
2213 #endif],
2214         [ac_cv_win_or_dos=yes],
2215         [ac_cv_win_or_dos=no])
2216       ])
2217
2218     if test x"$ac_cv_win_or_dos" = xyes; then
2219       ac_fs_accepts_drive_letter_prefix=1
2220       ac_fs_backslash_is_file_name_separator=1
2221     else
2222       ac_fs_accepts_drive_letter_prefix=0
2223       ac_fs_backslash_is_file_name_separator=0
2224     fi
2225
2226     AH_VERBATIM(FILESYSTEM_PREFIX_LEN,
2227     [#if FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX
2228 # define FILESYSTEM_PREFIX_LEN(Filename) \
2229   ((Filename)[0] && (Filename)[1] == ':' ? 2 : 0)
2230 #else
2231 # define FILESYSTEM_PREFIX_LEN(Filename) 0
2232 #endif])
2233
2234     AC_DEFINE_UNQUOTED([FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX],
2235       $ac_fs_accepts_drive_letter_prefix,
2236       [Define on systems for which file names may have a so-called
2237        `drive letter' prefix, define this to compute the length of that
2238        prefix, including the colon.])
2239
2240     AH_VERBATIM(ISSLASH,
2241     [#if FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR
2242 # define ISSLASH(C) ((C) == '/' || (C) == '\\')
2243 #else
2244 # define ISSLASH(C) ((C) == '/')
2245 #endif])
2246
2247     AC_DEFINE_UNQUOTED([FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR],
2248       $ac_fs_backslash_is_file_name_separator,
2249       [Define if the backslash character may also serve as a file name
2250        component separator.])
2251   ])
2252
2253 # canon-host.m4 serial 3
2254 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
2255 dnl This file is free software, distributed under the terms of the GNU
2256 dnl General Public License.  As a special exception to the GNU General
2257 dnl Public License, this file may be distributed as part of a program
2258 dnl that contains a configuration script generated by Autoconf, under
2259 dnl the same distribution terms as the rest of that program.
2260
2261 AC_DEFUN([gl_CANON_HOST],
2262 [
2263   dnl Prerequisites of lib/canon-host.c.
2264   AC_CHECK_HEADERS_ONCE(unistd.h)
2265   AC_CHECK_HEADERS(netdb.h sys/socket.h netinet/in.h arpa/inet.h)
2266
2267   dnl Add any libraries as early as possible.
2268   dnl In particular, inet_ntoa needs -lnsl at least on Solaris 2.5.1,
2269   dnl so we have to add -lnsl to LIBS before checking for that function.
2270   AC_SEARCH_LIBS(gethostbyname, [inet nsl])
2271
2272   dnl These come from -lnsl on Solaris 2.5.1.
2273   AC_CHECK_FUNCS(gethostbyname gethostbyaddr inet_ntoa)
2274 ])
2275
2276 #serial 5
2277
2278 dnl A replacement for autoconf's macro by the same name.  This version
2279 dnl uses `ac_lib' rather than `i' for the loop variable, but more importantly
2280 dnl moves the ACTION-IF-FOUND ([$]3) into the inner `if'-block so that it is
2281 dnl run only if one of the listed libraries ends up being used (and not in
2282 dnl the `none required' case.
2283 dnl I hope it's only temporary while we wait for that version to be fixed.
2284 undefine([AC_SEARCH_LIBS])
2285
2286 # AC_SEARCH_LIBS(FUNCTION, SEARCH-LIBS,
2287 #                [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND],
2288 #                [OTHER-LIBRARIES])
2289 # --------------------------------------------------------
2290 # Search for a library defining FUNC, if it's not already available.
2291 AC_DEFUN([AC_SEARCH_LIBS],
2292 [
2293   AC_CACHE_CHECK([for library containing $1], [ac_cv_search_$1],
2294   [
2295     ac_func_search_save_LIBS=$LIBS
2296     ac_cv_search_$1=no
2297     AC_TRY_LINK_FUNC([$1], [ac_cv_search_$1='none required'])
2298     if test "$ac_cv_search_$1" = no; then
2299       for ac_lib in $2; do
2300         LIBS="-l$ac_lib $5 $ac_func_search_save_LIBS"
2301         AC_TRY_LINK_FUNC([$1], [ac_cv_search_$1="-l$ac_lib"; break])
2302       done
2303     fi
2304     LIBS=$ac_func_search_save_LIBS
2305   ])
2306
2307   if test "$ac_cv_search_$1" = no; then :
2308     $4
2309   else
2310     if test "$ac_cv_search_$1" = 'none required'; then :
2311       $4
2312     else
2313       LIBS="$ac_cv_search_$1 $LIBS"
2314       $3
2315     fi
2316   fi
2317 ])
2318
2319 # closeout.m4 serial 2
2320 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
2321 dnl This file is free software, distributed under the terms of the GNU
2322 dnl General Public License.  As a special exception to the GNU General
2323 dnl Public License, this file may be distributed as part of a program
2324 dnl that contains a configuration script generated by Autoconf, under
2325 dnl the same distribution terms as the rest of that program.
2326
2327 AC_DEFUN([gl_CLOSEOUT],
2328 [
2329   dnl Prerequisites of lib/closeout.c.
2330   :
2331 ])
2332
2333 # dirname.m4 serial 2
2334 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
2335 dnl This file is free software, distributed under the terms of the GNU
2336 dnl General Public License.  As a special exception to the GNU General
2337 dnl Public License, this file may be distributed as part of a program
2338 dnl that contains a configuration script generated by Autoconf, under
2339 dnl the same distribution terms as the rest of that program.
2340
2341 AC_DEFUN([gl_DIRNAME],
2342 [
2343   dnl Prerequisites of lib/dirname.h.
2344   AC_REQUIRE([jm_AC_DOS])
2345
2346   dnl No prerequisites of lib/basename.c, lib/dirname.c, lib/stripslash.c.
2347 ])
2348
2349 #serial 9
2350
2351 AC_DEFUN([gl_ERROR],
2352 [
2353   AC_FUNC_ERROR_AT_LINE
2354   dnl Note: AC_FUNC_ERROR_AT_LINE does AC_LIBSOURCES([error.h, error.c]).
2355   jm_PREREQ_ERROR
2356 ])
2357
2358 # Prerequisites of lib/error.c.
2359 AC_DEFUN([jm_PREREQ_ERROR],
2360 [
2361   AC_REQUIRE([AC_FUNC_STRERROR_R])
2362   :
2363 ])
2364
2365 # exclude.m4 serial 3
2366 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
2367 dnl This file is free software, distributed under the terms of the GNU
2368 dnl General Public License.  As a special exception to the GNU General
2369 dnl Public License, this file may be distributed as part of a program
2370 dnl that contains a configuration script generated by Autoconf, under
2371 dnl the same distribution terms as the rest of that program.
2372
2373 AC_DEFUN([gl_EXCLUDE],
2374 [
2375   dnl Prerequisites of lib/exclude.c.
2376   AC_REQUIRE([AC_C_INLINE])
2377   AC_REQUIRE([AC_HEADER_STDC])
2378   AC_CHECK_FUNCS_ONCE(isascii)
2379 ])
2380
2381 # exitfail.m4 serial 3
2382 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
2383 dnl This file is free software, distributed under the terms of the GNU
2384 dnl General Public License.  As a special exception to the GNU General
2385 dnl Public License, this file may be distributed as part of a program
2386 dnl that contains a configuration script generated by Autoconf, under
2387 dnl the same distribution terms as the rest of that program.
2388
2389 AC_DEFUN([gl_EXITFAIL],
2390 [
2391   dnl No prerequisites of lib/exitfail.c.
2392   :
2393 ])
2394
2395 # fileblocks.m4 serial 1
2396 dnl Copyright (C) 2002 Free Software Foundation, Inc.
2397 dnl This file is free software, distributed under the terms of the GNU
2398 dnl General Public License.  As a special exception to the GNU General
2399 dnl Public License, this file may be distributed as part of a program
2400 dnl that contains a configuration script generated by Autoconf, under
2401 dnl the same distribution terms as the rest of that program.
2402
2403 AC_DEFUN([gl_FILEBLOCKS],
2404 [
2405   AC_STRUCT_ST_BLOCKS
2406   dnl Note: AC_STRUCT_ST_BLOCKS does AC_LIBOBJ(fileblocks).
2407   if test $ac_cv_member_struct_stat_st_blocks = no; then
2408     gl_PREREQ_FILEBLOCKS
2409   fi
2410 ])
2411
2412 # Prerequisites of lib/fileblocks.c.
2413 AC_DEFUN([gl_PREREQ_FILEBLOCKS], [
2414   AC_CHECK_HEADERS_ONCE(sys/param.h unistd.h)
2415 ])
2416
2417 # filemode.m4 serial 1
2418 dnl Copyright (C) 2002 Free Software Foundation, Inc.
2419 dnl This file is free software, distributed under the terms of the GNU
2420 dnl General Public License.  As a special exception to the GNU General
2421 dnl Public License, this file may be distributed as part of a program
2422 dnl that contains a configuration script generated by Autoconf, under
2423 dnl the same distribution terms as the rest of that program.
2424
2425 AC_DEFUN([gl_FILEMODE],
2426 [
2427   dnl Prerequisites of lib/filemode.c.
2428   AC_REQUIRE([AC_HEADER_STAT])
2429 ])
2430
2431 # file-type.m4 serial 1
2432 dnl Copyright (C) 2002 Free Software Foundation, Inc.
2433 dnl This file is free software, distributed under the terms of the GNU
2434 dnl General Public License.  As a special exception to the GNU General
2435 dnl Public License, this file may be distributed as part of a program
2436 dnl that contains a configuration script generated by Autoconf, under
2437 dnl the same distribution terms as the rest of that program.
2438
2439 AC_DEFUN([gl_FILE_TYPE],
2440 [
2441   dnl Prerequisites of lib/file-type.h.
2442   AC_REQUIRE([AC_HEADER_STAT])
2443 ])
2444
2445 #serial 11
2446
2447 # From fileutils/configure.in
2448
2449 AC_DEFUN([gl_FSUSAGE],
2450 [
2451   AC_CHECK_HEADERS_ONCE(sys/param.h)
2452   AC_CHECK_HEADERS(sys/mount.h sys/vfs.h sys/fs_types.h)
2453   jm_FILE_SYSTEM_USAGE([gl_cv_fs_space=yes], [gl_cv_fs_space=no])
2454   if test $gl_cv_fs_space = yes; then
2455     AC_LIBOBJ(fsusage)
2456     gl_PREREQ_FSUSAGE_EXTRA
2457   fi
2458 ])
2459
2460 # Try to determine how a program can obtain filesystem usage information.
2461 # If successful, define the appropriate symbol (see fsusage.c) and
2462 # execute ACTION-IF-FOUND.  Otherwise, execute ACTION-IF-NOT-FOUND.
2463 #
2464 # jm_FILE_SYSTEM_USAGE([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
2465
2466 AC_DEFUN([jm_FILE_SYSTEM_USAGE],
2467 [
2468
2469 echo "checking how to get filesystem space usage..."
2470 ac_fsusage_space=no
2471
2472 # Perform only the link test since it seems there are no variants of the
2473 # statvfs function.  This check is more than just AC_CHECK_FUNCS(statvfs)
2474 # because that got a false positive on SCO OSR5.  Adding the declaration
2475 # of a `struct statvfs' causes this test to fail (as it should) on such
2476 # systems.  That system is reported to work fine with STAT_STATFS4 which
2477 # is what it gets when this test fails.
2478 if test $ac_fsusage_space = no; then
2479   # SVR4
2480   AC_CACHE_CHECK([for statvfs function (SVR4)], fu_cv_sys_stat_statvfs,
2481                  [AC_TRY_LINK([#include <sys/types.h>
2482 #ifdef __GLIBC__
2483 Do not use statvfs on systems with GNU libc, because that function stats
2484 all preceding entries in /proc/mounts, and that makes df hang if even
2485 one of the corresponding file systems is hard-mounted, but not available.
2486 #endif
2487 #include <sys/statvfs.h>],
2488                               [struct statvfs fsd; statvfs (0, &fsd);],
2489                               fu_cv_sys_stat_statvfs=yes,
2490                               fu_cv_sys_stat_statvfs=no)])
2491   if test $fu_cv_sys_stat_statvfs = yes; then
2492     ac_fsusage_space=yes
2493     AC_DEFINE(STAT_STATVFS, 1,
2494               [  Define if there is a function named statvfs.  (SVR4)])
2495   fi
2496 fi
2497
2498 if test $ac_fsusage_space = no; then
2499   # DEC Alpha running OSF/1
2500   AC_MSG_CHECKING([for 3-argument statfs function (DEC OSF/1)])
2501   AC_CACHE_VAL(fu_cv_sys_stat_statfs3_osf1,
2502   [AC_TRY_RUN([
2503 #include <sys/param.h>
2504 #include <sys/types.h>
2505 #include <sys/mount.h>
2506   main ()
2507   {
2508     struct statfs fsd;
2509     fsd.f_fsize = 0;
2510     exit (statfs (".", &fsd, sizeof (struct statfs)));
2511   }],
2512   fu_cv_sys_stat_statfs3_osf1=yes,
2513   fu_cv_sys_stat_statfs3_osf1=no,
2514   fu_cv_sys_stat_statfs3_osf1=no)])
2515   AC_MSG_RESULT($fu_cv_sys_stat_statfs3_osf1)
2516   if test $fu_cv_sys_stat_statfs3_osf1 = yes; then
2517     ac_fsusage_space=yes
2518     AC_DEFINE(STAT_STATFS3_OSF1, 1,
2519               [   Define if  statfs takes 3 args.  (DEC Alpha running OSF/1)])
2520   fi
2521 fi
2522
2523 if test $ac_fsusage_space = no; then
2524 # AIX
2525   AC_MSG_CHECKING([for two-argument statfs with statfs.bsize dnl
2526 member (AIX, 4.3BSD)])
2527   AC_CACHE_VAL(fu_cv_sys_stat_statfs2_bsize,
2528   [AC_TRY_RUN([
2529 #ifdef HAVE_SYS_PARAM_H
2530 #include <sys/param.h>
2531 #endif
2532 #ifdef HAVE_SYS_MOUNT_H
2533 #include <sys/mount.h>
2534 #endif
2535 #ifdef HAVE_SYS_VFS_H
2536 #include <sys/vfs.h>
2537 #endif
2538   main ()
2539   {
2540   struct statfs fsd;
2541   fsd.f_bsize = 0;
2542   exit (statfs (".", &fsd));
2543   }],
2544   fu_cv_sys_stat_statfs2_bsize=yes,
2545   fu_cv_sys_stat_statfs2_bsize=no,
2546   fu_cv_sys_stat_statfs2_bsize=no)])
2547   AC_MSG_RESULT($fu_cv_sys_stat_statfs2_bsize)
2548   if test $fu_cv_sys_stat_statfs2_bsize = yes; then
2549     ac_fsusage_space=yes
2550     AC_DEFINE(STAT_STATFS2_BSIZE, 1,
2551 [  Define if statfs takes 2 args and struct statfs has a field named f_bsize.
2552    (4.3BSD, SunOS 4, HP-UX, AIX PS/2)])
2553   fi
2554 fi
2555
2556 if test $ac_fsusage_space = no; then
2557 # SVR3
2558   AC_MSG_CHECKING([for four-argument statfs (AIX-3.2.5, SVR3)])
2559   AC_CACHE_VAL(fu_cv_sys_stat_statfs4,
2560   [AC_TRY_RUN([#include <sys/types.h>
2561 #include <sys/statfs.h>
2562   main ()
2563   {
2564   struct statfs fsd;
2565   exit (statfs (".", &fsd, sizeof fsd, 0));
2566   }],
2567     fu_cv_sys_stat_statfs4=yes,
2568     fu_cv_sys_stat_statfs4=no,
2569     fu_cv_sys_stat_statfs4=no)])
2570   AC_MSG_RESULT($fu_cv_sys_stat_statfs4)
2571   if test $fu_cv_sys_stat_statfs4 = yes; then
2572     ac_fsusage_space=yes
2573     AC_DEFINE(STAT_STATFS4, 1,
2574               [  Define if statfs takes 4 args.  (SVR3, Dynix, Irix, Dolphin)])
2575   fi
2576 fi
2577
2578 if test $ac_fsusage_space = no; then
2579 # 4.4BSD and NetBSD
2580   AC_MSG_CHECKING([for two-argument statfs with statfs.fsize dnl
2581 member (4.4BSD and NetBSD)])
2582   AC_CACHE_VAL(fu_cv_sys_stat_statfs2_fsize,
2583   [AC_TRY_RUN([#include <sys/types.h>
2584 #ifdef HAVE_SYS_PARAM_H
2585 #include <sys/param.h>
2586 #endif
2587 #ifdef HAVE_SYS_MOUNT_H
2588 #include <sys/mount.h>
2589 #endif
2590   main ()
2591   {
2592   struct statfs fsd;
2593   fsd.f_fsize = 0;
2594   exit (statfs (".", &fsd));
2595   }],
2596   fu_cv_sys_stat_statfs2_fsize=yes,
2597   fu_cv_sys_stat_statfs2_fsize=no,
2598   fu_cv_sys_stat_statfs2_fsize=no)])
2599   AC_MSG_RESULT($fu_cv_sys_stat_statfs2_fsize)
2600   if test $fu_cv_sys_stat_statfs2_fsize = yes; then
2601     ac_fsusage_space=yes
2602     AC_DEFINE(STAT_STATFS2_FSIZE, 1,
2603 [  Define if statfs takes 2 args and struct statfs has a field named f_fsize.
2604    (4.4BSD, NetBSD)])
2605   fi
2606 fi
2607
2608 if test $ac_fsusage_space = no; then
2609   # Ultrix
2610   AC_MSG_CHECKING([for two-argument statfs with struct fs_data (Ultrix)])
2611   AC_CACHE_VAL(fu_cv_sys_stat_fs_data,
2612   [AC_TRY_RUN([#include <sys/types.h>
2613 #ifdef HAVE_SYS_PARAM_H
2614 #include <sys/param.h>
2615 #endif
2616 #ifdef HAVE_SYS_MOUNT_H
2617 #include <sys/mount.h>
2618 #endif
2619 #ifdef HAVE_SYS_FS_TYPES_H
2620 #include <sys/fs_types.h>
2621 #endif
2622   main ()
2623   {
2624   struct fs_data fsd;
2625   /* Ultrix's statfs returns 1 for success,
2626      0 for not mounted, -1 for failure.  */
2627   exit (statfs (".", &fsd) != 1);
2628   }],
2629   fu_cv_sys_stat_fs_data=yes,
2630   fu_cv_sys_stat_fs_data=no,
2631   fu_cv_sys_stat_fs_data=no)])
2632   AC_MSG_RESULT($fu_cv_sys_stat_fs_data)
2633   if test $fu_cv_sys_stat_fs_data = yes; then
2634     ac_fsusage_space=yes
2635     AC_DEFINE(STAT_STATFS2_FS_DATA, 1,
2636 [  Define if statfs takes 2 args and the second argument has
2637    type struct fs_data.  (Ultrix)])
2638   fi
2639 fi
2640
2641 if test $ac_fsusage_space = no; then
2642   # SVR2
2643   AC_TRY_CPP([#include <sys/filsys.h>
2644     ],
2645     AC_DEFINE(STAT_READ_FILSYS, 1,
2646       [Define if there is no specific function for reading filesystems usage
2647        information and you have the <sys/filsys.h> header file.  (SVR2)])
2648     ac_fsusage_space=yes)
2649 fi
2650
2651 AS_IF([test $ac_fsusage_space = yes], [$1], [$2])
2652
2653 ])
2654
2655
2656 # Check for SunOS statfs brokenness wrt partitions 2GB and larger.
2657 # If <sys/vfs.h> exists and struct statfs has a member named f_spare,
2658 # enable the work-around code in fsusage.c.
2659 AC_DEFUN([jm_STATFS_TRUNCATES],
2660 [
2661   AC_MSG_CHECKING([for statfs that truncates block counts])
2662   AC_CACHE_VAL(fu_cv_sys_truncating_statfs,
2663   [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
2664 #if !defined(sun) && !defined(__sun)
2665 choke -- this is a workaround for a Sun-specific problem
2666 #endif
2667 #include <sys/types.h>
2668 #include <sys/vfs.h>]],
2669     [[struct statfs t; long c = *(t.f_spare);]])],
2670     [fu_cv_sys_truncating_statfs=yes],
2671     [fu_cv_sys_truncating_statfs=no])])
2672   if test $fu_cv_sys_truncating_statfs = yes; then
2673     AC_DEFINE(STATFS_TRUNCATES_BLOCK_COUNTS, 1,
2674       [Define if the block counts reported by statfs may be truncated to 2GB
2675        and the correct values may be stored in the f_spare array.
2676        (SunOS 4.1.2, 4.1.3, and 4.1.3_U1 are reported to have this problem.
2677        SunOS 4.1.1 seems not to be affected.)])
2678   fi
2679   AC_MSG_RESULT($fu_cv_sys_truncating_statfs)
2680 ])
2681
2682
2683 # Prerequisites of lib/fsusage.c not done by jm_FILE_SYSTEM_USAGE.
2684 AC_DEFUN([gl_PREREQ_FSUSAGE_EXTRA],
2685 [
2686   AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])
2687   AC_CHECK_HEADERS_ONCE(fcntl.h)
2688   AC_CHECK_HEADERS(dustat.h sys/fs/s5param.h sys/filsys.h sys/statfs.h sys/statvfs.h)
2689   jm_STATFS_TRUNCATES
2690 ])
2691
2692 # alloca.m4 serial 3
2693 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
2694 dnl This file is free software, distributed under the terms of the GNU
2695 dnl General Public License.  As a special exception to the GNU General
2696 dnl Public License, this file may be distributed as part of a program
2697 dnl that contains a configuration script generated by Autoconf, under
2698 dnl the same distribution terms as the rest of that program.
2699
2700 AC_DEFUN([gl_FUNC_ALLOCA],
2701 [
2702   dnl Work around a bug of AC_EGREP_CPP in autoconf-2.57.
2703   AC_REQUIRE([AC_PROG_CPP])
2704   AC_REQUIRE([AC_PROG_EGREP])
2705
2706   AC_REQUIRE([AC_FUNC_ALLOCA])
2707   if test $ac_cv_func_alloca_works = no; then
2708     gl_PREREQ_ALLOCA
2709   fi
2710
2711   # Define an additional variable used in the Makefile substitution.
2712
2713   AC_EGREP_CPP([Need own alloca], [
2714 #if defined __GNUC__ || defined _MSC_VER || !HAVE_ALLOCA_H
2715   Need own alloca
2716 #endif
2717     ],
2718     ALLOCA_H=alloca.h,
2719     ALLOCA_H=)
2720   AC_SUBST([ALLOCA_H])
2721 ])
2722
2723 # Prerequisites of lib/alloca.c.
2724 # STACK_DIRECTION is already handled by AC_FUNC_ALLOCA.
2725 AC_DEFUN([gl_PREREQ_ALLOCA], [:])
2726
2727 # atexit.m4 serial 1
2728 dnl Copyright (C) 2002 Free Software Foundation, Inc.
2729 dnl This file is free software, distributed under the terms of the GNU
2730 dnl General Public License.  As a special exception to the GNU General
2731 dnl Public License, this file may be distributed as part of a program
2732 dnl that contains a configuration script generated by Autoconf, under
2733 dnl the same distribution terms as the rest of that program.
2734
2735 AC_DEFUN([gl_FUNC_ATEXIT],
2736 [
2737   AC_REPLACE_FUNCS(atexit)
2738   if test $ac_cv_func_atexit = no; then
2739     gl_PREREQ_ATEXIT
2740   fi
2741 ])
2742
2743 # Prerequisites of lib/atexit.c.
2744 AC_DEFUN([gl_PREREQ_ATEXIT], [
2745   :
2746 ])
2747
2748 # dup2.m4 serial 1
2749 dnl Copyright (C) 2002 Free Software Foundation, Inc.
2750 dnl This file is free software, distributed under the terms of the GNU
2751 dnl General Public License.  As a special exception to the GNU General
2752 dnl Public License, this file may be distributed as part of a program
2753 dnl that contains a configuration script generated by Autoconf, under
2754 dnl the same distribution terms as the rest of that program.
2755
2756 AC_DEFUN([gl_FUNC_DUP2],
2757 [
2758   AC_REPLACE_FUNCS(dup2)
2759   if test $ac_cv_func_dup2 = no; then
2760     gl_PREREQ_DUP2
2761   fi
2762 ])
2763
2764 # Prerequisites of lib/dup2.c.
2765 AC_DEFUN([gl_PREREQ_DUP2], [
2766   AC_CHECK_HEADERS_ONCE(fcntl.h unistd.h)
2767 ])
2768
2769
2770 # euidaccess.m4 serial 2
2771 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
2772 dnl This file is free software, distributed under the terms of the GNU
2773 dnl General Public License.  As a special exception to the GNU General
2774 dnl Public License, this file may be distributed as part of a program
2775 dnl that contains a configuration script generated by Autoconf, under
2776 dnl the same distribution terms as the rest of that program.
2777
2778 AC_DEFUN([gl_FUNC_EUIDACCESS],
2779 [
2780   dnl Persuade glibc <unistd.h> to declare euidaccess().
2781   AC_REQUIRE([AC_GNU_SOURCE])
2782
2783   AC_CHECK_DECLS([euidaccess])
2784   AC_REPLACE_FUNCS(euidaccess)
2785   if test $ac_cv_func_euidaccess = no; then
2786     gl_PREREQ_EUIDACCESS
2787   fi
2788 ])
2789
2790 # Prerequisites of lib/euidaccess.c.
2791 AC_DEFUN([gl_PREREQ_EUIDACCESS], [
2792   AC_CHECK_HEADERS_ONCE(unistd.h)
2793   AC_REQUIRE([AC_FUNC_GETGROUPS])
2794 ])
2795
2796
2797 # Check for fnmatch.
2798
2799 # This is a modified version of autoconf's AC_FUNC_FNMATCH.
2800 # This file should be simplified after Autoconf 2.57 is required.
2801
2802 # Copyright (C) 2000-2003 Free Software Foundation, Inc.
2803
2804 # This program is free software; you can redistribute it and/or modify
2805 # it under the terms of the GNU General Public License as published by
2806 # the Free Software Foundation; either version 2, or (at your option)
2807 # any later version.
2808
2809 # This program is distributed in the hope that it will be useful,
2810 # but WITHOUT ANY WARRANTY; without even the implied warranty of
2811 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2812 # GNU General Public License for more details.
2813
2814 # You should have received a copy of the GNU General Public License
2815 # along with this program; if not, write to the Free Software
2816 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
2817 # 02111-1307, USA.
2818
2819 # _AC_FUNC_FNMATCH_IF(STANDARD = GNU | POSIX, CACHE_VAR, IF-TRUE, IF-FALSE)
2820 # -------------------------------------------------------------------------
2821 # If a STANDARD compliant fnmatch is found, run IF-TRUE, otherwise
2822 # IF-FALSE.  Use CACHE_VAR.
2823 AC_DEFUN([_AC_FUNC_FNMATCH_IF],
2824 [AC_CACHE_CHECK(
2825    [for working $1 fnmatch],
2826    [$2],
2827   [# Some versions of Solaris, SCO, and the GNU C Library
2828    # have a broken or incompatible fnmatch.
2829    # So we run a test program.  If we are cross-compiling, take no chance.
2830    # Thanks to John Oleynick, Franc,ois Pinard, and Paul Eggert for this test.
2831    AC_RUN_IFELSE(
2832       [AC_LANG_PROGRAM(
2833          [
2834 #          include <stdlib.h>
2835 #          include <fnmatch.h>
2836 #          define y(a, b, c) (fnmatch (a, b, c) == 0)
2837 #          define n(a, b, c) (fnmatch (a, b, c) == FNM_NOMATCH)
2838          ],
2839          [exit
2840            (!(y ("a*", "abc", 0)
2841               && n ("d*/*1", "d/s/1", FNM_PATHNAME)
2842               && y ("a\\\\bc", "abc", 0)
2843               && n ("a\\\\bc", "abc", FNM_NOESCAPE)
2844               && y ("*x", ".x", 0)
2845               && n ("*x", ".x", FNM_PERIOD)
2846               && m4_if([$1], [GNU],
2847                    [y ("xxXX", "xXxX", FNM_CASEFOLD)
2848                     && y ("a++(x|yy)b", "a+xyyyyxb", FNM_EXTMATCH)
2849                     && n ("d*/*1", "d/s/1", FNM_FILE_NAME)
2850                     && y ("*", "x", FNM_FILE_NAME | FNM_LEADING_DIR)
2851                     && y ("x*", "x/y/z", FNM_FILE_NAME | FNM_LEADING_DIR)
2852                     && y ("*c*", "c/x", FNM_FILE_NAME | FNM_LEADING_DIR)],
2853                    1)));])],
2854       [$2=yes],
2855       [$2=no],
2856       [$2=cross])])
2857 AS_IF([test $$2 = yes], [$3], [$4])
2858 ])# _AC_FUNC_FNMATCH_IF
2859
2860
2861 # _AC_LIBOBJ_FNMATCH
2862 # ------------------
2863 # Prepare the replacement of fnmatch.
2864 AC_DEFUN([_AC_LIBOBJ_FNMATCH],
2865 [AC_REQUIRE([AC_C_CONST])dnl
2866 AC_REQUIRE([AC_FUNC_ALLOCA])dnl
2867 AC_REQUIRE([AC_TYPE_MBSTATE_T])dnl
2868 AC_CHECK_DECLS([getenv])
2869 AC_CHECK_FUNCS([btowc mbsrtowcs mempcpy wmempcpy])
2870 AC_CHECK_HEADERS([wchar.h wctype.h])
2871 AC_LIBOBJ([fnmatch])
2872 FNMATCH_H=fnmatch.h
2873 AC_DEFINE(fnmatch, rpl_fnmatch,
2874           [Define to rpl_fnmatch if the replacement function should be used.])
2875 ])# _AC_LIBOBJ_FNMATCH
2876
2877
2878 AC_DEFUN([gl_FUNC_FNMATCH_POSIX],
2879 [
2880   FNMATCH_H=
2881   _AC_FUNC_FNMATCH_IF([POSIX], [ac_cv_func_fnmatch_posix],
2882                       [rm -f lib/fnmatch.h],
2883                       [_AC_LIBOBJ_FNMATCH])
2884   if test $ac_cv_func_fnmatch_posix != yes; then
2885     dnl We must choose a different name for our function, since on ELF systems
2886     dnl a broken fnmatch() in libc.so would override our fnmatch() if it is
2887     dnl compiled into a shared library.
2888     AC_DEFINE([fnmatch], [posix_fnmatch],
2889       [Define to a replacement function name for fnmatch().])
2890   fi
2891   AC_SUBST([FNMATCH_H])
2892 ])
2893
2894
2895 AC_DEFUN([gl_FUNC_FNMATCH_GNU],
2896 [
2897   dnl Persuade glibc <fnmatch.h> to declare FNM_CASEFOLD etc.
2898   AC_REQUIRE([AC_GNU_SOURCE])
2899
2900   FNMATCH_H=
2901   _AC_FUNC_FNMATCH_IF([GNU], [ac_cv_func_fnmatch_gnu],
2902                       [rm -f lib/fnmatch.h],
2903                       [_AC_LIBOBJ_FNMATCH])
2904   if test $ac_cv_func_fnmatch_gnu != yes; then
2905     dnl We must choose a different name for our function, since on ELF systems
2906     dnl a broken fnmatch() in libc.so would override our fnmatch() if it is
2907     dnl compiled into a shared library.
2908     AC_DEFINE([fnmatch], [gnu_fnmatch],
2909       [Define to a replacement function name for fnmatch().])
2910   fi
2911   AC_SUBST([FNMATCH_H])
2912 ])
2913
2914 # gethostname.m4 serial 1
2915 dnl Copyright (C) 2002 Free Software Foundation, Inc.
2916 dnl This file is free software, distributed under the terms of the GNU
2917 dnl General Public License.  As a special exception to the GNU General
2918 dnl Public License, this file may be distributed as part of a program
2919 dnl that contains a configuration script generated by Autoconf, under
2920 dnl the same distribution terms as the rest of that program.
2921
2922 AC_DEFUN([gl_FUNC_GETHOSTNAME],
2923 [
2924   AC_REPLACE_FUNCS(gethostname)
2925   if test $ac_cv_func_gethostname = no; then
2926     gl_PREREQ_GETHOSTNAME
2927   fi
2928 ])
2929
2930 # Prerequisites of lib/gethostname.c.
2931 AC_DEFUN([gl_PREREQ_GETHOSTNAME], [
2932   AC_CHECK_FUNCS(uname)
2933 ])
2934
2935
2936 #serial 11
2937
2938 # A replacement for autoconf's macro by the same name.  This version
2939 # accepts an optional argument specifying the name of the $srcdir-relative
2940 # directory in which the file getloadavg.c may be found.  It is unusual
2941 # (but justified, imho) that this file is required at ./configure time.
2942
2943 undefine([AC_FUNC_GETLOADAVG])
2944
2945 # AC_FUNC_GETLOADAVG
2946 # ------------------
2947 AC_DEFUN([AC_FUNC_GETLOADAVG],
2948 [ac_have_func=no # yes means we've found a way to get the load average.
2949
2950 AC_CHECK_HEADERS_ONCE(fcntl.h locale.h unistd.h)
2951 AC_CHECK_HEADERS(mach/mach.h)
2952 AC_CHECK_FUNCS(setlocale)
2953
2954 # By default, expect to find getloadavg.c in $srcdir/.
2955 ac_lib_dir_getloadavg=$srcdir
2956 # But if there's an argument, DIR, expect to find getloadavg.c in $srcdir/DIR.
2957 m4_ifval([$1], [ac_lib_dir_getloadavg=$srcdir/$1])
2958 # Make sure getloadavg.c is where it belongs, at ./configure-time.
2959 test -f $ac_lib_dir_getloadavg/getloadavg.c \
2960   || AC_MSG_ERROR([getloadavg.c is not in $ac_lib_dir_getloadavg])
2961 # FIXME: Add an autoconf-time test, too?
2962
2963 ac_save_LIBS=$LIBS
2964
2965 # Check for getloadavg, but be sure not to touch the cache variable.
2966 (AC_CHECK_FUNC(getloadavg, exit 0, exit 1)) && ac_have_func=yes
2967
2968 # On HPUX9, an unprivileged user can get load averages through this function.
2969 AC_CHECK_FUNCS(pstat_getdynamic)
2970
2971 # Solaris has libkstat which does not require root.
2972 AC_CHECK_LIB(kstat, kstat_open)
2973 test $ac_cv_lib_kstat_kstat_open = yes && ac_have_func=yes
2974
2975 # Some systems with -lutil have (and need) -lkvm as well, some do not.
2976 # On Solaris, -lkvm requires nlist from -lelf, so check that first
2977 # to get the right answer into the cache.
2978 # For kstat on solaris, we need libelf to force the definition of SVR4 below.
2979 if test $ac_have_func = no; then
2980   AC_CHECK_LIB(elf, elf_begin, LIBS="-lelf $LIBS")
2981 fi
2982 if test $ac_have_func = no; then
2983   AC_CHECK_LIB(kvm, kvm_open, LIBS="-lkvm $LIBS")
2984   # Check for the 4.4BSD definition of getloadavg.
2985   AC_CHECK_LIB(util, getloadavg,
2986     [LIBS="-lutil $LIBS" ac_have_func=yes ac_cv_func_getloadavg_setgid=yes])
2987 fi
2988
2989 if test $ac_have_func = no; then
2990   # There is a commonly available library for RS/6000 AIX.
2991   # Since it is not a standard part of AIX, it might be installed locally.
2992   ac_getloadavg_LIBS=$LIBS
2993   LIBS="-L/usr/local/lib $LIBS"
2994   AC_CHECK_LIB(getloadavg, getloadavg,
2995                [LIBS="-lgetloadavg $LIBS"], [LIBS=$ac_getloadavg_LIBS])
2996 fi
2997
2998 # Make sure it is really in the library, if we think we found it,
2999 # otherwise set up the replacement function.
3000 AC_CHECK_FUNCS(getloadavg, [],
3001                [_AC_LIBOBJ_GETLOADAVG])
3002
3003 # Some definitions of getloadavg require that the program be installed setgid.
3004 AC_CACHE_CHECK(whether getloadavg requires setgid,
3005                ac_cv_func_getloadavg_setgid,
3006 [AC_EGREP_CPP([Yowza Am I SETGID yet],
3007 [#include "$ac_lib_dir_getloadavg/getloadavg.c"
3008 #ifdef LDAV_PRIVILEGED
3009 Yowza Am I SETGID yet
3010 @%:@endif],
3011               ac_cv_func_getloadavg_setgid=yes,
3012               ac_cv_func_getloadavg_setgid=no)])
3013 if test $ac_cv_func_getloadavg_setgid = yes; then
3014   NEED_SETGID=true
3015   AC_DEFINE(GETLOADAVG_PRIVILEGED, 1,
3016             [Define if the `getloadavg' function needs to be run setuid
3017              or setgid.])
3018 else
3019   NEED_SETGID=false
3020 fi
3021 AC_SUBST(NEED_SETGID)dnl
3022
3023 if test $ac_cv_func_getloadavg_setgid = yes; then
3024   AC_CACHE_CHECK(group of /dev/kmem, ac_cv_group_kmem,
3025 [ # On Solaris, /dev/kmem is a symlink.  Get info on the real file.
3026   ac_ls_output=`ls -lgL /dev/kmem 2>/dev/null`
3027   # If we got an error (system does not support symlinks), try without -L.
3028   test -z "$ac_ls_output" && ac_ls_output=`ls -lg /dev/kmem`
3029   ac_cv_group_kmem=`echo $ac_ls_output \
3030     | sed -ne ['s/[      ][      ]*/ /g;
3031                s/^.[sSrwx-]* *[0-9]* *\([^0-9]*\)  *.*/\1/;
3032                / /s/.* //;p;']`
3033 ])
3034   AC_SUBST(KMEM_GROUP, $ac_cv_group_kmem)dnl
3035 fi
3036 if test "x$ac_save_LIBS" = x; then
3037   GETLOADAVG_LIBS=$LIBS
3038 else
3039   GETLOADAVG_LIBS=`echo "$LIBS" | sed "s!$ac_save_LIBS!!"`
3040 fi
3041 LIBS=$ac_save_LIBS
3042
3043 AC_SUBST(GETLOADAVG_LIBS)dnl
3044 ])# AC_FUNC_GETLOADAVG
3045
3046
3047 AC_DEFUN([gl_FUNC_GETLOADAVG],
3048 [
3049   AC_FUNC_GETLOADAVG([lib])
3050   dnl Note AC_FUNC_GETLOADAVG does AC_LIBOBJ(getloadavg).
3051   if test $ac_cv_func_getloadavg = no; then
3052     gl_PREREQ_GETLOADAVG
3053   fi
3054 ])
3055
3056 # Prerequisites of lib/getloadavg.c not done by autoconf's AC_FUNC_GETLOADAVG.
3057 AC_DEFUN([gl_PREREQ_GETLOADAVG],
3058 [
3059   AC_CHECK_HEADERS_ONCE(fcntl.h unistd.h)
3060 ])
3061
3062 # getpass.m4 serial 2
3063 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
3064 dnl This file is free software, distributed under the terms of the GNU
3065 dnl General Public License.  As a special exception to the GNU General
3066 dnl Public License, this file may be distributed as part of a program
3067 dnl that contains a configuration script generated by Autoconf, under
3068 dnl the same distribution terms as the rest of that program.
3069
3070 # Provide a getpass() function if the system doesn't have it.
3071 AC_DEFUN([gl_FUNC_GETPASS],
3072 [
3073   AC_REPLACE_FUNCS(getpass)
3074   if test $ac_cv_func_getpass = no; then
3075     gl_PREREQ_GETPASS
3076   fi
3077 ])
3078
3079 # Provide the GNU getpass() implementation. It supports passwords of
3080 # arbitrary length (not just 8 bytes as on HP-UX).
3081 AC_DEFUN([gl_FUNC_GETPASS_GNU],
3082 [
3083   dnl TODO: Detect when GNU getpass() is already found in glibc.
3084   AC_LIBOBJ(getpass)
3085   gl_PREREQ_GETPASS
3086   dnl We must choose a different name for our function, since on ELF systems
3087   dnl an unusable getpass() in libc.so would override our getpass() if it is
3088   dnl compiled into a shared library.
3089   AC_DEFINE([getpass], [gnu_getpass],
3090     [Define to a replacement function name for getpass().])
3091 ])
3092
3093 # Prerequisites of lib/getpass.c.
3094 AC_DEFUN([gl_PREREQ_GETPASS], [
3095   :
3096 ])
3097
3098
3099 # getusershell.m4 serial 2
3100 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
3101 dnl This file is free software, distributed under the terms of the GNU
3102 dnl General Public License.  As a special exception to the GNU General
3103 dnl Public License, this file may be distributed as part of a program
3104 dnl that contains a configuration script generated by Autoconf, under
3105 dnl the same distribution terms as the rest of that program.
3106
3107 AC_DEFUN([gl_FUNC_GETUSERSHELL],
3108 [
3109   AC_REPLACE_FUNCS(getusershell)
3110   if test $ac_cv_func_getusershell = no; then
3111     gl_PREREQ_GETUSERSHELL
3112   fi
3113 ])
3114
3115 # Prerequisites of lib/getusershell.c.
3116 AC_DEFUN([gl_PREREQ_GETUSERSHELL], [
3117   AC_REQUIRE([AC_HEADER_STDC])
3118   AC_CHECK_FUNCS_ONCE(isascii)
3119 ])
3120
3121 # memchr.m4 serial 2
3122 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
3123 dnl This file is free software, distributed under the terms of the GNU
3124 dnl General Public License.  As a special exception to the GNU General
3125 dnl Public License, this file may be distributed as part of a program
3126 dnl that contains a configuration script generated by Autoconf, under
3127 dnl the same distribution terms as the rest of that program.
3128
3129 AC_DEFUN([gl_FUNC_MEMCHR],
3130 [
3131   AC_REPLACE_FUNCS(memchr)
3132   if test $ac_cv_func_memchr = no; then
3133     jm_PREREQ_MEMCHR
3134   fi
3135 ])
3136
3137 # Prerequisites of lib/memchr.c.
3138 AC_DEFUN([jm_PREREQ_MEMCHR], [
3139   AC_CHECK_HEADERS(bp-sym.h)
3140 ])
3141
3142 # memcpy.m4 serial 1
3143 dnl Copyright (C) 2002 Free Software Foundation, Inc.
3144 dnl This file is free software, distributed under the terms of the GNU
3145 dnl General Public License.  As a special exception to the GNU General
3146 dnl Public License, this file may be distributed as part of a program
3147 dnl that contains a configuration script generated by Autoconf, under
3148 dnl the same distribution terms as the rest of that program.
3149
3150 AC_DEFUN([gl_FUNC_MEMCPY],
3151 [
3152   AC_REPLACE_FUNCS(memcpy)
3153   if test $ac_cv_func_memcpy = no; then
3154     gl_PREREQ_MEMCPY
3155   fi
3156 ])
3157
3158 # Prerequisites of lib/memcpy.c.
3159 AC_DEFUN([gl_PREREQ_MEMCPY], [
3160   :
3161 ])
3162
3163 # memmove.m4 serial 1
3164 dnl Copyright (C) 2002 Free Software Foundation, Inc.
3165 dnl This file is free software, distributed under the terms of the GNU
3166 dnl General Public License.  As a special exception to the GNU General
3167 dnl Public License, this file may be distributed as part of a program
3168 dnl that contains a configuration script generated by Autoconf, under
3169 dnl the same distribution terms as the rest of that program.
3170
3171 AC_DEFUN([gl_FUNC_MEMMOVE],
3172 [
3173   AC_REPLACE_FUNCS(memmove)
3174   if test $ac_cv_func_memmove = no; then
3175     gl_PREREQ_MEMMOVE
3176   fi
3177 ])
3178
3179 # Prerequisites of lib/memmove.c.
3180 AC_DEFUN([gl_PREREQ_MEMMOVE], [
3181   :
3182 ])
3183
3184 # memrchr.m4 serial 2
3185 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
3186 dnl This file is free software, distributed under the terms of the GNU
3187 dnl General Public License.  As a special exception to the GNU General
3188 dnl Public License, this file may be distributed as part of a program
3189 dnl that contains a configuration script generated by Autoconf, under
3190 dnl the same distribution terms as the rest of that program.
3191
3192 AC_DEFUN([gl_FUNC_MEMRCHR],
3193 [
3194   dnl Persuade glibc <string.h> to declare memrchr().
3195   AC_REQUIRE([AC_GNU_SOURCE])
3196
3197   AC_REPLACE_FUNCS(memrchr)
3198   if test $ac_cv_func_memrchr = no; then
3199     gl_PREREQ_MEMRCHR
3200   fi
3201 ])
3202
3203 # Prerequisites of lib/memrchr.c.
3204 AC_DEFUN([gl_PREREQ_MEMRCHR], [:])
3205
3206 # memset.m4 serial 1
3207 dnl Copyright (C) 2002 Free Software Foundation, Inc.
3208 dnl This file is free software, distributed under the terms of the GNU
3209 dnl General Public License.  As a special exception to the GNU General
3210 dnl Public License, this file may be distributed as part of a program
3211 dnl that contains a configuration script generated by Autoconf, under
3212 dnl the same distribution terms as the rest of that program.
3213
3214 AC_DEFUN([gl_FUNC_MEMSET],
3215 [
3216   AC_REPLACE_FUNCS(memset)
3217   if test $ac_cv_func_memset = no; then
3218     gl_PREREQ_MEMSET
3219   fi
3220 ])
3221
3222 # Prerequisites of lib/memset.c.
3223 AC_DEFUN([gl_PREREQ_MEMSET], [
3224   :
3225 ])
3226
3227 # mktime.m4 serial 4
3228 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
3229 dnl This file is free software, distributed under the terms of the GNU
3230 dnl General Public License.  As a special exception to the GNU General
3231 dnl Public License, this file may be distributed as part of a program
3232 dnl that contains a configuration script generated by Autoconf, under
3233 dnl the same distribution terms as the rest of that program.
3234
3235 dnl From Jim Meyering.
3236
3237 # Redefine AC_FUNC_MKTIME, to fix a bug in Autoconf 2.57 and earlier.
3238 # This redefinition can be removed once a new version of Autoconf comes out.
3239 # The redefinition is taken from
3240 # <http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/autoconf/autoconf/lib/autoconf/functions.m4?rev=1.78>.
3241 # AC_FUNC_MKTIME
3242 # --------------
3243 AC_DEFUN([AC_FUNC_MKTIME],
3244 [AC_REQUIRE([AC_HEADER_TIME])dnl
3245 AC_CHECK_HEADERS(stdlib.h sys/time.h unistd.h)
3246 AC_CHECK_FUNCS(alarm)
3247 AC_CACHE_CHECK([for working mktime], ac_cv_func_working_mktime,
3248 [AC_RUN_IFELSE([AC_LANG_SOURCE(
3249 [[/* Test program from Paul Eggert and Tony Leneis.  */
3250 #if TIME_WITH_SYS_TIME
3251 # include <sys/time.h>
3252 # include <time.h>
3253 #else
3254 # if HAVE_SYS_TIME_H
3255 #  include <sys/time.h>
3256 # else
3257 #  include <time.h>
3258 # endif
3259 #endif
3260
3261 #if HAVE_STDLIB_H
3262 # include <stdlib.h>
3263 #endif
3264
3265 #if HAVE_UNISTD_H
3266 # include <unistd.h>
3267 #endif
3268
3269 #if !HAVE_ALARM
3270 # define alarm(X) /* empty */
3271 #endif
3272
3273 /* Work around redefinition to rpl_putenv by other config tests.  */
3274 #undef putenv
3275
3276 static time_t time_t_max;
3277 static time_t time_t_min;
3278
3279 /* Values we'll use to set the TZ environment variable.  */
3280 static char *tz_strings[] = {
3281   (char *) 0, "TZ=GMT0", "TZ=JST-9",
3282   "TZ=EST+3EDT+2,M10.1.0/00:00:00,M2.3.0/00:00:00"
3283 };
3284 #define N_STRINGS (sizeof (tz_strings) / sizeof (tz_strings[0]))
3285
3286 /* Fail if mktime fails to convert a date in the spring-forward gap.
3287    Based on a problem report from Andreas Jaeger.  */
3288 static void
3289 spring_forward_gap ()
3290 {
3291   /* glibc (up to about 1998-10-07) failed this test. */
3292   struct tm tm;
3293
3294   /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0"
3295      instead of "TZ=America/Vancouver" in order to detect the bug even
3296      on systems that don't support the Olson extension, or don't have the
3297      full zoneinfo tables installed.  */
3298   putenv ("TZ=PST8PDT,M4.1.0,M10.5.0");
3299
3300   tm.tm_year = 98;
3301   tm.tm_mon = 3;
3302   tm.tm_mday = 5;
3303   tm.tm_hour = 2;
3304   tm.tm_min = 0;
3305   tm.tm_sec = 0;
3306   tm.tm_isdst = -1;
3307   if (mktime (&tm) == (time_t)-1)
3308     exit (1);
3309 }
3310
3311 static void
3312 mktime_test1 (now)
3313      time_t now;
3314 {
3315   struct tm *lt;
3316   if ((lt = localtime (&now)) && mktime (lt) != now)
3317     exit (1);
3318 }
3319
3320 static void
3321 mktime_test (now)
3322      time_t now;
3323 {
3324   mktime_test1 (now);
3325   mktime_test1 ((time_t) (time_t_max - now));
3326   mktime_test1 ((time_t) (time_t_min + now));
3327 }
3328
3329 static void
3330 irix_6_4_bug ()
3331 {
3332   /* Based on code from Ariel Faigon.  */
3333   struct tm tm;
3334   tm.tm_year = 96;
3335   tm.tm_mon = 3;
3336   tm.tm_mday = 0;
3337   tm.tm_hour = 0;
3338   tm.tm_min = 0;
3339   tm.tm_sec = 0;
3340   tm.tm_isdst = -1;
3341   mktime (&tm);
3342   if (tm.tm_mon != 2 || tm.tm_mday != 31)
3343     exit (1);
3344 }
3345
3346 static void
3347 bigtime_test (j)
3348      int j;
3349 {
3350   struct tm tm;
3351   time_t now;
3352   tm.tm_year = tm.tm_mon = tm.tm_mday = tm.tm_hour = tm.tm_min = tm.tm_sec = j;
3353   now = mktime (&tm);
3354   if (now != (time_t) -1)
3355     {
3356       struct tm *lt = localtime (&now);
3357       if (! (lt
3358              && lt->tm_year == tm.tm_year
3359              && lt->tm_mon == tm.tm_mon
3360              && lt->tm_mday == tm.tm_mday
3361              && lt->tm_hour == tm.tm_hour
3362              && lt->tm_min == tm.tm_min
3363              && lt->tm_sec == tm.tm_sec
3364              && lt->tm_yday == tm.tm_yday
3365              && lt->tm_wday == tm.tm_wday
3366              && ((lt->tm_isdst < 0 ? -1 : 0 < lt->tm_isdst)
3367                   == (tm.tm_isdst < 0 ? -1 : 0 < tm.tm_isdst))))
3368         exit (1);
3369     }
3370 }
3371
3372 int
3373 main ()
3374 {
3375   time_t t, delta;
3376   int i, j;
3377
3378   /* This test makes some buggy mktime implementations loop.
3379      Give up after 60 seconds; a mktime slower than that
3380      isn't worth using anyway.  */
3381   alarm (60);
3382
3383   for (time_t_max = 1; 0 < time_t_max; time_t_max *= 2)
3384     continue;
3385   time_t_max--;
3386   if ((time_t) -1 < 0)
3387     for (time_t_min = -1; (time_t) (time_t_min * 2) < 0; time_t_min *= 2)
3388       continue;
3389   delta = time_t_max / 997; /* a suitable prime number */
3390   for (i = 0; i < N_STRINGS; i++)
3391     {
3392       if (tz_strings[i])
3393         putenv (tz_strings[i]);
3394
3395       for (t = 0; t <= time_t_max - delta; t += delta)
3396         mktime_test (t);
3397       mktime_test ((time_t) 1);
3398       mktime_test ((time_t) (60 * 60));
3399       mktime_test ((time_t) (60 * 60 * 24));
3400
3401       for (j = 1; 0 < j; j *= 2)
3402         bigtime_test (j);
3403       bigtime_test (j - 1);
3404     }
3405   irix_6_4_bug ();
3406   spring_forward_gap ();
3407   exit (0);
3408 }]])],
3409                [ac_cv_func_working_mktime=yes],
3410                [ac_cv_func_working_mktime=no],
3411                [ac_cv_func_working_mktime=no])])
3412 if test $ac_cv_func_working_mktime = no; then
3413   AC_LIBOBJ([mktime])
3414 fi
3415 ])# AC_FUNC_MKTIME
3416
3417 AC_DEFUN([gl_FUNC_MKTIME],
3418 [
3419   AC_REQUIRE([AC_FUNC_MKTIME])
3420   if test $ac_cv_func_working_mktime = no; then
3421     AC_DEFINE(mktime, rpl_mktime,
3422       [Define to rpl_mktime if the replacement function should be used.])
3423     gl_PREREQ_MKTIME
3424   fi
3425 ])
3426
3427 # Prerequisites of lib/mktime.c.
3428 AC_DEFUN([gl_PREREQ_MKTIME], [:])
3429
3430 # readlink.m4 serial 2
3431 dnl Copyright (C) 2003 Free Software Foundation, Inc.
3432 dnl This file is free software, distributed under the terms of the GNU
3433 dnl General Public License.  As a special exception to the GNU General
3434 dnl Public License, this file may be distributed as part of a program
3435 dnl that contains a configuration script generated by Autoconf, under
3436 dnl the same distribution terms as the rest of that program.
3437
3438 AC_DEFUN([gl_FUNC_READLINK],
3439 [
3440   AC_CHECK_FUNCS(readlink)
3441   if test $ac_cv_func_readlink = no; then
3442     AC_LIBOBJ(readlink)
3443     gl_PREREQ_READLINK
3444   fi
3445 ])
3446
3447 # Prerequisites of lib/readlink.c.
3448 AC_DEFUN([gl_PREREQ_READLINK],
3449 [
3450   :
3451 ])
3452
3453 # rmdir.m4 serial 1
3454 dnl Copyright (C) 2002 Free Software Foundation, Inc.
3455 dnl This file is free software, distributed under the terms of the GNU
3456 dnl General Public License.  As a special exception to the GNU General
3457 dnl Public License, this file may be distributed as part of a program
3458 dnl that contains a configuration script generated by Autoconf, under
3459 dnl the same distribution terms as the rest of that program.
3460
3461 AC_DEFUN([gl_FUNC_RMDIR],
3462 [
3463   AC_REPLACE_FUNCS(rmdir)
3464   if test $ac_cv_func_rmdir = no; then
3465     gl_PREREQ_RMDIR
3466   fi
3467 ])
3468
3469 # Prerequisites of lib/rmdir.c.
3470 AC_DEFUN([gl_PREREQ_RMDIR], [
3471   AC_REQUIRE([AC_HEADER_STAT])
3472   :
3473 ])
3474
3475
3476 # rpmatch.m4 serial 4
3477 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
3478 dnl This file is free software, distributed under the terms of the GNU
3479 dnl General Public License.  As a special exception to the GNU General
3480 dnl Public License, this file may be distributed as part of a program
3481 dnl that contains a configuration script generated by Autoconf, under
3482 dnl the same distribution terms as the rest of that program.
3483
3484 AC_DEFUN([gl_FUNC_RPMATCH],
3485 [
3486   AC_REPLACE_FUNCS(rpmatch)
3487   if test $ac_cv_func_rpmatch = no; then
3488     gl_PREREQ_RPMATCH
3489   fi
3490 ])
3491
3492 # Prerequisites of lib/rpmatch.c.
3493 AC_DEFUN([gl_PREREQ_RPMATCH], [:])
3494
3495 # sig2str.m4 serial 1
3496 dnl Copyright (C) 2002 Free Software Foundation, Inc.
3497 dnl This file is free software, distributed under the terms of the GNU
3498 dnl General Public License.  As a special exception to the GNU General
3499 dnl Public License, this file may be distributed as part of a program
3500 dnl that contains a configuration script generated by Autoconf, under
3501 dnl the same distribution terms as the rest of that program.
3502
3503 AC_DEFUN([gl_FUNC_SIG2STR],
3504 [
3505   AC_REPLACE_FUNCS(sig2str)
3506   if test $ac_cv_func_sig2str = no; then
3507     gl_PREREQ_SIG2STR
3508   fi
3509 ])
3510
3511 # Prerequisites of lib/sig2str.c.
3512 AC_DEFUN([gl_PREREQ_SIG2STR], [
3513   :
3514 ])
3515
3516
3517 # stpcpy.m4 serial 1
3518 dnl Copyright (C) 2002 Free Software Foundation, Inc.
3519 dnl This file is free software, distributed under the terms of the GNU
3520 dnl General Public License.  As a special exception to the GNU General
3521 dnl Public License, this file may be distributed as part of a program
3522 dnl that contains a configuration script generated by Autoconf, under
3523 dnl the same distribution terms as the rest of that program.
3524
3525 AC_DEFUN([gl_FUNC_STPCPY],
3526 [
3527   dnl Persuade glibc <string.h> to declare stpcpy().
3528   AC_REQUIRE([AC_GNU_SOURCE])
3529
3530   AC_REPLACE_FUNCS(stpcpy)
3531   if test $ac_cv_func_stpcpy = no; then
3532     gl_PREREQ_STPCPY
3533   fi
3534 ])
3535
3536 # Prerequisites of lib/stpcpy.c.
3537 AC_DEFUN([gl_PREREQ_STPCPY], [
3538   :
3539 ])
3540
3541
3542 # strcspn.m4 serial 2
3543 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
3544 dnl This file is free software, distributed under the terms of the GNU
3545 dnl General Public License.  As a special exception to the GNU General
3546 dnl Public License, this file may be distributed as part of a program
3547 dnl that contains a configuration script generated by Autoconf, under
3548 dnl the same distribution terms as the rest of that program.
3549
3550 AC_DEFUN([gl_FUNC_STRCSPN],
3551 [
3552   AC_REPLACE_FUNCS(strcspn)
3553   if test $ac_cv_func_strcspn = no; then
3554     gl_PREREQ_STRCSPN
3555   fi
3556 ])
3557
3558 # Prerequisites of lib/strcspn.c.
3559 AC_DEFUN([gl_PREREQ_STRCSPN], [:])
3560
3561 # strdup.m4 serial 2
3562 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
3563 dnl This file is free software, distributed under the terms of the GNU
3564 dnl General Public License.  As a special exception to the GNU General
3565 dnl Public License, this file may be distributed as part of a program
3566 dnl that contains a configuration script generated by Autoconf, under
3567 dnl the same distribution terms as the rest of that program.
3568
3569 AC_DEFUN([gl_FUNC_STRDUP],
3570 [
3571   AC_REPLACE_FUNCS(strdup)
3572   if test $ac_cv_func_strdup = no; then
3573     gl_PREREQ_STRDUP
3574   fi
3575 ])
3576
3577 # Prerequisites of lib/strdup.c.
3578 AC_DEFUN([gl_PREREQ_STRDUP], [
3579   :
3580 ])
3581
3582
3583 # strndup.m4 serial 2
3584 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
3585 dnl This file is free software, distributed under the terms of the GNU
3586 dnl General Public License.  As a special exception to the GNU General
3587 dnl Public License, this file may be distributed as part of a program
3588 dnl that contains a configuration script generated by Autoconf, under
3589 dnl the same distribution terms as the rest of that program.
3590
3591 AC_DEFUN([gl_FUNC_STRNDUP],
3592 [
3593   dnl Persuade glibc <string.h> to declare strndup().
3594   AC_REQUIRE([AC_GNU_SOURCE])
3595
3596   AC_REPLACE_FUNCS(strndup)
3597   if test $ac_cv_func_strndup = no; then
3598     gl_PREREQ_STRNDUP
3599   fi
3600 ])
3601
3602 # Prerequisites of lib/strndup.c.
3603 AC_DEFUN([gl_PREREQ_STRNDUP], [
3604   AC_CHECK_DECLS(strnlen)
3605 ])
3606
3607
3608 # strnlen.m4 serial 3
3609 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
3610 dnl This file is free software, distributed under the terms of the GNU
3611 dnl General Public License.  As a special exception to the GNU General
3612 dnl Public License, this file may be distributed as part of a program
3613 dnl that contains a configuration script generated by Autoconf, under
3614 dnl the same distribution terms as the rest of that program.
3615
3616 AC_DEFUN([gl_FUNC_STRNLEN],
3617 [
3618   dnl Persuade glibc <string.h> to declare strnlen().
3619   AC_REQUIRE([AC_GNU_SOURCE])
3620
3621   AC_FUNC_STRNLEN
3622   if test $ac_cv_func_strnlen_working = no; then
3623     # This is necessary because automake-1.6.1 doens't understand
3624     # that the above use of AC_FUNC_STRNLEN means we may have to use
3625     # lib/strnlen.c.
3626     #AC_LIBOBJ(strnlen)
3627     AC_DEFINE(strnlen, rpl_strnlen,
3628       [Define to rpl_strnlen if the replacement function should be used.])
3629     gl_PREREQ_STRNLEN
3630   fi
3631 ])
3632
3633 # Prerequisites of lib/strnlen.c.
3634 AC_DEFUN([gl_PREREQ_STRNLEN], [:])
3635
3636 # strpbrk.m4 serial 2
3637 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
3638 dnl This file is free software, distributed under the terms of the GNU
3639 dnl General Public License.  As a special exception to the GNU General
3640 dnl Public License, this file may be distributed as part of a program
3641 dnl that contains a configuration script generated by Autoconf, under
3642 dnl the same distribution terms as the rest of that program.
3643
3644 AC_DEFUN([gl_FUNC_STRPBRK],
3645 [
3646   AC_REPLACE_FUNCS(strpbrk)
3647   if test $ac_cv_func_strpbrk = no; then
3648     gl_PREREQ_STRPBRK
3649   fi
3650 ])
3651
3652 # Prerequisites of lib/strpbrk.c.
3653 AC_DEFUN([gl_PREREQ_STRPBRK], [:])
3654
3655 # strstr.m4 serial 2
3656 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
3657 dnl This file is free software, distributed under the terms of the GNU
3658 dnl General Public License.  As a special exception to the GNU General
3659 dnl Public License, this file may be distributed as part of a program
3660 dnl that contains a configuration script generated by Autoconf, under
3661 dnl the same distribution terms as the rest of that program.
3662
3663 AC_DEFUN([gl_FUNC_STRSTR],
3664 [
3665   AC_REPLACE_FUNCS(strstr)
3666   if test $ac_cv_func_strstr = no; then
3667     gl_PREREQ_STRSTR
3668   fi
3669 ])
3670
3671 # Prerequisites of lib/strstr.c.
3672 AC_DEFUN([gl_PREREQ_STRSTR], [:])
3673
3674 # strtod.m4 serial 3
3675 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
3676 dnl This file is free software, distributed under the terms of the GNU
3677 dnl General Public License.  As a special exception to the GNU General
3678 dnl Public License, this file may be distributed as part of a program
3679 dnl that contains a configuration script generated by Autoconf, under
3680 dnl the same distribution terms as the rest of that program.
3681
3682 AC_DEFUN([gl_FUNC_STRTOD],
3683 [
3684   AC_REQUIRE([AC_FUNC_STRTOD])
3685   if test $ac_cv_func_strtod = no; then
3686     AC_DEFINE(strtod, rpl_strtod,
3687       [Define to rpl_strtod if the replacement function should be used.])
3688     gl_PREREQ_STRTOD
3689   fi
3690 ])
3691
3692 # Prerequisites of lib/strtod.c.
3693 # The need for pow() is already handled by AC_FUNC_STRTOD.
3694 AC_DEFUN([gl_PREREQ_STRTOD], [
3695   AC_REQUIRE([AC_HEADER_STDC])
3696   AC_CHECK_FUNCS_ONCE(isascii)
3697 ])
3698
3699 # strtoimax.m4 serial 3
3700 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
3701 dnl This file is free software, distributed under the terms of the GNU
3702 dnl General Public License.  As a special exception to the GNU General
3703 dnl Public License, this file may be distributed as part of a program
3704 dnl that contains a configuration script generated by Autoconf, under
3705 dnl the same distribution terms as the rest of that program.
3706
3707 AC_DEFUN([gl_FUNC_STRTOIMAX],
3708 [
3709   dnl Work around a bug of AC_EGREP_CPP in autoconf-2.57.
3710   AC_REQUIRE([AC_PROG_CPP])
3711   AC_REQUIRE([AC_PROG_EGREP])
3712
3713   AC_CACHE_CHECK([whether <inttypes.h> defines strtoimax as a macro],
3714     jm_cv_func_strtoimax_macro,
3715     [AC_EGREP_CPP([inttypes_h_defines_strtoimax], [#include <inttypes.h>
3716 #ifdef strtoimax
3717  inttypes_h_defines_strtoimax
3718 #endif],
3719        jm_cv_func_strtoimax_macro=yes,
3720        jm_cv_func_strtoimax_macro=no)])
3721
3722   if test "$jm_cv_func_strtoimax_macro" != yes; then
3723     AC_REPLACE_FUNCS(strtoimax)
3724     if test $ac_cv_func_strtoimax = no; then
3725       gl_PREREQ_STRTOIMAX
3726     fi
3727   fi
3728 ])
3729
3730 # Prerequisites of lib/strtoimax.c.
3731 AC_DEFUN([gl_PREREQ_STRTOIMAX], [
3732   jm_AC_TYPE_INTMAX_T
3733   AC_CHECK_DECLS(strtoll)
3734   AC_REQUIRE([jm_AC_TYPE_LONG_LONG])
3735 ])
3736
3737 # intmax_t.m4 serial 2
3738 dnl Copyright (C) 1997-2003 Free Software Foundation, Inc.
3739 dnl This file is free software, distributed under the terms of the GNU
3740 dnl General Public License.  As a special exception to the GNU General
3741 dnl Public License, this file may be distributed as part of a program
3742 dnl that contains a configuration script generated by Autoconf, under
3743 dnl the same distribution terms as the rest of that program.
3744
3745 dnl From Paul Eggert.
3746
3747 AC_PREREQ(2.13)
3748
3749 # Define intmax_t to 'long' or 'long long'
3750 # if it is not already defined in <stdint.h> or <inttypes.h>.
3751
3752 AC_DEFUN([jm_AC_TYPE_INTMAX_T],
3753 [
3754   dnl For simplicity, we assume that a header file defines 'intmax_t' if and
3755   dnl only if it defines 'uintmax_t'.
3756   AC_REQUIRE([jm_AC_HEADER_INTTYPES_H])
3757   AC_REQUIRE([jm_AC_HEADER_STDINT_H])
3758   if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then
3759     AC_REQUIRE([jm_AC_TYPE_LONG_LONG])
3760     test $ac_cv_type_long_long = yes \
3761       && ac_type='long long' \
3762       || ac_type='long'
3763     AC_DEFINE_UNQUOTED(intmax_t, $ac_type,
3764      [Define to long or long long if <inttypes.h> and <stdint.h> don't define.])
3765   else
3766     AC_DEFINE(HAVE_INTMAX_T, 1,
3767       [Define if you have the 'intmax_t' type in <stdint.h> or <inttypes.h>.])
3768   fi
3769 ])
3770
3771 dnl An alternative would be to explicitly test for 'intmax_t'.
3772
3773 AC_DEFUN([gt_AC_TYPE_INTMAX_T],
3774 [
3775   AC_REQUIRE([jm_AC_HEADER_INTTYPES_H])
3776   AC_REQUIRE([jm_AC_HEADER_STDINT_H])
3777   AC_CACHE_CHECK(for intmax_t, gt_cv_c_intmax_t,
3778     [AC_TRY_COMPILE([
3779 #include <stddef.h>
3780 #include <stdlib.h>
3781 #if HAVE_STDINT_H_WITH_UINTMAX
3782 #include <stdint.h>
3783 #endif
3784 #if HAVE_INTTYPES_H_WITH_UINTMAX
3785 #include <inttypes.h>
3786 #endif
3787 ], [intmax_t x = -1;], gt_cv_c_intmax_t=yes, gt_cv_c_intmax_t=no)])
3788   if test $gt_cv_c_intmax_t = yes; then
3789     AC_DEFINE(HAVE_INTMAX_T, 1,
3790       [Define if you have the 'intmax_t' type in <stdint.h> or <inttypes.h>.])
3791   else
3792     AC_REQUIRE([jm_AC_TYPE_LONG_LONG])
3793     test $ac_cv_type_long_long = yes \
3794       && ac_type='long long' \
3795       || ac_type='long'
3796     AC_DEFINE_UNQUOTED(intmax_t, $ac_type,
3797      [Define to long or long long if <stdint.h> and <inttypes.h> don't define.])
3798   fi
3799 ])
3800
3801 # longlong.m4 serial 4
3802 dnl Copyright (C) 1999-2003 Free Software Foundation, Inc.
3803 dnl This file is free software, distributed under the terms of the GNU
3804 dnl General Public License.  As a special exception to the GNU General
3805 dnl Public License, this file may be distributed as part of a program
3806 dnl that contains a configuration script generated by Autoconf, under
3807 dnl the same distribution terms as the rest of that program.
3808
3809 dnl From Paul Eggert.
3810
3811 # Define HAVE_LONG_LONG if 'long long' works.
3812
3813 AC_DEFUN([jm_AC_TYPE_LONG_LONG],
3814 [
3815   AC_CACHE_CHECK([for long long], ac_cv_type_long_long,
3816   [AC_TRY_LINK([long long ll = 1LL; int i = 63;],
3817     [long long llmax = (long long) -1;
3818      return ll << i | ll >> i | llmax / ll | llmax % ll;],
3819     ac_cv_type_long_long=yes,
3820     ac_cv_type_long_long=no)])
3821   if test $ac_cv_type_long_long = yes; then
3822     AC_DEFINE(HAVE_LONG_LONG, 1,
3823       [Define if you have the 'long long' type.])
3824   fi
3825 ])
3826
3827 # strtoll.m4 serial 1
3828 dnl Copyright (C) 2002 Free Software Foundation, Inc.
3829 dnl This file is free software, distributed under the terms of the GNU
3830 dnl General Public License.  As a special exception to the GNU General
3831 dnl Public License, this file may be distributed as part of a program
3832 dnl that contains a configuration script generated by Autoconf, under
3833 dnl the same distribution terms as the rest of that program.
3834
3835 AC_DEFUN([gl_FUNC_STRTOLL],
3836 [
3837   dnl We don't need (and can't compile) the replacement strtoll
3838   dnl unless the type 'long long' exists.
3839   AC_REQUIRE([jm_AC_TYPE_LONG_LONG])
3840   if test "$ac_cv_type_long_long" = yes; then
3841     AC_REPLACE_FUNCS(strtoll)
3842     if test $ac_cv_func_strtoll = no; then
3843       gl_PREREQ_STRTOLL
3844     fi
3845   fi
3846 ])
3847
3848 # Prerequisites of lib/strtoll.c.
3849 AC_DEFUN([gl_PREREQ_STRTOLL], [
3850   :
3851 ])
3852
3853
3854 # strtol.m4 serial 2
3855 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
3856 dnl This file is free software, distributed under the terms of the GNU
3857 dnl General Public License.  As a special exception to the GNU General
3858 dnl Public License, this file may be distributed as part of a program
3859 dnl that contains a configuration script generated by Autoconf, under
3860 dnl the same distribution terms as the rest of that program.
3861
3862 AC_DEFUN([gl_FUNC_STRTOL],
3863 [
3864   AC_REPLACE_FUNCS(strtol)
3865   if test $ac_cv_func_strtol = no; then
3866     gl_PREREQ_STRTOL
3867   fi
3868 ])
3869
3870 # Prerequisites of lib/strtol.c.
3871 AC_DEFUN([gl_PREREQ_STRTOL], [
3872   AC_REQUIRE([AC_HEADER_STDC])
3873   AC_CHECK_FUNCS_ONCE(isascii)
3874 ])
3875
3876 # strtoull.m4 serial 1
3877 dnl Copyright (C) 2002 Free Software Foundation, Inc.
3878 dnl This file is free software, distributed under the terms of the GNU
3879 dnl General Public License.  As a special exception to the GNU General
3880 dnl Public License, this file may be distributed as part of a program
3881 dnl that contains a configuration script generated by Autoconf, under
3882 dnl the same distribution terms as the rest of that program.
3883
3884 AC_DEFUN([gl_FUNC_STRTOULL],
3885 [
3886   dnl We don't need (and can't compile) the replacement strtoull
3887   dnl unless the type 'unsigned long long' exists.
3888   AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG])
3889   if test "$ac_cv_type_unsigned_long_long" = yes; then
3890     AC_REPLACE_FUNCS(strtoull)
3891     if test $ac_cv_func_strtoull = no; then
3892       gl_PREREQ_STRTOULL
3893     fi
3894   fi
3895 ])
3896
3897 # Prerequisites of lib/strtoull.c.
3898 AC_DEFUN([gl_PREREQ_STRTOULL], [
3899   :
3900 ])
3901
3902
3903 # strtoul.m4 serial 1
3904 dnl Copyright (C) 2002 Free Software Foundation, Inc.
3905 dnl This file is free software, distributed under the terms of the GNU
3906 dnl General Public License.  As a special exception to the GNU General
3907 dnl Public License, this file may be distributed as part of a program
3908 dnl that contains a configuration script generated by Autoconf, under
3909 dnl the same distribution terms as the rest of that program.
3910
3911 AC_DEFUN([gl_FUNC_STRTOUL],
3912 [
3913   AC_REPLACE_FUNCS(strtoul)
3914   if test $ac_cv_func_strtoul = no; then
3915     gl_PREREQ_STRTOUL
3916   fi
3917 ])
3918
3919 # Prerequisites of lib/strtoul.c.
3920 AC_DEFUN([gl_PREREQ_STRTOUL], [
3921   gl_PREREQ_STRTOL
3922 ])
3923
3924 # strtoumax.m4 serial 3
3925 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
3926 dnl This file is free software, distributed under the terms of the GNU
3927 dnl General Public License.  As a special exception to the GNU General
3928 dnl Public License, this file may be distributed as part of a program
3929 dnl that contains a configuration script generated by Autoconf, under
3930 dnl the same distribution terms as the rest of that program.
3931
3932 AC_DEFUN([gl_FUNC_STRTOUMAX],
3933 [
3934   dnl Work around a bug of AC_EGREP_CPP in autoconf-2.57.
3935   AC_REQUIRE([AC_PROG_CPP])
3936   AC_REQUIRE([AC_PROG_EGREP])
3937
3938   AC_CACHE_CHECK([whether <inttypes.h> defines strtoumax as a macro],
3939     jm_cv_func_strtoumax_macro,
3940     [AC_EGREP_CPP([inttypes_h_defines_strtoumax], [#include <inttypes.h>
3941 #ifdef strtoumax
3942  inttypes_h_defines_strtoumax
3943 #endif],
3944        jm_cv_func_strtoumax_macro=yes,
3945        jm_cv_func_strtoumax_macro=no)])
3946
3947   if test "$jm_cv_func_strtoumax_macro" != yes; then
3948     AC_REPLACE_FUNCS(strtoumax)
3949     if test $ac_cv_func_strtoumax = no; then
3950       gl_PREREQ_STRTOUMAX
3951     fi
3952   fi
3953 ])
3954
3955 # Prerequisites of lib/strtoumax.c.
3956 AC_DEFUN([gl_PREREQ_STRTOUMAX], [
3957   jm_AC_TYPE_UINTMAX_T
3958   AC_CHECK_DECLS(strtoull)
3959   AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG])
3960 ])
3961
3962 # strverscmp.m4 serial 1
3963 dnl Copyright (C) 2002 Free Software Foundation, Inc.
3964 dnl This file is free software, distributed under the terms of the GNU
3965 dnl General Public License.  As a special exception to the GNU General
3966 dnl Public License, this file may be distributed as part of a program
3967 dnl that contains a configuration script generated by Autoconf, under
3968 dnl the same distribution terms as the rest of that program.
3969
3970 AC_DEFUN([gl_FUNC_STRVERSCMP],
3971 [
3972   dnl Persuade glibc <string.h> to declare strverscmp().
3973   AC_REQUIRE([AC_GNU_SOURCE])
3974
3975   AC_REPLACE_FUNCS(strverscmp)
3976   if test $ac_cv_func_strverscmp = no; then
3977     gl_PREREQ_STRVERSCMP
3978   fi
3979 ])
3980
3981 # Prerequisites of lib/strverscmp.c.
3982 AC_DEFUN([gl_PREREQ_STRVERSCMP], [
3983   :
3984 ])
3985
3986
3987 # vasnprintf.m4 serial 2
3988 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
3989 dnl This file is free software, distributed under the terms of the GNU
3990 dnl General Public License.  As a special exception to the GNU General
3991 dnl Public License, this file may be distributed as part of a program
3992 dnl that contains a configuration script generated by Autoconf, under
3993 dnl the same distribution terms as the rest of that program.
3994
3995 AC_DEFUN([gl_FUNC_VASNPRINTF],
3996 [
3997   AC_REPLACE_FUNCS(vasnprintf)
3998   if test $ac_cv_func_vasnprintf = no; then
3999     AC_LIBOBJ(printf-args)
4000     AC_LIBOBJ(printf-parse)
4001     AC_LIBOBJ(asnprintf)
4002     gl_PREREQ_PRINTF_ARGS
4003     gl_PREREQ_PRINTF_PARSE
4004     gl_PREREQ_VASNPRINTF
4005     gl_PREREQ_ASNPRINTF
4006   fi
4007 ])
4008
4009 # Prequisites of lib/printf-args.h, lib/printf-args.c.
4010 AC_DEFUN([gl_PREREQ_PRINTF_ARGS],
4011 [
4012   AC_REQUIRE([bh_C_SIGNED])
4013   AC_REQUIRE([jm_AC_TYPE_LONG_LONG])
4014   AC_REQUIRE([gt_TYPE_LONGDOUBLE])
4015   AC_REQUIRE([gt_TYPE_WCHAR_T])
4016   AC_REQUIRE([gt_TYPE_WINT_T])
4017 ])
4018
4019 # Prequisites of lib/printf-parse.h, lib/printf-parse.c.
4020 AC_DEFUN([gl_PREREQ_PRINTF_PARSE],
4021 [
4022   AC_REQUIRE([jm_AC_TYPE_LONG_LONG])
4023   AC_REQUIRE([gt_TYPE_LONGDOUBLE])
4024   AC_REQUIRE([gt_TYPE_WCHAR_T])
4025   AC_REQUIRE([gt_TYPE_WINT_T])
4026   AC_REQUIRE([AC_TYPE_SIZE_T])
4027   AC_CHECK_TYPES(ptrdiff_t)
4028   AC_REQUIRE([gt_AC_TYPE_INTMAX_T])
4029 ])
4030
4031 # Prerequisites of lib/vasnprintf.c.
4032 AC_DEFUN([gl_PREREQ_VASNPRINTF],
4033 [
4034   AC_REQUIRE([AC_FUNC_ALLOCA])
4035   AC_REQUIRE([jm_AC_TYPE_LONG_LONG])
4036   AC_REQUIRE([gt_TYPE_LONGDOUBLE])
4037   AC_REQUIRE([gt_TYPE_WCHAR_T])
4038   AC_REQUIRE([gt_TYPE_WINT_T])
4039   AC_CHECK_FUNCS(snprintf wcslen)
4040 ])
4041
4042 # Prerequisites of lib/asnprintf.c.
4043 AC_DEFUN([gl_PREREQ_ASNPRINTF],
4044 [
4045 ])
4046
4047 # signed.m4 serial 1 (gettext-0.10.40)
4048 dnl Copyright (C) 2001-2002 Free Software Foundation, Inc.
4049 dnl This file is free software, distributed under the terms of the GNU
4050 dnl General Public License.  As a special exception to the GNU General
4051 dnl Public License, this file may be distributed as part of a program
4052 dnl that contains a configuration script generated by Autoconf, under
4053 dnl the same distribution terms as the rest of that program.
4054
4055 dnl From Bruno Haible.
4056
4057 AC_DEFUN([bh_C_SIGNED],
4058 [
4059   AC_CACHE_CHECK([for signed], bh_cv_c_signed,
4060    [AC_TRY_COMPILE(, [signed char x;], bh_cv_c_signed=yes, bh_cv_c_signed=no)])
4061   if test $bh_cv_c_signed = no; then
4062     AC_DEFINE(signed, ,
4063               [Define to empty if the C compiler doesn't support this keyword.])
4064   fi
4065 ])
4066
4067 # longdouble.m4 serial 1 (gettext-0.12)
4068 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
4069 dnl This file is free software, distributed under the terms of the GNU
4070 dnl General Public License.  As a special exception to the GNU General
4071 dnl Public License, this file may be distributed as part of a program
4072 dnl that contains a configuration script generated by Autoconf, under
4073 dnl the same distribution terms as the rest of that program.
4074
4075 dnl From Bruno Haible.
4076 dnl Test whether the compiler supports the 'long double' type.
4077 dnl Prerequisite: AC_PROG_CC
4078
4079 AC_DEFUN([gt_TYPE_LONGDOUBLE],
4080 [
4081   AC_CACHE_CHECK([for long double], gt_cv_c_long_double,
4082     [if test "$GCC" = yes; then
4083        gt_cv_c_long_double=yes
4084      else
4085        AC_TRY_COMPILE([
4086          /* The Stardent Vistra knows sizeof(long double), but does not support it.  */
4087          long double foo = 0.0;
4088          /* On Ultrix 4.3 cc, long double is 4 and double is 8.  */
4089          int array [2*(sizeof(long double) >= sizeof(double)) - 1];
4090          ], ,
4091          gt_cv_c_long_double=yes, gt_cv_c_long_double=no)
4092      fi])
4093   if test $gt_cv_c_long_double = yes; then
4094     AC_DEFINE(HAVE_LONG_DOUBLE, 1, [Define if you have the 'long double' type.])
4095   fi
4096 ])
4097
4098 # wchar_t.m4 serial 1 (gettext-0.12)
4099 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
4100 dnl This file is free software, distributed under the terms of the GNU
4101 dnl General Public License.  As a special exception to the GNU General
4102 dnl Public License, this file may be distributed as part of a program
4103 dnl that contains a configuration script generated by Autoconf, under
4104 dnl the same distribution terms as the rest of that program.
4105
4106 dnl From Bruno Haible.
4107 dnl Test whether <stddef.h> has the 'wchar_t' type.
4108 dnl Prerequisite: AC_PROG_CC
4109
4110 AC_DEFUN([gt_TYPE_WCHAR_T],
4111 [
4112   AC_CACHE_CHECK([for wchar_t], gt_cv_c_wchar_t,
4113     [AC_TRY_COMPILE([#include <stddef.h>
4114        wchar_t foo = (wchar_t)'\0';], ,
4115        gt_cv_c_wchar_t=yes, gt_cv_c_wchar_t=no)])
4116   if test $gt_cv_c_wchar_t = yes; then
4117     AC_DEFINE(HAVE_WCHAR_T, 1, [Define if you have the 'wchar_t' type.])
4118   fi
4119 ])
4120
4121 # wint_t.m4 serial 1 (gettext-0.12)
4122 dnl Copyright (C) 2003 Free Software Foundation, Inc.
4123 dnl This file is free software, distributed under the terms of the GNU
4124 dnl General Public License.  As a special exception to the GNU General
4125 dnl Public License, this file may be distributed as part of a program
4126 dnl that contains a configuration script generated by Autoconf, under
4127 dnl the same distribution terms as the rest of that program.
4128
4129 dnl From Bruno Haible.
4130 dnl Test whether <wchar.h> has the 'wint_t' type.
4131 dnl Prerequisite: AC_PROG_CC
4132
4133 AC_DEFUN([gt_TYPE_WINT_T],
4134 [
4135   AC_CACHE_CHECK([for wint_t], gt_cv_c_wint_t,
4136     [AC_TRY_COMPILE([#include <wchar.h>
4137        wint_t foo = (wchar_t)'\0';], ,
4138        gt_cv_c_wint_t=yes, gt_cv_c_wint_t=no)])
4139   if test $gt_cv_c_wint_t = yes; then
4140     AC_DEFINE(HAVE_WINT_T, 1, [Define if you have the 'wint_t' type.])
4141   fi
4142 ])
4143
4144 # vasprintf.m4 serial 1
4145 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
4146 dnl This file is free software, distributed under the terms of the GNU
4147 dnl General Public License.  As a special exception to the GNU General
4148 dnl Public License, this file may be distributed as part of a program
4149 dnl that contains a configuration script generated by Autoconf, under
4150 dnl the same distribution terms as the rest of that program.
4151
4152 AC_DEFUN([gl_FUNC_VASPRINTF],
4153 [
4154   AC_REPLACE_FUNCS(vasprintf)
4155   if test $ac_cv_func_vasprintf = no; then
4156     AC_LIBOBJ(asprintf)
4157     gl_PREREQ_VASPRINTF
4158     gl_PREREQ_ASPRINTF
4159   fi
4160 ])
4161
4162 # Prerequisites of lib/vasprintf.c.
4163 AC_DEFUN([gl_PREREQ_VASPRINTF],
4164 [
4165 ])
4166
4167 # Prerequisites of lib/asprintf.c.
4168 AC_DEFUN([gl_PREREQ_ASPRINTF],
4169 [
4170 ])
4171
4172 # getdate.m4 serial 2
4173 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4174 dnl This file is free software, distributed under the terms of the GNU
4175 dnl General Public License.  As a special exception to the GNU General
4176 dnl Public License, this file may be distributed as part of a program
4177 dnl that contains a configuration script generated by Autoconf, under
4178 dnl the same distribution terms as the rest of that program.
4179
4180 AC_DEFUN([gl_GETDATE],
4181 [
4182   dnl Prerequisites of lib/getdate.h.
4183   AC_HEADER_TIME
4184   AC_CHECK_HEADERS_ONCE(sys/time.h)
4185
4186   dnl Prerequisites of lib/getdate.y.
4187   AC_REQUIRE([jm_BISON])
4188   AC_REQUIRE([AC_FUNC_ALLOCA])
4189   AC_REQUIRE([AC_HEADER_STDC])
4190   AC_CHECK_FUNCS_ONCE(isascii)
4191   AC_STRUCT_TIMEZONE
4192   AC_REQUIRE([gl_TM_GMTOFF])
4193 ])
4194
4195 #serial 2
4196
4197 AC_DEFUN([jm_BISON],
4198 [
4199   # getdate.y works with bison only.
4200   : ${YACC='bison -y'}
4201   AC_SUBST(YACC)
4202 ])
4203
4204 # tm_gmtoff.m4 serial 1
4205 dnl Copyright (C) 2002 Free Software Foundation, Inc.
4206 dnl This file is free software, distributed under the terms of the GNU
4207 dnl General Public License.  As a special exception to the GNU General
4208 dnl Public License, this file may be distributed as part of a program
4209 dnl that contains a configuration script generated by Autoconf, under
4210 dnl the same distribution terms as the rest of that program.
4211
4212 AC_DEFUN([gl_TM_GMTOFF],
4213 [
4214  AC_CHECK_MEMBER([struct tm.tm_gmtoff],
4215                  [AC_DEFINE(HAVE_TM_GMTOFF, 1,
4216                             [Define if struct tm has the tm_gmtoff member.])],
4217                  ,
4218                  [#include <time.h>])
4219 ])
4220
4221 # getopt.m4 serial 2
4222 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4223 dnl This file is free software, distributed under the terms of the GNU
4224 dnl General Public License.  As a special exception to the GNU General
4225 dnl Public License, this file may be distributed as part of a program
4226 dnl that contains a configuration script generated by Autoconf, under
4227 dnl the same distribution terms as the rest of that program.
4228
4229 AC_DEFUN([gl_GETOPT],
4230 [
4231   dnl Prerequisites of lib/getopt.c.
4232   :
4233 ])
4234
4235 # getpagesize.m4 serial 1
4236 dnl Copyright (C) 2002 Free Software Foundation, Inc.
4237 dnl This file is free software, distributed under the terms of the GNU
4238 dnl General Public License.  As a special exception to the GNU General
4239 dnl Public License, this file may be distributed as part of a program
4240 dnl that contains a configuration script generated by Autoconf, under
4241 dnl the same distribution terms as the rest of that program.
4242
4243 AC_DEFUN([gl_GETPAGESIZE],
4244 [
4245   dnl Prerequisites of lib/getpagesize.h.
4246   AC_CHECK_HEADERS_ONCE(unistd.h)
4247   AC_CHECK_HEADERS(OS.h)
4248   AC_CHECK_FUNCS(getpagesize)
4249 ])
4250
4251 # getugroups.m4 serial 2
4252 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4253 dnl This file is free software, distributed under the terms of the GNU
4254 dnl General Public License.  As a special exception to the GNU General
4255 dnl Public License, this file may be distributed as part of a program
4256 dnl that contains a configuration script generated by Autoconf, under
4257 dnl the same distribution terms as the rest of that program.
4258
4259 AC_DEFUN([gl_GETUGROUPS],
4260 [
4261   dnl Prerequisites of lib/getugroups.c.
4262   AC_CHECK_HEADERS_ONCE(unistd.h)
4263   AC_TYPE_GETGROUPS
4264 ])
4265
4266 # hard-locale.m4 serial 2
4267 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4268 dnl This file is free software, distributed under the terms of the GNU
4269 dnl General Public License.  As a special exception to the GNU General
4270 dnl Public License, this file may be distributed as part of a program
4271 dnl that contains a configuration script generated by Autoconf, under
4272 dnl the same distribution terms as the rest of that program.
4273
4274 AC_DEFUN([gl_HARD_LOCALE],
4275 [
4276   dnl Prerequisites of lib/hard-locale.c.
4277   AC_CHECK_HEADERS_ONCE(locale.h)
4278   AC_CHECK_FUNCS_ONCE(setlocale)
4279 ])
4280
4281 # hash.m4 serial 3
4282 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4283 dnl This file is free software, distributed under the terms of the GNU
4284 dnl General Public License.  As a special exception to the GNU General
4285 dnl Public License, this file may be distributed as part of a program
4286 dnl that contains a configuration script generated by Autoconf, under
4287 dnl the same distribution terms as the rest of that program.
4288
4289 AC_DEFUN([gl_HASH],
4290 [
4291   dnl Prerequisites of lib/hash.c.
4292   AC_REQUIRE([AM_STDBOOL_H])
4293 ])
4294
4295 # human.m4 serial 4
4296 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4297 dnl This file is free software, distributed under the terms of the GNU
4298 dnl General Public License.  As a special exception to the GNU General
4299 dnl Public License, this file may be distributed as part of a program
4300 dnl that contains a configuration script generated by Autoconf, under
4301 dnl the same distribution terms as the rest of that program.
4302
4303 AC_DEFUN([gl_HUMAN],
4304 [
4305   dnl Prerequisites of lib/human.h.
4306   AC_REQUIRE([AM_STDBOOL_H])
4307   AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])
4308
4309   dnl Prerequisites of lib/human.c.
4310   AC_CHECK_HEADERS_ONCE(locale.h)
4311   AC_CHECK_FUNCS_ONCE(localeconv)
4312 ])
4313
4314 # idcache.m4 serial 2
4315 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4316 dnl This file is free software, distributed under the terms of the GNU
4317 dnl General Public License.  As a special exception to the GNU General
4318 dnl Public License, this file may be distributed as part of a program
4319 dnl that contains a configuration script generated by Autoconf, under
4320 dnl the same distribution terms as the rest of that program.
4321
4322 AC_DEFUN([gl_IDCACHE],
4323 [
4324   dnl Prerequisites of lib/idcache.c.
4325   AC_CHECK_HEADERS_ONCE(unistd.h)
4326 ])
4327
4328 # long-options.m4 serial 2
4329 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4330 dnl This file is free software, distributed under the terms of the GNU
4331 dnl General Public License.  As a special exception to the GNU General
4332 dnl Public License, this file may be distributed as part of a program
4333 dnl that contains a configuration script generated by Autoconf, under
4334 dnl the same distribution terms as the rest of that program.
4335
4336 AC_DEFUN([gl_LONG_OPTIONS],
4337 [
4338   dnl Prerequisites of lib/long-options.c.
4339   :
4340 ])
4341
4342 # makepath.m4 serial 2
4343 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4344 dnl This file is free software, distributed under the terms of the GNU
4345 dnl General Public License.  As a special exception to the GNU General
4346 dnl Public License, this file may be distributed as part of a program
4347 dnl that contains a configuration script generated by Autoconf, under
4348 dnl the same distribution terms as the rest of that program.
4349
4350 AC_DEFUN([gl_MAKEPATH],
4351 [
4352   dnl Prerequisites of lib/makepath.c.
4353   AC_REQUIRE([AC_FUNC_ALLOCA])
4354   AC_CHECK_HEADERS_ONCE(unistd.h)
4355   AC_REQUIRE([AC_HEADER_STAT])
4356   AC_REQUIRE([jm_AFS])
4357 ])
4358
4359 #serial 5
4360
4361 AC_DEFUN([jm_AFS],
4362   [
4363     AC_MSG_CHECKING(for AFS)
4364     if test -d /afs; then
4365       AC_DEFINE(AFS, 1, [Define if you have the Andrew File System.])
4366       ac_result=yes
4367     else
4368       ac_result=no
4369     fi
4370     AC_MSG_RESULT($ac_result)
4371   ])
4372
4373 #serial 9
4374
4375 dnl autoconf tests required for use of mbswidth.c
4376 dnl From Bruno Haible.
4377
4378 AC_DEFUN([gl_MBSWIDTH],
4379 [
4380   AC_CHECK_HEADERS_ONCE(wchar.h wctype.h)
4381   AC_CHECK_FUNCS_ONCE(isascii iswprint mbsinit)
4382   AC_CHECK_FUNCS(iswcntrl wcwidth)
4383   jm_FUNC_MBRTOWC
4384
4385   AC_CACHE_CHECK([whether wcwidth is declared], ac_cv_have_decl_wcwidth,
4386     [AC_TRY_COMPILE([
4387 /* AIX 3.2.5 declares wcwidth in <string.h>. */
4388 #if HAVE_STRING_H
4389 # include <string.h>
4390 #endif
4391 #if HAVE_WCHAR_H
4392 # include <wchar.h>
4393 #endif
4394 ], [
4395 #ifndef wcwidth
4396   char *p = (char *) wcwidth;
4397 #endif
4398 ], ac_cv_have_decl_wcwidth=yes, ac_cv_have_decl_wcwidth=no)])
4399   if test $ac_cv_have_decl_wcwidth = yes; then
4400     ac_val=1
4401   else
4402     ac_val=0
4403   fi
4404   AC_DEFINE_UNQUOTED(HAVE_DECL_WCWIDTH, $ac_val,
4405     [Define to 1 if you have the declaration of wcwidth(), and to 0 otherwise.])
4406
4407   AC_TYPE_MBSTATE_T
4408 ])
4409
4410 # mbrtowc.m4 serial 5
4411 dnl Copyright (C) 2001-2002 Free Software Foundation, Inc.
4412 dnl This file is free software, distributed under the terms of the GNU
4413 dnl General Public License.  As a special exception to the GNU General
4414 dnl Public License, this file may be distributed as part of a program
4415 dnl that contains a configuration script generated by Autoconf, under
4416 dnl the same distribution terms as the rest of that program.
4417
4418 dnl From Paul Eggert
4419
4420 dnl This file can be removed, and jm_FUNC_MBRTOWC replaced with
4421 dnl AC_FUNC_MBRTOWC, when autoconf 2.57 can be assumed everywhere.
4422
4423 AC_DEFUN([jm_FUNC_MBRTOWC],
4424 [
4425   AC_CACHE_CHECK([whether mbrtowc and mbstate_t are properly declared],
4426     jm_cv_func_mbrtowc,
4427     [AC_TRY_LINK(
4428        [#include <wchar.h>],
4429        [mbstate_t state; return ! (sizeof state && mbrtowc);],
4430        jm_cv_func_mbrtowc=yes,
4431        jm_cv_func_mbrtowc=no)])
4432   if test $jm_cv_func_mbrtowc = yes; then
4433     AC_DEFINE(HAVE_MBRTOWC, 1,
4434       [Define to 1 if mbrtowc and mbstate_t are properly declared.])
4435   fi
4436 ])
4437
4438 # md5.m4 serial 3
4439 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
4440 dnl This file is free software, distributed under the terms of the GNU
4441 dnl General Public License.  As a special exception to the GNU General
4442 dnl Public License, this file may be distributed as part of a program
4443 dnl that contains a configuration script generated by Autoconf, under
4444 dnl the same distribution terms as the rest of that program.
4445
4446 AC_DEFUN([gl_MD5],
4447 [
4448   dnl Prerequisites of lib/md5.h.
4449   AC_REQUIRE([AC_C_INLINE])
4450
4451   dnl No prerequisites of lib/md5.c.
4452 ])
4453
4454 # memcoll.m4 serial 3
4455 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4456 dnl This file is free software, distributed under the terms of the GNU
4457 dnl General Public License.  As a special exception to the GNU General
4458 dnl Public License, this file may be distributed as part of a program
4459 dnl that contains a configuration script generated by Autoconf, under
4460 dnl the same distribution terms as the rest of that program.
4461
4462 AC_DEFUN([gl_MEMCOLL],
4463 [
4464   dnl Prerequisites of lib/memcoll.c.
4465   AC_REQUIRE([AC_FUNC_MEMCMP])
4466   AC_FUNC_STRCOLL
4467 ])
4468
4469 # modechange.m4 serial 2
4470 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4471 dnl This file is free software, distributed under the terms of the GNU
4472 dnl General Public License.  As a special exception to the GNU General
4473 dnl Public License, this file may be distributed as part of a program
4474 dnl that contains a configuration script generated by Autoconf, under
4475 dnl the same distribution terms as the rest of that program.
4476
4477 AC_DEFUN([gl_MODECHANGE],
4478 [
4479   AC_REQUIRE([AC_HEADER_STAT])
4480 ])
4481
4482 # mountlist.m4 serial 2
4483 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4484 dnl This file is free software, distributed under the terms of the GNU
4485 dnl General Public License.  As a special exception to the GNU General
4486 dnl Public License, this file may be distributed as part of a program
4487 dnl that contains a configuration script generated by Autoconf, under
4488 dnl the same distribution terms as the rest of that program.
4489
4490 AC_DEFUN([gl_MOUNTLIST],
4491 [
4492   jm_LIST_MOUNTED_FILESYSTEMS([gl_cv_list_mounted_fs=yes],
4493                               [gl_cv_list_mounted_fs=no])
4494   if test $gl_cv_list_mounted_fs = yes; then
4495     AC_LIBOBJ(mountlist)
4496     gl_PREREQ_MOUNTLIST_EXTRA
4497   fi
4498 ])
4499
4500 # Prerequisites of lib/mountlist.c not done by jm_LIST_MOUNTED_FILESYSTEMS.
4501 AC_DEFUN([gl_PREREQ_MOUNTLIST_EXTRA],
4502 [
4503   dnl Note jm_LIST_MOUNTED_FILESYSTEMS checks for mntent.h, not sys/mntent.h.
4504   AC_CHECK_HEADERS_ONCE(fcntl.h unistd.h)
4505   AC_CHECK_HEADERS(sys/mntent.h)
4506   jm_FSTYPENAME
4507 ])
4508
4509 #serial 13
4510
4511 dnl From Jim Meyering.
4512 dnl
4513 dnl This is not pretty.  I've just taken the autoconf code and wrapped
4514 dnl it in an AC_DEFUN.
4515 dnl
4516
4517 # jm_LIST_MOUNTED_FILESYSTEMS([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
4518 AC_DEFUN([jm_LIST_MOUNTED_FILESYSTEMS],
4519   [
4520 AC_CHECK_FUNCS(listmntent getmntinfo)
4521 AC_CHECK_HEADERS_ONCE(sys/param.h)
4522 AC_CHECK_HEADERS(mntent.h sys/ucred.h sys/mount.h sys/fs_types.h)
4523     getfsstat_includes="\
4524 $ac_includes_default
4525 #if HAVE_SYS_PARAM_H
4526 # include <sys/param.h> /* needed by powerpc-apple-darwin1.3.7 */
4527 #endif
4528 #if HAVE_SYS_UCRED_H
4529 # include <sys/ucred.h> /* needed by powerpc-apple-darwin1.3.7 */
4530 #endif
4531 #if HAVE_SYS_MOUNT_H
4532 # include <sys/mount.h>
4533 #endif
4534 #if HAVE_SYS_FS_TYPES_H
4535 # include <sys/fs_types.h> /* needed by powerpc-apple-darwin1.3.7 */
4536 #endif
4537 "
4538 AC_CHECK_MEMBERS([struct fsstat.f_fstypename],,,[$getfsstat_includes])
4539
4540 # Determine how to get the list of mounted filesystems.
4541 ac_list_mounted_fs=
4542
4543 # If the getmntent function is available but not in the standard library,
4544 # make sure LIBS contains -lsun (on Irix4) or -lseq (on PTX).
4545 AC_FUNC_GETMNTENT
4546
4547 # This test must precede the ones for getmntent because Unicos-9 is
4548 # reported to have the getmntent function, but its support is incompatible
4549 # with other getmntent implementations.
4550
4551 # NOTE: Normally, I wouldn't use a check for system type as I've done for
4552 # `CRAY' below since that goes against the whole autoconf philosophy.  But
4553 # I think there is too great a chance that some non-Cray system has a
4554 # function named listmntent to risk the false positive.
4555
4556 if test -z "$ac_list_mounted_fs"; then
4557   # Cray UNICOS 9
4558   AC_MSG_CHECKING([for listmntent of Cray/Unicos-9])
4559   AC_CACHE_VAL(fu_cv_sys_mounted_cray_listmntent,
4560     [fu_cv_sys_mounted_cray_listmntent=no
4561       AC_EGREP_CPP(yes,
4562         [#ifdef _CRAY
4563 yes
4564 #endif
4565         ], [test $ac_cv_func_listmntent = yes \
4566             && fu_cv_sys_mounted_cray_listmntent=yes]
4567       )
4568     ]
4569   )
4570   AC_MSG_RESULT($fu_cv_sys_mounted_cray_listmntent)
4571   if test $fu_cv_sys_mounted_cray_listmntent = yes; then
4572     ac_list_mounted_fs=found
4573     AC_DEFINE(MOUNTED_LISTMNTENT, 1,
4574       [Define if there is a function named listmntent that can be used to
4575        list all mounted filesystems. (UNICOS)])
4576   fi
4577 fi
4578
4579 if test -z "$ac_list_mounted_fs"; then
4580   # AIX.
4581   AC_MSG_CHECKING([for mntctl function and struct vmount])
4582   AC_CACHE_VAL(fu_cv_sys_mounted_vmount,
4583   [AC_TRY_CPP([#include <fshelp.h>],
4584     fu_cv_sys_mounted_vmount=yes,
4585     fu_cv_sys_mounted_vmount=no)])
4586   AC_MSG_RESULT($fu_cv_sys_mounted_vmount)
4587   if test $fu_cv_sys_mounted_vmount = yes; then
4588     ac_list_mounted_fs=found
4589     AC_DEFINE(MOUNTED_VMOUNT, 1,
4590         [Define if there is a function named mntctl that can be used to read
4591          the list of mounted filesystems, and there is a system header file
4592          that declares `struct vmount.'  (AIX)])
4593   fi
4594 fi
4595
4596 if test $ac_cv_func_getmntent = yes; then
4597
4598   # This system has the getmntent function.
4599   # Determine whether it's the one-argument variant or the two-argument one.
4600
4601   if test -z "$ac_list_mounted_fs"; then
4602     # 4.3BSD, SunOS, HP-UX, Dynix, Irix
4603     AC_MSG_CHECKING([for one-argument getmntent function])
4604     AC_CACHE_VAL(fu_cv_sys_mounted_getmntent1,
4605                  [AC_TRY_COMPILE([
4606 /* SunOS 4.1.x /usr/include/mntent.h needs this for FILE */
4607 #include <stdio.h>
4608
4609 #include <mntent.h>
4610 #if !defined MOUNTED
4611 # if defined _PATH_MOUNTED      /* GNU libc  */
4612 #  define MOUNTED _PATH_MOUNTED
4613 # endif
4614 # if defined MNT_MNTTAB /* HP-UX.  */
4615 #  define MOUNTED MNT_MNTTAB
4616 # endif
4617 # if defined MNTTABNAME /* Dynix.  */
4618 #  define MOUNTED MNTTABNAME
4619 # endif
4620 #endif
4621 ],
4622                     [ struct mntent *mnt = 0; char *table = MOUNTED; ],
4623                     fu_cv_sys_mounted_getmntent1=yes,
4624                     fu_cv_sys_mounted_getmntent1=no)])
4625     AC_MSG_RESULT($fu_cv_sys_mounted_getmntent1)
4626     if test $fu_cv_sys_mounted_getmntent1 = yes; then
4627       ac_list_mounted_fs=found
4628       AC_DEFINE(MOUNTED_GETMNTENT1, 1,
4629         [Define if there is a function named getmntent for reading the list
4630          of mounted filesystems, and that function takes a single argument.
4631          (4.3BSD, SunOS, HP-UX, Dynix, Irix)])
4632     fi
4633   fi
4634
4635   if test -z "$ac_list_mounted_fs"; then
4636     # SVR4
4637     AC_MSG_CHECKING([for two-argument getmntent function])
4638     AC_CACHE_VAL(fu_cv_sys_mounted_getmntent2,
4639     [AC_EGREP_HEADER(getmntent, sys/mnttab.h,
4640       fu_cv_sys_mounted_getmntent2=yes,
4641       fu_cv_sys_mounted_getmntent2=no)])
4642     AC_MSG_RESULT($fu_cv_sys_mounted_getmntent2)
4643     if test $fu_cv_sys_mounted_getmntent2 = yes; then
4644       ac_list_mounted_fs=found
4645       AC_DEFINE(MOUNTED_GETMNTENT2, 1,
4646         [Define if there is a function named getmntent for reading the list of
4647          mounted filesystems, and that function takes two arguments.  (SVR4)])
4648     fi
4649   fi
4650
4651 fi
4652
4653 if test -z "$ac_list_mounted_fs"; then
4654   # DEC Alpha running OSF/1, and Apple Darwin 1.3.
4655   # powerpc-apple-darwin1.3.7 needs sys/param.h sys/ucred.h sys/fs_types.h
4656
4657   AC_MSG_CHECKING([for getfsstat function])
4658   AC_CACHE_VAL(fu_cv_sys_mounted_getfsstat,
4659   [AC_TRY_LINK([
4660 #include <sys/types.h>
4661 #if HAVE_STRUCT_FSSTAT_F_FSTYPENAME
4662 # define FS_TYPE(Ent) ((Ent).f_fstypename)
4663 #else
4664 # define FS_TYPE(Ent) mnt_names[(Ent).f_type]
4665 #endif
4666 ]$getfsstat_includes
4667 ,
4668   [struct statfs *stats;
4669    int numsys = getfsstat ((struct statfs *)0, 0L, MNT_WAIT);
4670    char *t = FS_TYPE (*stats); ],
4671     fu_cv_sys_mounted_getfsstat=yes,
4672     fu_cv_sys_mounted_getfsstat=no)])
4673   AC_MSG_RESULT($fu_cv_sys_mounted_getfsstat)
4674   if test $fu_cv_sys_mounted_getfsstat = yes; then
4675     ac_list_mounted_fs=found
4676     AC_DEFINE(MOUNTED_GETFSSTAT, 1,
4677               [Define if there is a function named getfsstat for reading the
4678                list of mounted filesystems.  (DEC Alpha running OSF/1)])
4679   fi
4680 fi
4681
4682 if test -z "$ac_list_mounted_fs"; then
4683   # SVR3
4684   AC_MSG_CHECKING([for FIXME existence of three headers])
4685   AC_CACHE_VAL(fu_cv_sys_mounted_fread_fstyp,
4686     [AC_TRY_CPP([
4687 #include <sys/statfs.h>
4688 #include <sys/fstyp.h>
4689 #include <mnttab.h>],
4690                 fu_cv_sys_mounted_fread_fstyp=yes,
4691                 fu_cv_sys_mounted_fread_fstyp=no)])
4692   AC_MSG_RESULT($fu_cv_sys_mounted_fread_fstyp)
4693   if test $fu_cv_sys_mounted_fread_fstyp = yes; then
4694     ac_list_mounted_fs=found
4695     AC_DEFINE(MOUNTED_FREAD_FSTYP, 1,
4696       [Define if (like SVR2) there is no specific function for reading the
4697        list of mounted filesystems, and your system has these header files:
4698        <sys/fstyp.h> and <sys/statfs.h>.  (SVR3)])
4699   fi
4700 fi
4701
4702 if test -z "$ac_list_mounted_fs"; then
4703   # 4.4BSD and DEC OSF/1.
4704   AC_MSG_CHECKING([for getmntinfo function])
4705   AC_CACHE_VAL(fu_cv_sys_mounted_getmntinfo,
4706     [
4707       test "$ac_cv_func_getmntinfo" = yes \
4708           && fu_cv_sys_mounted_getmntinfo=yes \
4709           || fu_cv_sys_mounted_getmntinfo=no
4710     ])
4711   AC_MSG_RESULT($fu_cv_sys_mounted_getmntinfo)
4712   if test $fu_cv_sys_mounted_getmntinfo = yes; then
4713     ac_list_mounted_fs=found
4714     AC_DEFINE(MOUNTED_GETMNTINFO, 1,
4715               [Define if there is a function named getmntinfo for reading the
4716                list of mounted filesystems.  (4.4BSD, Darwin)])
4717   fi
4718 fi
4719
4720 if test -z "$ac_list_mounted_fs"; then
4721   # Ultrix
4722   AC_MSG_CHECKING([for getmnt function])
4723   AC_CACHE_VAL(fu_cv_sys_mounted_getmnt,
4724     [AC_TRY_CPP([
4725 #include <sys/fs_types.h>
4726 #include <sys/mount.h>],
4727                 fu_cv_sys_mounted_getmnt=yes,
4728                 fu_cv_sys_mounted_getmnt=no)])
4729   AC_MSG_RESULT($fu_cv_sys_mounted_getmnt)
4730   if test $fu_cv_sys_mounted_getmnt = yes; then
4731     ac_list_mounted_fs=found
4732     AC_DEFINE(MOUNTED_GETMNT, 1,
4733       [Define if there is a function named getmnt for reading the list of
4734        mounted filesystems.  (Ultrix)])
4735   fi
4736 fi
4737
4738 if test -z "$ac_list_mounted_fs"; then
4739   # BeOS
4740   AC_CHECK_FUNCS(next_dev fs_stat_dev)
4741   AC_CHECK_HEADERS(fs_info.h)
4742   AC_MSG_CHECKING([for BEOS mounted file system support functions])
4743   if test $ac_cv_header_fs_info_h = yes \
4744       && test $ac_cv_func_next_dev = yes \
4745         && test $ac_cv_func_fs_stat_dev = yes; then
4746     fu_result=yes
4747   else
4748     fu_result=no
4749   fi
4750   AC_MSG_RESULT($fu_result)
4751   if test $fu_result = yes; then
4752     ac_list_mounted_fs=found
4753     AC_DEFINE(MOUNTED_FS_STAT_DEV, 1,
4754       [Define if there are functions named next_dev and fs_stat_dev for
4755        reading the list of mounted filesystems.  (BeOS)])
4756   fi
4757 fi
4758
4759 if test -z "$ac_list_mounted_fs"; then
4760   # SVR2
4761   AC_MSG_CHECKING([whether it is possible to resort to fread on /etc/mnttab])
4762   AC_CACHE_VAL(fu_cv_sys_mounted_fread,
4763     [AC_TRY_CPP([#include <mnttab.h>],
4764                 fu_cv_sys_mounted_fread=yes,
4765                 fu_cv_sys_mounted_fread=no)])
4766   AC_MSG_RESULT($fu_cv_sys_mounted_fread)
4767   if test $fu_cv_sys_mounted_fread = yes; then
4768     ac_list_mounted_fs=found
4769     AC_DEFINE(MOUNTED_FREAD, 1,
4770               [Define if there is no specific function for reading the list of
4771                mounted filesystems.  fread will be used to read /etc/mnttab.
4772                (SVR2) ])
4773   fi
4774 fi
4775
4776 if test -z "$ac_list_mounted_fs"; then
4777   AC_MSG_ERROR([could not determine how to read list of mounted filesystems])
4778   # FIXME -- no need to abort building the whole package
4779   # Can't build mountlist.c or anything that needs its functions
4780 fi
4781
4782 AS_IF([test $ac_list_mounted_fs = found], [$1], [$2])
4783
4784   ])
4785
4786 #serial 3
4787
4788 dnl From Jim Meyering.
4789 dnl
4790 dnl See if struct statfs has the f_fstypename member.
4791 dnl If so, define HAVE_F_FSTYPENAME_IN_STATFS.
4792 dnl
4793
4794 AC_DEFUN([jm_FSTYPENAME],
4795   [
4796     AC_CACHE_CHECK([for f_fstypename in struct statfs],
4797                    fu_cv_sys_f_fstypename_in_statfs,
4798       [
4799         AC_TRY_COMPILE(
4800           [
4801 #include <sys/param.h>
4802 #include <sys/types.h>
4803 #include <sys/mount.h>
4804           ],
4805           [struct statfs s; int i = sizeof s.f_fstypename;],
4806           fu_cv_sys_f_fstypename_in_statfs=yes,
4807           fu_cv_sys_f_fstypename_in_statfs=no
4808         )
4809       ]
4810     )
4811
4812     if test $fu_cv_sys_f_fstypename_in_statfs = yes; then
4813       AC_DEFINE(HAVE_F_FSTYPENAME_IN_STATFS, 1,
4814                 [Define if struct statfs has the f_fstypename member.])
4815     fi
4816   ]
4817 )
4818
4819 # obstack.m4 serial 2
4820 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4821 dnl This file is free software, distributed under the terms of the GNU
4822 dnl General Public License.  As a special exception to the GNU General
4823 dnl Public License, this file may be distributed as part of a program
4824 dnl that contains a configuration script generated by Autoconf, under
4825 dnl the same distribution terms as the rest of that program.
4826
4827 AC_DEFUN([gl_OBSTACK],
4828 [
4829   AC_FUNC_OBSTACK
4830   dnl Note: AC_FUNC_OBSTACK does AC_LIBSOURCES([obstack.h, obstack.c]).
4831   if test $ac_cv_func_obstack = no; then
4832     gl_PREREQ_OBSTACK
4833   fi
4834 ])
4835
4836 # Prerequisites of lib/obstack.c.
4837 AC_DEFUN([gl_PREREQ_OBSTACK], [:])
4838
4839 # pathmax.m4 serial 2
4840 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4841 dnl This file is free software, distributed under the terms of the GNU
4842 dnl General Public License.  As a special exception to the GNU General
4843 dnl Public License, this file may be distributed as part of a program
4844 dnl that contains a configuration script generated by Autoconf, under
4845 dnl the same distribution terms as the rest of that program.
4846
4847 AC_DEFUN([gl_PATHMAX],
4848 [
4849   dnl Prerequisites of lib/pathmax.h.
4850   AC_CHECK_HEADERS_ONCE(sys/param.h unistd.h)
4851 ])
4852
4853 # path-concat.m4 serial 2
4854 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4855 dnl This file is free software, distributed under the terms of the GNU
4856 dnl General Public License.  As a special exception to the GNU General
4857 dnl Public License, this file may be distributed as part of a program
4858 dnl that contains a configuration script generated by Autoconf, under
4859 dnl the same distribution terms as the rest of that program.
4860
4861 AC_DEFUN([gl_PATH_CONCAT],
4862 [
4863   dnl Prerequisites of lib/path-concat.c.
4864   AC_REQUIRE([jm_AC_DOS])
4865   AC_CHECK_HEADERS_ONCE(unistd.h)
4866   AC_CHECK_FUNCS_ONCE(mempcpy)
4867 ])
4868
4869 # physmem.m4 serial 2
4870 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4871 dnl This file is free software, distributed under the terms of the GNU
4872 dnl General Public License.  As a special exception to the GNU General
4873 dnl Public License, this file may be distributed as part of a program
4874 dnl that contains a configuration script generated by Autoconf, under
4875 dnl the same distribution terms as the rest of that program.
4876
4877 # Check for the external symbol, _system_configuration,
4878 # a struct with member `physmem'.
4879 AC_DEFUN([gl_SYS__SYSTEM_CONFIGURATION],
4880   [AC_CACHE_CHECK(for external symbol _system_configuration,
4881                   gl_cv_var__system_configuration,
4882     [AC_LINK_IFELSE([AC_LANG_PROGRAM(
4883                       [[#include <sys/systemcfg.h>
4884                       ]],
4885                       [double x = _system_configuration.physmem;])],
4886       [gl_cv_var__system_configuration=yes],
4887       [gl_cv_var__system_configuration=no])])
4888
4889     if test $gl_cv_var__system_configuration = yes; then
4890       AC_DEFINE(HAVE__SYSTEM_CONFIGURATION, 1,
4891                 [Define to 1 if you have the external variable,
4892                 _system_configuration with a member named physmem.])
4893     fi
4894   ]
4895 )
4896
4897 AC_DEFUN([gl_PHYSMEM],
4898 [
4899   # Prerequisites of lib/physmem.c.
4900   AC_CHECK_HEADERS_ONCE(unistd.h)
4901   AC_CHECK_HEADERS([sys/pstat.h sys/sysmp.h sys/sysinfo.h \
4902     machine/hal_sysinfo.h sys/table.h sys/param.h sys/sysctl.h \
4903     sys/systemcfg.h],,, [AC_INCLUDES_DEFAULT])
4904
4905   AC_CHECK_FUNCS(pstat_getstatic pstat_getdynamic sysmp getsysinfo sysctl table)
4906   AC_REQUIRE([gl_SYS__SYSTEM_CONFIGURATION])
4907 ])
4908
4909 # posixtm.m4 serial 2
4910 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4911 dnl This file is free software, distributed under the terms of the GNU
4912 dnl General Public License.  As a special exception to the GNU General
4913 dnl Public License, this file may be distributed as part of a program
4914 dnl that contains a configuration script generated by Autoconf, under
4915 dnl the same distribution terms as the rest of that program.
4916
4917 AC_DEFUN([gl_POSIXTM],
4918 [
4919   dnl Prerequisites of lib/posixtm.c.
4920   AC_STRUCT_TM
4921 ])
4922
4923 # posixver.m4 serial 2
4924 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4925 dnl This file is free software, distributed under the terms of the GNU
4926 dnl General Public License.  As a special exception to the GNU General
4927 dnl Public License, this file may be distributed as part of a program
4928 dnl that contains a configuration script generated by Autoconf, under
4929 dnl the same distribution terms as the rest of that program.
4930
4931 AC_DEFUN([gl_POSIXVER],
4932 [
4933   AC_CHECK_HEADERS_ONCE(unistd.h)
4934 ])
4935
4936 # quotearg.m4 serial 1
4937 dnl Copyright (C) 2002 Free Software Foundation, Inc.
4938 dnl This file is free software, distributed under the terms of the GNU
4939 dnl General Public License.  As a special exception to the GNU General
4940 dnl Public License, this file may be distributed as part of a program
4941 dnl that contains a configuration script generated by Autoconf, under
4942 dnl the same distribution terms as the rest of that program.
4943
4944 AC_DEFUN([gl_QUOTEARG],
4945 [
4946   dnl Prerequisites of lib/quotearg.c.
4947   AC_CHECK_HEADERS_ONCE(wchar.h wctype.h)
4948   AC_CHECK_FUNCS_ONCE(iswprint mbsinit)
4949   AC_TYPE_MBSTATE_T
4950   jm_FUNC_MBRTOWC
4951 ])
4952
4953 # quote.m4 serial 2
4954 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4955 dnl This file is free software, distributed under the terms of the GNU
4956 dnl General Public License.  As a special exception to the GNU General
4957 dnl Public License, this file may be distributed as part of a program
4958 dnl that contains a configuration script generated by Autoconf, under
4959 dnl the same distribution terms as the rest of that program.
4960
4961 AC_DEFUN([gl_QUOTE],
4962 [
4963   dnl Prerequisites of lib/quote.c.
4964   dnl (none)
4965 ])
4966
4967 # readtokens.m4 serial 2
4968 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4969 dnl This file is free software, distributed under the terms of the GNU
4970 dnl General Public License.  As a special exception to the GNU General
4971 dnl Public License, this file may be distributed as part of a program
4972 dnl that contains a configuration script generated by Autoconf, under
4973 dnl the same distribution terms as the rest of that program.
4974
4975 AC_DEFUN([gl_READTOKENS],
4976 [
4977   dnl Prerequisites of lib/readtokens.c.
4978   :
4979 ])
4980
4981 # readutmp.m4 serial 3
4982 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4983 dnl This file is free software, distributed under the terms of the GNU
4984 dnl General Public License.  As a special exception to the GNU General
4985 dnl Public License, this file may be distributed as part of a program
4986 dnl that contains a configuration script generated by Autoconf, under
4987 dnl the same distribution terms as the rest of that program.
4988
4989 AC_DEFUN([gl_READUTMP],
4990 [
4991   dnl Prerequisites of lib/readutmp.h.
4992   AC_CHECK_HEADERS_ONCE(sys/param.h)
4993   AC_CHECK_HEADERS(utmp.h utmpx.h)
4994   AC_CHECK_FUNCS(utmpname utmpxname)
4995   AC_CHECK_DECLS(getutent,,,[
4996 #ifdef HAVE_UTMP_H
4997 # include <utmp.h>
4998 #endif
4999 ])
5000   if test $ac_cv_header_utmp_h = yes || test $ac_cv_header_utmpx_h = yes; then
5001     utmp_includes="\
5002 $ac_includes_default
5003 #ifdef HAVE_UTMPX_H
5004 # include <utmpx.h>
5005 #endif
5006 #ifdef HAVE_UTMP_H
5007 # include <utmp.h>
5008 #endif
5009 "
5010     AC_CHECK_MEMBERS([struct utmpx.ut_user],,,[$utmp_includes])
5011     AC_CHECK_MEMBERS([struct utmp.ut_user],,,[$utmp_includes])
5012     AC_CHECK_MEMBERS([struct utmpx.ut_name],,,[$utmp_includes])
5013     AC_CHECK_MEMBERS([struct utmp.ut_name],,,[$utmp_includes])
5014     AC_CHECK_MEMBERS([struct utmpx.ut_type],,,[$utmp_includes])
5015     AC_CHECK_MEMBERS([struct utmp.ut_type],,,[$utmp_includes])
5016     AC_CHECK_MEMBERS([struct utmpx.ut_pid],,,[$utmp_includes])
5017     AC_CHECK_MEMBERS([struct utmp.ut_pid],,,[$utmp_includes])
5018     AC_CHECK_MEMBERS([struct utmpx.ut_id],,,[$utmp_includes])
5019     AC_CHECK_MEMBERS([struct utmp.ut_id],,,[$utmp_includes])
5020     AC_CHECK_MEMBERS([struct utmpx.ut_exit],,,[$utmp_includes])
5021     AC_CHECK_MEMBERS([struct utmp.ut_exit],,,[$utmp_includes])
5022
5023     AC_CHECK_MEMBERS([struct utmpx.ut_exit.ut_exit],,,[$utmp_includes])
5024     AC_CHECK_MEMBERS([struct utmp.ut_exit.ut_exit],,,[$utmp_includes])
5025     AC_CHECK_MEMBERS([struct utmpx.ut_exit.e_exit],,,[$utmp_includes])
5026     AC_CHECK_MEMBERS([struct utmp.ut_exit.e_exit],,,[$utmp_includes])
5027
5028     AC_CHECK_MEMBERS([struct utmpx.ut_exit.ut_termination],,,[$utmp_includes])
5029     AC_CHECK_MEMBERS([struct utmp.ut_exit.ut_termination],,,[$utmp_includes])
5030     AC_CHECK_MEMBERS([struct utmpx.ut_exit.e_termination],,,[$utmp_includes])
5031     AC_CHECK_MEMBERS([struct utmp.ut_exit.e_termination],,,[$utmp_includes])
5032
5033     AC_LIBOBJ(readutmp)
5034     gl_PREREQ_READUTMP
5035   fi
5036 ])
5037
5038 # Prerequisites of lib/readutmp.c.
5039 AC_DEFUN([gl_PREREQ_READUTMP],
5040 [
5041   :
5042 ])
5043
5044 #serial 20
5045
5046 dnl Initially derived from code in GNU grep.
5047 dnl Mostly written by Jim Meyering.
5048
5049 AC_DEFUN([gl_REGEX],
5050 [
5051   jm_INCLUDED_REGEX([lib/regex.c])
5052 ])
5053
5054 dnl Usage: jm_INCLUDED_REGEX([lib/regex.c])
5055 dnl
5056 AC_DEFUN([jm_INCLUDED_REGEX],
5057   [
5058     dnl Even packages that don't use regex.c can use this macro.
5059     dnl Of course, for them it doesn't do anything.
5060
5061     # Assume we'll default to using the included regex.c.
5062     ac_use_included_regex=yes
5063
5064     # However, if the system regex support is good enough that it passes the
5065     # the following run test, then default to *not* using the included regex.c.
5066     # If cross compiling, assume the test would fail and use the included
5067     # regex.c.  The first failing regular expression is from `Spencer ere
5068     # test #75' in grep-2.3.
5069     AC_CACHE_CHECK([for working re_compile_pattern],
5070                    jm_cv_func_working_re_compile_pattern,
5071       AC_TRY_RUN(
5072 [#include <stdio.h>
5073 #include <string.h>
5074 #include <regex.h>
5075           int
5076           main ()
5077           {
5078             static struct re_pattern_buffer regex;
5079             const char *s;
5080             struct re_registers regs;
5081             re_set_syntax (RE_SYNTAX_POSIX_EGREP);
5082             memset (&regex, 0, sizeof (regex));
5083             [s = re_compile_pattern ("a[[:@:>@:]]b\n", 9, &regex);]
5084             /* This should fail with _Invalid character class name_ error.  */
5085             if (!s)
5086               exit (1);
5087
5088             /* This should succeed, but doesn't for e.g. glibc-2.1.3.  */
5089             memset (&regex, 0, sizeof (regex));
5090             s = re_compile_pattern ("{1", 2, &regex);
5091
5092             if (s)
5093               exit (1);
5094
5095             /* The following example is derived from a problem report
5096                against gawk from Jorge Stolfi <stolfi@ic.unicamp.br>.  */
5097             memset (&regex, 0, sizeof (regex));
5098             s = re_compile_pattern ("[[an\371]]*n", 7, &regex);
5099             if (s)
5100               exit (1);
5101
5102             /* This should match, but doesn't for e.g. glibc-2.2.1.  */
5103             if (re_match (&regex, "an", 2, 0, &regs) != 2)
5104               exit (1);
5105
5106             memset (&regex, 0, sizeof (regex));
5107             s = re_compile_pattern ("x", 1, &regex);
5108             if (s)
5109               exit (1);
5110
5111             /* The version of regex.c in e.g. GNU libc-2.2.93 didn't
5112                work with a negative RANGE argument.  */
5113             if (re_search (&regex, "wxy", 3, 2, -2, &regs) != 1)
5114               exit (1);
5115
5116             exit (0);
5117           }
5118         ],
5119                jm_cv_func_working_re_compile_pattern=yes,
5120                jm_cv_func_working_re_compile_pattern=no,
5121                dnl When crosscompiling, assume it's broken.
5122                jm_cv_func_working_re_compile_pattern=no))
5123     if test $jm_cv_func_working_re_compile_pattern = yes; then
5124       ac_use_included_regex=no
5125     fi
5126
5127     test -n "$1" || AC_MSG_ERROR([missing argument])
5128     m4_syscmd([test -f $1])
5129     ifelse(m4_sysval, 0,
5130       [
5131         AC_ARG_WITH(included-regex,
5132         [  --without-included-regex don't compile regex; this is the default on
5133                           systems with version 2 of the GNU C library
5134                           (use with caution on other system)],
5135                     jm_with_regex=$withval,
5136                     jm_with_regex=$ac_use_included_regex)
5137         if test "$jm_with_regex" = yes; then
5138           AC_LIBOBJ(regex)
5139           jm_PREREQ_REGEX
5140         fi
5141       ],
5142     )
5143   ]
5144 )
5145
5146 # Prerequisites of lib/regex.c.
5147 AC_DEFUN([jm_PREREQ_REGEX],
5148 [
5149   dnl FIXME: Maybe provide a btowc replacement someday: Solaris 2.5.1 lacks it.
5150   dnl FIXME: Check for wctype and iswctype, and and add -lw if necessary
5151   dnl to get them.
5152
5153   dnl Persuade glibc <string.h> to declare mempcpy().
5154   AC_REQUIRE([AC_GNU_SOURCE])
5155
5156   AC_REQUIRE([gl_C_RESTRICT])
5157   AC_REQUIRE([AC_FUNC_ALLOCA])
5158   AC_REQUIRE([AC_HEADER_STDC])
5159   AC_CHECK_HEADERS_ONCE(wchar.h wctype.h)
5160   AC_CHECK_FUNCS_ONCE(isascii mempcpy)
5161   AC_CHECK_FUNCS(btowc)
5162 ])
5163
5164 #serial 1002
5165 # This macro can be removed once we can rely on Autoconf 2.57a or later,
5166 # since we can then use its AC_C_RESTRICT.
5167
5168 # gl_C_RESTRICT
5169 # --------------
5170 # Determine whether the C/C++ compiler supports the "restrict" keyword
5171 # introduced in ANSI C99, or an equivalent.  Do nothing if the compiler
5172 # accepts it.  Otherwise, if the compiler supports an equivalent,
5173 # define "restrict" to be that.  Here are some variants:
5174 # - GCC supports both __restrict and __restrict__
5175 # - older DEC Alpha C compilers support only __restrict
5176 # - _Restrict is the only spelling accepted by Sun WorkShop 6 update 2 C
5177 # Otherwise, define "restrict" to be empty.
5178 AC_DEFUN([gl_C_RESTRICT],
5179 [AC_CACHE_CHECK([for C/C++ restrict keyword], gl_cv_c_restrict,
5180   [gl_cv_c_restrict=no
5181    # Try the official restrict keyword, then gcc's __restrict, and
5182    # the less common variants.
5183    for ac_kw in restrict __restrict __restrict__ _Restrict; do
5184      AC_COMPILE_IFELSE([AC_LANG_SOURCE(
5185       [float * $ac_kw x;])],
5186       [gl_cv_c_restrict=$ac_kw; break])
5187    done
5188   ])
5189  case $gl_cv_c_restrict in
5190    restrict) ;;
5191    no) AC_DEFINE(restrict,,
5192         [Define to equivalent of C99 restrict keyword, or to nothing if this
5193         is not supported.  Do not define if restrict is supported directly.]) ;;
5194    *)  AC_DEFINE_UNQUOTED(restrict, $gl_cv_c_restrict) ;;
5195  esac
5196 ])
5197
5198 # safe-read.m4 serial 2
5199 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
5200 dnl This file is free software, distributed under the terms of the GNU
5201 dnl General Public License.  As a special exception to the GNU General
5202 dnl Public License, this file may be distributed as part of a program
5203 dnl that contains a configuration script generated by Autoconf, under
5204 dnl the same distribution terms as the rest of that program.
5205
5206 AC_DEFUN([gl_SAFE_READ],
5207 [
5208   gl_PREREQ_SAFE_READ
5209 ])
5210
5211 # Prerequisites of lib/safe-read.c.
5212 AC_DEFUN([gl_PREREQ_SAFE_READ],
5213 [
5214   AC_REQUIRE([gt_TYPE_SSIZE_T])
5215   AC_CHECK_HEADERS_ONCE(unistd.h)
5216 ])
5217
5218 # safe-write.m4 serial 1
5219 dnl Copyright (C) 2002 Free Software Foundation, Inc.
5220 dnl This file is free software, distributed under the terms of the GNU
5221 dnl General Public License.  As a special exception to the GNU General
5222 dnl Public License, this file may be distributed as part of a program
5223 dnl that contains a configuration script generated by Autoconf, under
5224 dnl the same distribution terms as the rest of that program.
5225
5226 AC_DEFUN([gl_SAFE_WRITE],
5227 [
5228   gl_PREREQ_SAFE_WRITE
5229 ])
5230
5231 # Prerequisites of lib/safe-write.c.
5232 AC_DEFUN([gl_PREREQ_SAFE_WRITE],
5233 [
5234   gl_PREREQ_SAFE_READ
5235 ])
5236
5237 # same.m4 serial 2
5238 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
5239 dnl This file is free software, distributed under the terms of the GNU
5240 dnl General Public License.  As a special exception to the GNU General
5241 dnl Public License, this file may be distributed as part of a program
5242 dnl that contains a configuration script generated by Autoconf, under
5243 dnl the same distribution terms as the rest of that program.
5244
5245 AC_DEFUN([gl_SAME],
5246 [
5247   dnl Prerequisites of lib/same.c.
5248   AC_CHECK_HEADERS_ONCE(unistd.h)
5249   AC_CHECK_FUNCS(pathconf)
5250 ])
5251
5252 # savedir.m4 serial 2
5253 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
5254 dnl This file is free software, distributed under the terms of the GNU
5255 dnl General Public License.  As a special exception to the GNU General
5256 dnl Public License, this file may be distributed as part of a program
5257 dnl that contains a configuration script generated by Autoconf, under
5258 dnl the same distribution terms as the rest of that program.
5259
5260 AC_DEFUN([gl_SAVEDIR],
5261 [
5262   dnl Prerequisites of lib/savedir.c.
5263   AC_REQUIRE([AC_HEADER_DIRENT])
5264   AC_REQUIRE([AC_FUNC_CLOSEDIR_VOID])
5265 ])
5266
5267 # save-cwd.m4 serial 2
5268 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
5269 dnl This file is free software, distributed under the terms of the GNU
5270 dnl General Public License.  As a special exception to the GNU General
5271 dnl Public License, this file may be distributed as part of a program
5272 dnl that contains a configuration script generated by Autoconf, under
5273 dnl the same distribution terms as the rest of that program.
5274
5275 AC_DEFUN([gl_SAVE_CWD],
5276 [
5277   dnl Prerequisites for lib/save-cwd.c.
5278   AC_CHECK_HEADERS_ONCE(fcntl.h unistd.h)
5279   AC_CHECK_FUNCS(fchdir)
5280 ])
5281
5282 # settime.m4 serial 1
5283 dnl Copyright (C) 2002 Free Software Foundation, Inc.
5284 dnl This file is free software, distributed under the terms of the GNU
5285 dnl General Public License.  As a special exception to the GNU General
5286 dnl Public License, this file may be distributed as part of a program
5287 dnl that contains a configuration script generated by Autoconf, under
5288 dnl the same distribution terms as the rest of that program.
5289
5290 AC_DEFUN([gl_SETTIME],
5291 [
5292   dnl Prerequisites of lib/settime.c.
5293   # Need clock_settime.
5294   AC_REQUIRE([gl_CLOCK_TIME])
5295 ])
5296
5297 # clock_time.m4 serial 2
5298 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
5299 dnl This file is free software, distributed under the terms of the GNU
5300 dnl General Public License.  As a special exception to the GNU General
5301 dnl Public License, this file may be distributed as part of a program
5302 dnl that contains a configuration script generated by Autoconf, under
5303 dnl the same distribution terms as the rest of that program.
5304
5305 # Check for clock_gettime and clock_settime, and sets LIB_CLOCK_GETTIME.
5306 AC_DEFUN([gl_CLOCK_TIME],
5307 [
5308   # Solaris 2.5.1 needs -lposix4 to get the clock_gettime function.
5309   # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4.
5310
5311   # Save and restore LIBS so e.g., -lrt, isn't added to it.  Otherwise, *all*
5312   # programs in the package would end up linked with that potentially-shared
5313   # library, inducing unnecessary run-time overhead.
5314   fetish_saved_libs=$LIBS
5315     AC_SEARCH_LIBS(clock_gettime, [rt posix4],
5316                    [LIB_CLOCK_GETTIME=$ac_cv_search_clock_gettime])
5317     AC_SUBST(LIB_CLOCK_GETTIME)
5318     AC_CHECK_FUNCS(clock_gettime clock_settime)
5319   LIBS=$fetish_saved_libs
5320 ])
5321
5322 # sha.m4 serial 2
5323 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
5324 dnl This file is free software, distributed under the terms of the GNU
5325 dnl General Public License.  As a special exception to the GNU General
5326 dnl Public License, this file may be distributed as part of a program
5327 dnl that contains a configuration script generated by Autoconf, under
5328 dnl the same distribution terms as the rest of that program.
5329
5330 AC_DEFUN([gl_SHA],
5331 [
5332   dnl Prerequisites of lib/sha.c.
5333   :
5334 ])
5335
5336 # stdio-safer.m4 serial 1
5337 dnl Copyright (C) 2002 Free Software Foundation, Inc.
5338 dnl This file is free software, distributed under the terms of the GNU
5339 dnl General Public License.  As a special exception to the GNU General
5340 dnl Public License, this file may be distributed as part of a program
5341 dnl that contains a configuration script generated by Autoconf, under
5342 dnl the same distribution terms as the rest of that program.
5343
5344 AC_DEFUN([gl_STDIO_SAFER],
5345 [
5346   dnl Prerequisites of lib/fopen-safer.c.
5347   AC_CHECK_HEADERS_ONCE(unistd.h)
5348 ])
5349
5350 # strcase.m4 serial 1
5351 dnl Copyright (C) 2002 Free Software Foundation, Inc.
5352 dnl This file is free software, distributed under the terms of the GNU
5353 dnl General Public License.  As a special exception to the GNU General
5354 dnl Public License, this file may be distributed as part of a program
5355 dnl that contains a configuration script generated by Autoconf, under
5356 dnl the same distribution terms as the rest of that program.
5357
5358 AC_DEFUN([gl_STRCASE],
5359 [
5360   gl_FUNC_STRCASECMP
5361   gl_FUNC_STRNCASECMP
5362 ])
5363
5364 AC_DEFUN([gl_FUNC_STRCASECMP],
5365 [
5366   AC_REPLACE_FUNCS(strcasecmp)
5367   if test $ac_cv_func_strcasecmp = no; then
5368     gl_PREREQ_STRCASECMP
5369   fi
5370 ])
5371
5372 AC_DEFUN([gl_FUNC_STRNCASECMP],
5373 [
5374   AC_REPLACE_FUNCS(strncasecmp)
5375   if test $ac_cv_func_strncasecmp = no; then
5376     gl_PREREQ_STRNCASECMP
5377   fi
5378 ])
5379
5380 # Prerequisites of lib/strcasecmp.c.
5381 AC_DEFUN([gl_PREREQ_STRCASECMP], [
5382   :
5383 ])
5384
5385 # Prerequisites of lib/strncasecmp.c.
5386 AC_DEFUN([gl_PREREQ_STRNCASECMP], [
5387   :
5388 ])
5389
5390 #serial 7
5391
5392 dnl From Jim Meyering
5393
5394 AC_DEFUN([gl_TIMESPEC],
5395 [
5396   dnl Prerequisites of lib/timespec.h.
5397   AC_REQUIRE([AC_HEADER_TIME])
5398   AC_CHECK_HEADERS_ONCE(sys/time.h)
5399   jm_CHECK_TYPE_STRUCT_TIMESPEC
5400   AC_STRUCT_ST_MTIM_NSEC
5401
5402   dnl Persuade glibc <time.h> to declare nanosleep().
5403   AC_REQUIRE([AC_GNU_SOURCE])
5404
5405   AC_CHECK_DECLS(nanosleep, , , [#include <time.h>])
5406 ])
5407
5408 dnl Define HAVE_STRUCT_TIMESPEC if `struct timespec' is declared
5409 dnl in time.h or sys/time.h.
5410
5411 AC_DEFUN([jm_CHECK_TYPE_STRUCT_TIMESPEC],
5412 [
5413   dnl Persuade pedantic Solaris to declare struct timespec.
5414   AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
5415
5416   AC_REQUIRE([AC_HEADER_TIME])
5417   AC_CHECK_HEADERS_ONCE(sys/time.h)
5418   AC_CACHE_CHECK([for struct timespec], fu_cv_sys_struct_timespec,
5419     [AC_TRY_COMPILE(
5420       [
5421 #      if TIME_WITH_SYS_TIME
5422 #       include <sys/time.h>
5423 #       include <time.h>
5424 #      else
5425 #       if HAVE_SYS_TIME_H
5426 #        include <sys/time.h>
5427 #       else
5428 #        include <time.h>
5429 #       endif
5430 #      endif
5431       ],
5432       [static struct timespec x; x.tv_sec = x.tv_nsec;],
5433       fu_cv_sys_struct_timespec=yes,
5434       fu_cv_sys_struct_timespec=no)
5435     ])
5436
5437   if test $fu_cv_sys_struct_timespec = yes; then
5438     AC_DEFINE(HAVE_STRUCT_TIMESPEC, 1,
5439               [Define if struct timespec is declared in <time.h>. ])
5440   fi
5441 ])
5442
5443 #serial 6
5444
5445 dnl From Paul Eggert.
5446
5447 # Define ST_MTIM_NSEC to be the nanoseconds member of struct stat's st_mtim,
5448 # if it exists.
5449
5450 AC_DEFUN([AC_STRUCT_ST_MTIM_NSEC],
5451  [AC_CACHE_CHECK([for nanoseconds member of struct stat.st_mtim],
5452    ac_cv_struct_st_mtim_nsec,
5453    [ac_save_CPPFLAGS="$CPPFLAGS"
5454     ac_cv_struct_st_mtim_nsec=no
5455     # tv_nsec -- the usual case
5456     # _tv_nsec -- Solaris 2.6, if
5457     #   (defined _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED == 1
5458     #    && !defined __EXTENSIONS__)
5459     # st__tim.tv_nsec -- UnixWare 2.1.2
5460     for ac_val in tv_nsec _tv_nsec st__tim.tv_nsec; do
5461       CPPFLAGS="$ac_save_CPPFLAGS -DST_MTIM_NSEC=$ac_val"
5462       AC_TRY_COMPILE([#include <sys/types.h>
5463 #include <sys/stat.h>], [struct stat s; s.st_mtim.ST_MTIM_NSEC;],
5464         [ac_cv_struct_st_mtim_nsec=$ac_val; break])
5465     done
5466     CPPFLAGS="$ac_save_CPPFLAGS"])
5467
5468   if test $ac_cv_struct_st_mtim_nsec != no; then
5469     AC_DEFINE_UNQUOTED(ST_MTIM_NSEC, $ac_cv_struct_st_mtim_nsec,
5470       [Define to be the nanoseconds member of struct stat's st_mtim,
5471        if it exists.])
5472   fi
5473  ]
5474 )
5475
5476 # unicodeio.m4 serial 2
5477 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
5478 dnl This file is free software, distributed under the terms of the GNU
5479 dnl General Public License.  As a special exception to the GNU General
5480 dnl Public License, this file may be distributed as part of a program
5481 dnl that contains a configuration script generated by Autoconf, under
5482 dnl the same distribution terms as the rest of that program.
5483
5484 AC_DEFUN([gl_UNICODEIO],
5485 [
5486   dnl No prerequisites of lib/unicodeio.c.
5487   :
5488 ])
5489
5490 # unistd-safer.m4 serial 1
5491 dnl Copyright (C) 2002 Free Software Foundation, Inc.
5492 dnl This file is free software, distributed under the terms of the GNU
5493 dnl General Public License.  As a special exception to the GNU General
5494 dnl Public License, this file may be distributed as part of a program
5495 dnl that contains a configuration script generated by Autoconf, under
5496 dnl the same distribution terms as the rest of that program.
5497
5498 AC_DEFUN([gl_UNISTD_SAFER],
5499 [
5500   gl_PREREQ_DUP_SAFER
5501 ])
5502
5503 # Prerequisites of lib/dup-safer.c.
5504 AC_DEFUN([gl_PREREQ_DUP_SAFER], [
5505   AC_CHECK_HEADERS_ONCE(fcntl.h unistd.h)
5506 ])
5507
5508 # userspec.m4 serial 3
5509 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
5510 dnl This file is free software, distributed under the terms of the GNU
5511 dnl General Public License.  As a special exception to the GNU General
5512 dnl Public License, this file may be distributed as part of a program
5513 dnl that contains a configuration script generated by Autoconf, under
5514 dnl the same distribution terms as the rest of that program.
5515
5516 AC_DEFUN([gl_USERSPEC],
5517 [
5518   dnl Prerequisites of lib/userspec.c.
5519   AC_REQUIRE([AC_FUNC_ALLOCA])
5520   AC_CHECK_HEADERS_ONCE(sys/param.h unistd.h)
5521 ])
5522
5523 dnl Copyright (C) 2003 Free Software Foundation, Inc.
5524 dnl This file is free software, distributed under the terms of the GNU
5525 dnl General Public License.  As a special exception to the GNU General
5526 dnl Public License, this file may be distributed as part of a program
5527 dnl that contains a configuration script generated by Autoconf, under
5528 dnl the same distribution terms as the rest of that program.
5529
5530 AC_DEFUN([gl_UTIMENS],
5531 [
5532   dnl Prerequisites of lib/utimens.c.
5533   AC_REQUIRE([gl_TIMESPEC])
5534   AC_REQUIRE([gl_FUNC_UTIMES])
5535   AC_REQUIRE([jm_CHECK_TYPE_STRUCT_TIMESPEC])
5536   AC_REQUIRE([jm_CHECK_TYPE_STRUCT_UTIMBUF])
5537 ])
5538
5539 # See if we need to work around bugs in glibc's implementation of
5540 # utimes from 2003-07-12 to 2003-09-17.
5541 # First, there was a bug that would make utimes set mtime
5542 # and atime to zero (1970-01-01) unconditionally.
5543 # Then, there was code to round rather than truncate.
5544 #
5545 # From Jim Meyering, with suggestions from Paul Eggert.
5546
5547 AC_DEFUN([gl_FUNC_UTIMES],
5548 [
5549   AC_CACHE_CHECK([determine whether the utimes function works],
5550                  gl_cv_func_working_utimes,
5551   [
5552   AC_RUN_IFELSE([AC_LANG_SOURCE([[
5553 #include <sys/types.h>
5554 #include <sys/stat.h>
5555 #include <sys/time.h>
5556 #include <unistd.h>
5557 #include <stdlib.h>
5558 #include <stdio.h>
5559 #include <utime.h>
5560
5561 int
5562 main ()
5563 {
5564   static struct timeval timeval[2] = {{9, 10}, {999999, 999999}};
5565   struct stat sbuf;
5566   char const *file = "conftest.utimes";
5567   FILE *f;
5568
5569   exit ( ! ((f = fopen (file, "w"))
5570             && fclose (f) == 0
5571             && utimes (file, timeval) == 0
5572             && lstat (file, &sbuf) == 0
5573             && sbuf.st_atime == timeval[0].tv_sec
5574             && sbuf.st_mtime == timeval[1].tv_sec) );
5575 }
5576   ]])],
5577        [gl_cv_func_working_utimes=yes],
5578        [gl_cv_func_working_utimes=no],
5579        [gl_cv_func_working_utimes=no])])
5580
5581   if test $gl_cv_func_working_utimes = yes; then
5582     AC_DEFINE([HAVE_WORKING_UTIMES], 1, [Define if utimes works properly. ])
5583   fi
5584 ])
5585
5586 # xalloc.m4 serial 6
5587 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
5588 dnl This file is free software, distributed under the terms of the GNU
5589 dnl General Public License.  As a special exception to the GNU General
5590 dnl Public License, this file may be distributed as part of a program
5591 dnl that contains a configuration script generated by Autoconf, under
5592 dnl the same distribution terms as the rest of that program.
5593
5594 AC_DEFUN([gl_XALLOC],
5595 [
5596   gl_PREREQ_XMALLOC
5597   gl_PREREQ_XSTRDUP
5598 ])
5599
5600 # Prerequisites of lib/xmalloc.c.
5601 AC_DEFUN([gl_PREREQ_XMALLOC], [
5602   AC_REQUIRE([AC_C_INLINE])
5603   AC_REQUIRE([jm_FUNC_MALLOC])
5604   AC_REQUIRE([jm_FUNC_REALLOC])
5605   :
5606 ])
5607
5608 # Prerequisites of lib/xstrdup.c.
5609 AC_DEFUN([gl_PREREQ_XSTRDUP], [
5610   :
5611 ])
5612
5613 # malloc.m4 serial 7
5614 dnl Copyright (C) 2002 Free Software Foundation, Inc.
5615 dnl This file is free software, distributed under the terms of the GNU
5616 dnl General Public License.  As a special exception to the GNU General
5617 dnl Public License, this file may be distributed as part of a program
5618 dnl that contains a configuration script generated by Autoconf, under
5619 dnl the same distribution terms as the rest of that program.
5620
5621 dnl From Jim Meyering.
5622 dnl Determine whether malloc accepts 0 as its argument.
5623 dnl If it doesn't, arrange to use the replacement function.
5624
5625 AC_DEFUN([jm_FUNC_MALLOC],
5626 [
5627   AC_REQUIRE([AC_FUNC_MALLOC])
5628   dnl autoconf < 2.57 used the symbol ac_cv_func_malloc_works.
5629   if test X"$ac_cv_func_malloc_0_nonnull" = Xno || test X"$ac_cv_func_malloc_works" = Xno; then
5630     gl_PREREQ_MALLOC
5631   fi
5632 ])
5633
5634 # Prerequisites of lib/malloc.c.
5635 AC_DEFUN([gl_PREREQ_MALLOC], [
5636   :
5637 ])
5638
5639 # realloc.m4 serial 7
5640 dnl Copyright (C) 2002 Free Software Foundation, Inc.
5641 dnl This file is free software, distributed under the terms of the GNU
5642 dnl General Public License.  As a special exception to the GNU General
5643 dnl Public License, this file may be distributed as part of a program
5644 dnl that contains a configuration script generated by Autoconf, under
5645 dnl the same distribution terms as the rest of that program.
5646
5647 dnl From Jim Meyering.
5648 dnl Determine whether realloc works when both arguments are 0.
5649 dnl If it doesn't, arrange to use the replacement function.
5650
5651 AC_DEFUN([jm_FUNC_REALLOC],
5652 [
5653   AC_REQUIRE([AC_FUNC_REALLOC])
5654   dnl autoconf < 2.57 used the symbol ac_cv_func_realloc_works.
5655   if test X"$ac_cv_func_realloc_0_nonnull" = Xno || test X"$ac_cv_func_realloc_works" = Xno; then
5656     gl_PREREQ_REALLOC
5657   fi
5658 ])
5659
5660 # Prerequisites of lib/realloc.c.
5661 AC_DEFUN([gl_PREREQ_REALLOC], [
5662   :
5663 ])
5664
5665 # xgetcwd.m4 serial 2
5666 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
5667 dnl This file is free software, distributed under the terms of the GNU
5668 dnl General Public License.  As a special exception to the GNU General
5669 dnl Public License, this file may be distributed as part of a program
5670 dnl that contains a configuration script generated by Autoconf, under
5671 dnl the same distribution terms as the rest of that program.
5672
5673 AC_DEFUN([gl_XGETCWD],
5674 [
5675   dnl Prerequisites of lib/xgetcwd.c.
5676   AC_CHECK_HEADERS_ONCE(unistd.h)
5677   AC_CHECK_FUNCS(getcwd)
5678   AC_FUNC_GETCWD_NULL
5679 ])
5680
5681 # getcwd.m4 - check whether getcwd (NULL, 0) allocates memory for result
5682
5683 # Copyright (C) 2001, 2003 Free Software Foundation, Inc.
5684
5685 # This program is free software; you can redistribute it and/or modify
5686 # it under the terms of the GNU General Public License as published by
5687 # the Free Software Foundation; either version 2, or (at your option)
5688 # any later version.
5689
5690 # This program is distributed in the hope that it will be useful,
5691 # but WITHOUT ANY WARRANTY; without even the implied warranty of
5692 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
5693 # GNU General Public License for more details.
5694
5695 # You should have received a copy of the GNU General Public License
5696 # along with this program; if not, write to the Free Software Foundation,
5697 # Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
5698
5699 # Written by Paul Eggert.
5700
5701 AC_DEFUN([AC_FUNC_GETCWD_NULL],
5702   [
5703    AC_CHECK_HEADERS_ONCE(unistd.h)
5704    AC_CACHE_CHECK([whether getcwd (NULL, 0) allocates memory for result],
5705      [ac_cv_func_getcwd_null],
5706      [AC_TRY_RUN(
5707         [
5708 #        include <stdlib.h>
5709 #        ifdef HAVE_UNISTD_H
5710 #         include <unistd.h>
5711 #        endif
5712 #        ifndef getcwd
5713          char *getcwd ();
5714 #        endif
5715          int
5716          main ()
5717          {
5718            if (chdir ("/") != 0)
5719              exit (1);
5720            else
5721              {
5722                char *f = getcwd (NULL, 0);
5723                exit (! (f && f[0] == '/' && !f[1]));
5724              }
5725          }],
5726         [ac_cv_func_getcwd_null=yes],
5727         [ac_cv_func_getcwd_null=no],
5728         [ac_cv_func_getcwd_null=no])])
5729    if test $ac_cv_func_getcwd_null = yes; then
5730      AC_DEFINE(HAVE_GETCWD_NULL, 1,
5731                [Define if getcwd (NULL, 0) allocates memory for result.])
5732    fi])
5733
5734 # xreadlink.m4 serial 4
5735 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
5736 dnl This file is free software, distributed under the terms of the GNU
5737 dnl General Public License.  As a special exception to the GNU General
5738 dnl Public License, this file may be distributed as part of a program
5739 dnl that contains a configuration script generated by Autoconf, under
5740 dnl the same distribution terms as the rest of that program.
5741
5742 AC_DEFUN([gl_XREADLINK],
5743 [
5744   dnl Prerequisites of lib/xreadlink.c.
5745   AC_REQUIRE([gt_TYPE_SSIZE_T])
5746   AC_CHECK_HEADERS_ONCE(unistd.h)
5747 ])
5748
5749 # xstrtod.m4 serial 2
5750 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
5751 dnl This file is free software, distributed under the terms of the GNU
5752 dnl General Public License.  As a special exception to the GNU General
5753 dnl Public License, this file may be distributed as part of a program
5754 dnl that contains a configuration script generated by Autoconf, under
5755 dnl the same distribution terms as the rest of that program.
5756
5757 # Prerequisites of lib/xstrtod.c.
5758 AC_DEFUN([gl_XSTRTOD],
5759 [
5760   :
5761 ])
5762
5763 # xstrtol.m4 serial 3
5764 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
5765 dnl This file is free software, distributed under the terms of the GNU
5766 dnl General Public License.  As a special exception to the GNU General
5767 dnl Public License, this file may be distributed as part of a program
5768 dnl that contains a configuration script generated by Autoconf, under
5769 dnl the same distribution terms as the rest of that program.
5770
5771 AC_DEFUN([gl_XSTRTOL],
5772 [
5773   AC_REQUIRE([gl_PREREQ_XSTRTOL])
5774   AC_REQUIRE([gl_PREREQ_XSTRTOUL])
5775 ])
5776
5777 # Prerequisites of lib/xstrtol.h.
5778 AC_DEFUN([gl_PREREQ_XSTRTOL_H],
5779 [
5780   AC_REQUIRE([jm_AC_TYPE_INTMAX_T])
5781   AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])
5782 ])
5783
5784 # Prerequisites of lib/xstrtol.c.
5785 AC_DEFUN([gl_PREREQ_XSTRTOL],
5786 [
5787   AC_REQUIRE([gl_PREREQ_XSTRTOL_H])
5788   AC_REQUIRE([AC_HEADER_STDC])
5789   AC_CHECK_FUNCS_ONCE(isascii)
5790   AC_CHECK_DECLS([strtoimax, strtoumax])
5791 ])
5792
5793 # Prerequisites of lib/xstrtoul.c.
5794 AC_DEFUN([gl_PREREQ_XSTRTOUL],
5795 [
5796   AC_REQUIRE([gl_PREREQ_XSTRTOL])
5797 ])
5798
5799 # yesno.m4 serial 2
5800 dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
5801 dnl This file is free software, distributed under the terms of the GNU
5802 dnl General Public License.  As a special exception to the GNU General
5803 dnl Public License, this file may be distributed as part of a program
5804 dnl that contains a configuration script generated by Autoconf, under
5805 dnl the same distribution terms as the rest of that program.
5806
5807 AC_DEFUN([gl_YESNO],
5808 [
5809   dnl No prerequisites of lib/yesno.c.
5810   :
5811 ])
5812
5813 #serial 8 -*- autoconf -*-
5814
5815 dnl From Jim Meyering.
5816 dnl
5817 dnl See if the glibc *_unlocked I/O macros or functions are available.
5818 dnl Use only those *_unlocked macros or functions that are declared
5819 dnl (because some of them were declared in Solaris 2.5.1 but were removed
5820 dnl in Solaris 2.6, whereas we want binaries built on Solaris 2.5.1 to run
5821 dnl on Solaris 2.6).
5822
5823 AC_DEFUN([jm_FUNC_GLIBC_UNLOCKED_IO],
5824 [
5825   dnl Persuade glibc and Solaris <stdio.h> to declare
5826   dnl fgets_unlocked(), fputs_unlocked() etc.
5827   AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
5828
5829   AC_CHECK_DECLS_ONCE(
5830      [clearerr_unlocked feof_unlocked ferror_unlocked
5831       fflush_unlocked fgets_unlocked fputc_unlocked fputs_unlocked
5832       fread_unlocked fwrite_unlocked getc_unlocked
5833       getchar_unlocked putc_unlocked putchar_unlocked])
5834 ])
5835
5836 #serial 21
5837
5838 dnl This macro is intended to be used solely in this file.
5839 dnl These are the prerequisite macros for GNU's strftime.c replacement.
5840 AC_DEFUN([_jm_STRFTIME_PREREQS],
5841 [
5842  dnl strftime.c uses the underyling system strftime if it exists.
5843  AC_FUNC_STRFTIME
5844
5845  AC_CHECK_FUNCS_ONCE(mempcpy)
5846  AC_CHECK_FUNCS(tzset)
5847
5848  # This defines (or not) HAVE_TZNAME and HAVE_TM_ZONE.
5849  AC_STRUCT_TIMEZONE
5850
5851  AC_CHECK_FUNCS(mblen mbrlen)
5852  AC_TYPE_MBSTATE_T
5853
5854  AC_REQUIRE([gl_TM_GMTOFF])
5855  AC_REQUIRE([gl_FUNC_TZSET_CLOBBER])
5856 ])
5857
5858 dnl From Jim Meyering.
5859 dnl
5860 AC_DEFUN([jm_FUNC_GNU_STRFTIME],
5861 [AC_REQUIRE([AC_HEADER_TIME])dnl
5862
5863  _jm_STRFTIME_PREREQS
5864
5865  AC_REQUIRE([AC_C_CONST])dnl
5866  AC_CHECK_HEADERS_ONCE(sys/time.h)
5867  AC_DEFINE([my_strftime], [nstrftime],
5868    [Define to the name of the strftime replacement function.])
5869 ])
5870
5871 AC_DEFUN([jm_FUNC_STRFTIME],
5872 [
5873   _jm_STRFTIME_PREREQS
5874 ])
5875
5876 #serial 1
5877 # See if we have a working tzset function.
5878 # If so, arrange to compile the wrapper function.
5879 # For at least Solaris 2.5.1 and 2.6, this is necessary
5880 # because tzset can clobber the contents of the buffer
5881 # used by localtime.
5882
5883 # Written by Paul Eggert and Jim Meyering.
5884
5885 AC_DEFUN([gl_FUNC_TZSET_CLOBBER],
5886 [
5887   AC_REQUIRE([AC_HEADER_TIME])
5888   AC_CACHE_CHECK([whether tzset clobbers localtime buffer],
5889                  gl_cv_func_tzset_clobber,
5890   [
5891   AC_RUN_IFELSE([AC_LANG_SOURCE([[
5892 #if TIME_WITH_SYS_TIME
5893 # include <sys/time.h>
5894 # include <time.h>
5895 #else
5896 # if HAVE_SYS_TIME_H
5897 #  include <sys/time.h>
5898 # else
5899 #  include <time.h>
5900 # endif
5901 #endif
5902 #include <stdlib.h>
5903
5904 int
5905 main ()
5906 {
5907   time_t t1 = 853958121;
5908   struct tm *p, s;
5909   putenv ("TZ=GMT0");
5910   p = localtime (&t1);
5911   s = *p;
5912   putenv ("TZ=EST+3EDT+2,M10.1.0/00:00:00,M2.3.0/00:00:00");
5913   tzset ();
5914   exit (p->tm_year != s.tm_year
5915         || p->tm_mon != s.tm_mon
5916         || p->tm_mday != s.tm_mday
5917         || p->tm_hour != s.tm_hour
5918         || p->tm_min != s.tm_min
5919         || p->tm_sec != s.tm_sec);
5920 }
5921   ]])],
5922        [gl_cv_func_tzset_clobber=no],
5923        [gl_cv_func_tzset_clobber=yes],
5924        [gl_cv_func_tzset_clobber=yes])])
5925
5926   AC_DEFINE(HAVE_RUN_TZSET_TEST, 1,
5927     [Define to 1 if you have run the test for working tzset.])
5928
5929   if test $gl_cv_func_tzset_clobber = yes; then
5930     gl_GETTIMEOFDAY_REPLACE_LOCALTIME
5931
5932     AC_DEFINE(tzset, rpl_tzset,
5933       [Define to rpl_tzset if the wrapper function should be used.])
5934     AC_DEFINE(TZSET_CLOBBERS_LOCALTIME_BUFFER, 1,
5935       [Define if tzset clobbers localtime's static buffer.])
5936   fi
5937 ])
5938
5939 #serial 5
5940
5941 dnl From Jim Meyering.
5942 dnl
5943 dnl See if gettimeofday clobbers the static buffer that localtime uses
5944 dnl for it's return value.  The gettimeofday function from Mac OS X 10.0.4,
5945 dnl i.e. Darwin 1.3.7 has this problem.
5946 dnl
5947 dnl If it does, then arrange to use gettimeofday and localtime only via
5948 dnl the wrapper functions that work around the problem.
5949
5950 AC_DEFUN([AC_FUNC_GETTIMEOFDAY_CLOBBER],
5951 [
5952  AC_REQUIRE([AC_HEADER_TIME])
5953  AC_CACHE_CHECK([whether gettimeofday clobbers localtime buffer],
5954   jm_cv_func_gettimeofday_clobber,
5955   [AC_TRY_RUN([
5956 #include <stdio.h>
5957 #include <string.h>
5958
5959 #if TIME_WITH_SYS_TIME
5960 # include <sys/time.h>
5961 # include <time.h>
5962 #else
5963 # if HAVE_SYS_TIME_H
5964 #  include <sys/time.h>
5965 # else
5966 #  include <time.h>
5967 # endif
5968 #endif
5969
5970 #include <stdlib.h>
5971
5972 int
5973 main ()
5974 {
5975   time_t t = 0;
5976   struct tm *lt;
5977   struct tm saved_lt;
5978   struct timeval tv;
5979   lt = localtime (&t);
5980   saved_lt = *lt;
5981   gettimeofday (&tv, NULL);
5982   if (memcmp (lt, &saved_lt, sizeof (struct tm)) != 0)
5983     exit (1);
5984
5985   exit (0);
5986 }
5987           ],
5988          jm_cv_func_gettimeofday_clobber=no,
5989          jm_cv_func_gettimeofday_clobber=yes,
5990          dnl When crosscompiling, assume it is broken.
5991          jm_cv_func_gettimeofday_clobber=yes)
5992   ])
5993   if test $jm_cv_func_gettimeofday_clobber = yes; then
5994     gl_GETTIMEOFDAY_REPLACE_LOCALTIME
5995
5996     AC_DEFINE(gettimeofday, rpl_gettimeofday,
5997       [Define to rpl_gettimeofday if the replacement function should be used.])
5998     AC_DEFINE(GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, 1,
5999       [Define if gettimeofday clobbers localtime's static buffer.])
6000     gl_PREREQ_GETTIMEOFDAY
6001   fi
6002 ])
6003
6004 AC_DEFUN([gl_GETTIMEOFDAY_REPLACE_LOCALTIME], [
6005   AC_LIBOBJ(gettimeofday)
6006   AC_DEFINE(gmtime, rpl_gmtime,
6007     [Define to rpl_gmtime if the replacement function should be used.])
6008   AC_DEFINE(localtime, rpl_localtime,
6009     [Define to rpl_localtime if the replacement function should be used.])
6010 ])
6011
6012 # Prerequisites of lib/gettimeofday.c.
6013 AC_DEFUN([gl_PREREQ_GETTIMEOFDAY], [
6014   AC_REQUIRE([AC_HEADER_TIME])
6015 ])
6016
6017 #serial 10
6018
6019 dnl From Jim Meyering.
6020 dnl Determine whether lstat has the bug that it succeeds when given the
6021 dnl zero-length file name argument.  The lstat from SunOS 4.1.4 and the Hurd
6022 dnl (as of 1998-11-01) do this.
6023 dnl
6024 dnl If it does, then define HAVE_LSTAT_EMPTY_STRING_BUG and arrange to
6025 dnl compile the wrapper function.
6026 dnl
6027
6028 AC_DEFUN([jm_FUNC_LSTAT],
6029 [
6030   AC_FUNC_LSTAT
6031   dnl Note: AC_FUNC_LSTAT does AC_LIBOBJ(lstat).
6032   if test $ac_cv_func_lstat_empty_string_bug = yes; then
6033     gl_PREREQ_LSTAT
6034   fi
6035 ])
6036
6037 # Prerequisites of lib/lstat.c.
6038 AC_DEFUN([gl_PREREQ_LSTAT],
6039 [
6040   AC_REQUIRE([AC_HEADER_STAT])
6041   :
6042 ])
6043
6044 # memcmp.m4 serial 9
6045 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
6046 dnl This file is free software, distributed under the terms of the GNU
6047 dnl General Public License.  As a special exception to the GNU General
6048 dnl Public License, this file may be distributed as part of a program
6049 dnl that contains a configuration script generated by Autoconf, under
6050 dnl the same distribution terms as the rest of that program.
6051
6052 AC_DEFUN([jm_FUNC_MEMCMP],
6053 [
6054   AC_REQUIRE([AC_FUNC_MEMCMP])
6055   if test $ac_cv_func_memcmp_working = no; then
6056     AC_DEFINE(memcmp, rpl_memcmp,
6057       [Define to rpl_memcmp if the replacement function should be used.])
6058     gl_PREREQ_MEMCMP
6059   fi
6060 ])
6061
6062 # Prerequisites of lib/memcmp.c.
6063 AC_DEFUN([gl_PREREQ_MEMCMP], [:])
6064
6065 #serial 9
6066
6067 dnl From Jim Meyering.
6068 dnl Check for the nanosleep function.
6069 dnl If not found, use the supplied replacement.
6070 dnl
6071
6072 AC_DEFUN([jm_FUNC_NANOSLEEP],
6073 [
6074  nanosleep_save_libs=$LIBS
6075
6076  # Solaris 2.5.1 needs -lposix4 to get the nanosleep function.
6077  # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4.
6078  AC_SEARCH_LIBS([nanosleep], [rt posix4],
6079                 [test "$ac_cv_search_nanosleep" = "none required" ||
6080                  LIB_NANOSLEEP=$ac_cv_search_nanosleep])
6081  AC_SUBST([LIB_NANOSLEEP])
6082
6083  AC_CACHE_CHECK([whether nanosleep works],
6084   jm_cv_func_nanosleep_works,
6085   [
6086    AC_REQUIRE([AC_HEADER_TIME])
6087    AC_CHECK_HEADERS_ONCE(sys/time.h)
6088    AC_TRY_RUN([
6089 #   if TIME_WITH_SYS_TIME
6090 #    include <sys/time.h>
6091 #    include <time.h>
6092 #   else
6093 #    if HAVE_SYS_TIME_H
6094 #     include <sys/time.h>
6095 #    else
6096 #     include <time.h>
6097 #    endif
6098 #   endif
6099
6100     int
6101     main ()
6102     {
6103       struct timespec ts_sleep, ts_remaining;
6104       ts_sleep.tv_sec = 0;
6105       ts_sleep.tv_nsec = 1;
6106       exit (nanosleep (&ts_sleep, &ts_remaining) == 0 ? 0 : 1);
6107     }
6108           ],
6109          jm_cv_func_nanosleep_works=yes,
6110          jm_cv_func_nanosleep_works=no,
6111          dnl When crosscompiling, assume the worst.
6112          jm_cv_func_nanosleep_works=no)
6113   ])
6114   if test $jm_cv_func_nanosleep_works = no; then
6115     AC_LIBOBJ(nanosleep)
6116     AC_DEFINE(nanosleep, rpl_nanosleep,
6117       [Define to rpl_nanosleep if the replacement function should be used.])
6118     gl_PREREQ_NANOSLEEP
6119   fi
6120
6121  LIBS=$nanosleep_save_libs
6122 ])
6123
6124 # Prerequisites of lib/nanosleep.c.
6125 AC_DEFUN([gl_PREREQ_NANOSLEEP],
6126 [
6127   AC_CHECK_HEADERS_ONCE(unistd.h)
6128 ])
6129
6130 # putenv.m4 serial 7
6131 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
6132 dnl This file is free software, distributed under the terms of the GNU
6133 dnl General Public License.  As a special exception to the GNU General
6134 dnl Public License, this file may be distributed as part of a program
6135 dnl that contains a configuration script generated by Autoconf, under
6136 dnl the same distribution terms as the rest of that program.
6137
6138 dnl From Jim Meyering.
6139 dnl
6140 dnl Check whether putenv ("FOO") removes FOO from the environment.
6141 dnl The putenv in libc on at least SunOS 4.1.4 does *not* do that.
6142
6143 AC_DEFUN([jm_FUNC_PUTENV],
6144 [AC_CACHE_CHECK([for SVID conformant putenv], jm_cv_func_svid_putenv,
6145   [AC_TRY_RUN([
6146     int
6147     main ()
6148     {
6149       /* Put it in env.  */
6150       if (putenv ("CONFTEST_putenv=val"))
6151         exit (1);
6152
6153       /* Try to remove it.  */
6154       if (putenv ("CONFTEST_putenv"))
6155         exit (1);
6156
6157       /* Make sure it was deleted.  */
6158       if (getenv ("CONFTEST_putenv") != 0)
6159         exit (1);
6160
6161       exit (0);
6162     }
6163               ],
6164              jm_cv_func_svid_putenv=yes,
6165              jm_cv_func_svid_putenv=no,
6166              dnl When crosscompiling, assume putenv is broken.
6167              jm_cv_func_svid_putenv=no)
6168   ])
6169   if test $jm_cv_func_svid_putenv = no; then
6170     AC_LIBOBJ(putenv)
6171     AC_DEFINE(putenv, rpl_putenv,
6172       [Define to rpl_putenv if the replacement function should be used.])
6173     gl_PREREQ_PUTENV
6174   fi
6175 ])
6176
6177 # Prerequisites of lib/putenv.c.
6178 AC_DEFUN([gl_PREREQ_PUTENV], [
6179   AC_CHECK_HEADERS_ONCE(unistd.h)
6180 ])
6181
6182 #serial 9
6183
6184 dnl From Jim Meyering.
6185 dnl Determine whether stat has the bug that it succeeds when given the
6186 dnl zero-length file name argument.  The stat from SunOS 4.1.4 and the Hurd
6187 dnl (as of 1998-11-01) do this.
6188 dnl
6189 dnl If it does, then define HAVE_STAT_EMPTY_STRING_BUG and arrange to
6190 dnl compile the wrapper function.
6191 dnl
6192
6193 AC_DEFUN([jm_FUNC_STAT],
6194 [
6195   AC_FUNC_STAT
6196   dnl Note: AC_FUNC_STAT does AC_LIBOBJ(stat).
6197   if test $ac_cv_func_stat_empty_string_bug = yes; then
6198     gl_PREREQ_STAT
6199   fi
6200 ])
6201
6202 # Prerequisites of lib/stat.c.
6203 AC_DEFUN([gl_PREREQ_STAT],
6204 [
6205   :
6206 ])
6207
6208 #serial 5
6209
6210 dnl From Jim Meyering
6211 dnl Replace the utime function on systems that need it.
6212
6213 dnl FIXME
6214
6215 AC_DEFUN([jm_FUNC_UTIME],
6216 [
6217   AC_REQUIRE([AC_FUNC_UTIME_NULL])
6218   if test $ac_cv_func_utime_null = no; then
6219     AC_LIBOBJ(utime)
6220     AC_DEFINE(utime, rpl_utime,
6221       [Define to rpl_utime if the replacement function should be used.])
6222     gl_PREREQ_UTIME
6223   fi
6224 ])
6225
6226 # Prerequisites of lib/utime.c.
6227 AC_DEFUN([gl_PREREQ_UTIME],
6228 [
6229   AC_CHECK_HEADERS_ONCE(utime.h)
6230   AC_REQUIRE([jm_CHECK_TYPE_STRUCT_UTIMBUF])
6231   jm_FUNC_UTIMES_NULL
6232 ])
6233
6234 #serial 4
6235
6236 dnl Shamelessly cloned from acspecific.m4's AC_FUNC_UTIME_NULL,
6237 dnl then do case-insensitive s/utime/utimes/.
6238
6239 AC_DEFUN([jm_FUNC_UTIMES_NULL],
6240 [AC_CACHE_CHECK(whether utimes accepts a null argument, ac_cv_func_utimes_null,
6241 [rm -f conftest.data; > conftest.data
6242 AC_TRY_RUN([
6243 /* In case stat has been defined to rpl_stat, undef it here.  */
6244 #undef stat
6245 #include <sys/types.h>
6246 #include <sys/stat.h>
6247 main() {
6248 struct stat s, t;
6249 exit(!(stat ("conftest.data", &s) == 0
6250        && utimes("conftest.data", (long *)0) == 0
6251        && stat("conftest.data", &t) == 0
6252        && t.st_mtime >= s.st_mtime
6253        && t.st_mtime - s.st_mtime < 120));
6254 }],
6255   ac_cv_func_utimes_null=yes,
6256   ac_cv_func_utimes_null=no,
6257   ac_cv_func_utimes_null=no)
6258 rm -f core core.* *.core])
6259
6260     if test $ac_cv_func_utimes_null = yes; then
6261       AC_DEFINE(HAVE_UTIMES_NULL, 1,
6262                 [Define if utimes accepts a null argument])
6263     fi
6264   ]
6265 )
6266
6267 #serial 3
6268 dnl Cloned from xstrtoumax.m4.  Keep these files in sync.
6269
6270 AC_DEFUN([jm_XSTRTOIMAX],
6271 [
6272   dnl Prerequisites of lib/xstrtoimax.c.
6273   AC_REQUIRE([jm_AC_TYPE_INTMAX_T])
6274   AC_REQUIRE([gl_PREREQ_XSTRTOL])
6275 ])
6276
6277 #serial 5
6278 dnl Cloned from xstrtoimax.m4.  Keep these files in sync.
6279
6280 AC_DEFUN([jm_XSTRTOUMAX],
6281 [
6282   dnl Prerequisites of lib/xstrtoumax.c.
6283   AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])
6284   AC_REQUIRE([gl_PREREQ_XSTRTOL])
6285 ])
6286
6287 #serial 6
6288
6289 dnl From Volker Borchert.
6290 dnl Determine whether rename works for source paths with a trailing slash.
6291 dnl The rename from SunOS 4.1.1_U1 doesn't.
6292 dnl
6293 dnl If it doesn't, then define RENAME_TRAILING_SLASH_BUG and arrange
6294 dnl to compile the wrapper function.
6295 dnl
6296
6297 AC_DEFUN([vb_FUNC_RENAME],
6298 [
6299  AC_CACHE_CHECK([whether rename is broken],
6300   vb_cv_func_rename_trailing_slash_bug,
6301   [
6302     rm -rf conftest.d1 conftest.d2
6303     mkdir conftest.d1 ||
6304       AC_MSG_ERROR([cannot create temporary directory])
6305     AC_TRY_RUN([
6306 #       include <stdio.h>
6307         int
6308         main ()
6309         {
6310           exit (rename ("conftest.d1/", "conftest.d2") ? 1 : 0);
6311         }
6312       ],
6313       vb_cv_func_rename_trailing_slash_bug=no,
6314       vb_cv_func_rename_trailing_slash_bug=yes,
6315       dnl When crosscompiling, assume rename is broken.
6316       vb_cv_func_rename_trailing_slash_bug=yes)
6317
6318       rm -rf conftest.d1 conftest.d2
6319   ])
6320   if test $vb_cv_func_rename_trailing_slash_bug = yes; then
6321     AC_LIBOBJ(rename)
6322     AC_DEFINE(rename, rpl_rename,
6323       [Define to rpl_rename if the replacement function should be used.])
6324     AC_DEFINE(RENAME_TRAILING_SLASH_BUG, 1,
6325       [Define if rename does not work for source paths with a trailing slash,
6326        like the one from SunOS 4.1.1_U1.])
6327     gl_PREREQ_RENAME
6328   fi
6329 ])
6330
6331 # Prerequisites of lib/rename.c.
6332 AC_DEFUN([gl_PREREQ_RENAME], [:])
6333
6334 #serial 6
6335
6336 dnl Find out how to get the file descriptor associated with an open DIR*.
6337 dnl From Jim Meyering
6338
6339 AC_DEFUN([UTILS_FUNC_DIRFD],
6340 [
6341   dnl Work around a bug of AC_EGREP_CPP in autoconf-2.57.
6342   AC_REQUIRE([AC_PROG_CPP])
6343   AC_REQUIRE([AC_PROG_EGREP])
6344
6345   AC_HEADER_DIRENT
6346   dirfd_headers='
6347 #if HAVE_DIRENT_H
6348 # include <dirent.h>
6349 #else /* not HAVE_DIRENT_H */
6350 # define dirent direct
6351 # if HAVE_SYS_NDIR_H
6352 #  include <sys/ndir.h>
6353 # endif /* HAVE_SYS_NDIR_H */
6354 # if HAVE_SYS_DIR_H
6355 #  include <sys/dir.h>
6356 # endif /* HAVE_SYS_DIR_H */
6357 # if HAVE_NDIR_H
6358 #  include <ndir.h>
6359 # endif /* HAVE_NDIR_H */
6360 #endif /* HAVE_DIRENT_H */
6361 '
6362   AC_CHECK_FUNCS(dirfd)
6363   AC_CHECK_DECLS([dirfd], , , $dirfd_headers)
6364
6365   AC_CACHE_CHECK([whether dirfd is a macro],
6366     jm_cv_func_dirfd_macro,
6367     [AC_EGREP_CPP([dirent_header_defines_dirfd], [$dirfd_headers
6368 #ifdef dirfd
6369  dirent_header_defines_dirfd
6370 #endif],
6371        jm_cv_func_dirfd_macro=yes,
6372        jm_cv_func_dirfd_macro=no)])
6373
6374   # Use the replacement only if we have no function, macro,
6375   # or declaration with that name.
6376   if test $ac_cv_func_dirfd,$ac_cv_have_decl_dirfd,$jm_cv_func_dirfd_macro \
6377       = no,no,no; then
6378     AC_REPLACE_FUNCS([dirfd])
6379     AC_CACHE_CHECK(
6380               [how to get the file descriptor associated with an open DIR*],
6381                    gl_cv_sys_dir_fd_member_name,
6382       [
6383         dirfd_save_CFLAGS=$CFLAGS
6384         for ac_expr in d_fd dd_fd; do
6385
6386           CFLAGS="$CFLAGS -DDIR_FD_MEMBER_NAME=$ac_expr"
6387           AC_TRY_COMPILE(
6388             [$dirfd_headers
6389             ],
6390             [DIR *dir_p = opendir("."); (void) dir_p->DIR_FD_MEMBER_NAME;],
6391             dir_fd_found=yes
6392           )
6393           CFLAGS=$dirfd_save_CFLAGS
6394           test "$dir_fd_found" = yes && break
6395         done
6396         test "$dir_fd_found" = yes || ac_expr=no_such_member
6397
6398         gl_cv_sys_dir_fd_member_name=$ac_expr
6399       ]
6400     )
6401     if test $gl_cv_sys_dir_fd_member_name != no_such_member; then
6402       AC_DEFINE_UNQUOTED(DIR_FD_MEMBER_NAME,
6403         $gl_cv_sys_dir_fd_member_name,
6404         [the name of the file descriptor member of DIR])
6405     fi
6406     AH_VERBATIM(DIR_TO_FD,
6407                 [#ifdef DIR_FD_MEMBER_NAME
6408 # define DIR_TO_FD(Dir_p) ((Dir_p)->DIR_FD_MEMBER_NAME)
6409 #else
6410 # define DIR_TO_FD(Dir_p) -1
6411 #endif
6412 ]
6413     )
6414   fi
6415 ])
6416
6417 # acl.m4 - check for access control list (ACL) primitives
6418
6419 # Copyright (C) 2002 Free Software Foundation, Inc.
6420
6421 # This program is free software; you can redistribute it and/or modify
6422 # it under the terms of the GNU General Public License as published by
6423 # the Free Software Foundation; either version 2, or (at your option)
6424 # any later version.
6425
6426 # This program is distributed in the hope that it will be useful,
6427 # but WITHOUT ANY WARRANTY; without even the implied warranty of
6428 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
6429 # GNU General Public License for more details.
6430
6431 # You should have received a copy of the GNU General Public License
6432 # along with this program; if not, write to the Free Software Foundation,
6433 # Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
6434
6435 # Written by Paul Eggert.
6436
6437 AC_DEFUN([AC_FUNC_ACL],
6438 [
6439   dnl Prerequisites of lib/acl.c.
6440   AC_CHECK_HEADERS(sys/acl.h)
6441   AC_CHECK_FUNCS(acl)
6442 ])
6443
6444 #serial 3
6445
6446 dnl From Jim Meyering.
6447 dnl Provide lchown on systems that lack it.
6448
6449 AC_DEFUN([jm_FUNC_LCHOWN],
6450 [
6451   AC_REQUIRE([AC_TYPE_UID_T])
6452   AC_REPLACE_FUNCS(lchown)
6453   if test $ac_cv_func_lchown = no; then
6454     gl_PREREQ_LCHOWN
6455   fi
6456 ])
6457
6458 # Prerequisites of lib/lchown.c.
6459 AC_DEFUN([gl_PREREQ_LCHOWN],
6460 [
6461   AC_REQUIRE([AC_HEADER_STAT])
6462   :
6463 ])
6464
6465 #serial 3
6466
6467 # When rmdir fails because the specified directory is not empty, it sets
6468 # errno to some value, usually ENOTEMPTY.  However, on some AIX systems,
6469 # ENOTEMPTY is mistakenly defined to be EEXIST.  To work around this, and
6470 # in general, to avoid depending on the use of any particular symbol, this
6471 # test runs a test to determine the actual numeric value.
6472 AC_DEFUN([fetish_FUNC_RMDIR_NOTEMPTY],
6473 [dnl
6474   AC_CACHE_CHECK([for rmdir-not-empty errno value],
6475     fetish_cv_func_rmdir_errno_not_empty,
6476     [
6477       # Arrange for deletion of the temporary directory this test creates.
6478       ac_clean_files="$ac_clean_files confdir2"
6479       mkdir confdir2; : > confdir2/file
6480       AC_TRY_RUN([
6481 #include <stdio.h>
6482 #include <errno.h>
6483 #ifndef errno
6484 extern int errno;
6485 #endif
6486         int main ()
6487         {
6488           FILE *s;
6489           int val;
6490           rmdir ("confdir2");
6491           val = errno;
6492           s = fopen ("confdir2/errno", "w");
6493           fprintf (s, "%d\n", val);
6494           exit (0);
6495         }
6496         ],
6497       fetish_cv_func_rmdir_errno_not_empty=`cat confdir2/errno`,
6498       fetish_cv_func_rmdir_errno_not_empty='configure error in rmdir-errno.m4',
6499       fetish_cv_func_rmdir_errno_not_empty=ENOTEMPTY
6500       )
6501     ]
6502   )
6503
6504   AC_DEFINE_UNQUOTED([RMDIR_ERRNO_NOT_EMPTY],
6505     $fetish_cv_func_rmdir_errno_not_empty,
6506     [the value to which errno is set when rmdir fails on a nonempty directory])
6507 ])
6508
6509 #serial 8
6510
6511 dnl From Jim Meyering.
6512 dnl Determine whether chown accepts arguments of -1 for uid and gid.
6513 dnl If it doesn't, arrange to use the replacement function.
6514 dnl
6515
6516 AC_DEFUN([jm_FUNC_CHOWN],
6517 [
6518   AC_REQUIRE([AC_TYPE_UID_T])dnl
6519   AC_REQUIRE([AC_FUNC_CHOWN])
6520   if test $ac_cv_func_chown_works = no; then
6521     AC_LIBOBJ(chown)
6522     AC_DEFINE(chown, rpl_chown,
6523       [Define to rpl_chown if the replacement function should be used.])
6524     gl_PREREQ_CHOWN
6525   fi
6526 ])
6527
6528 # Prerequisites of lib/chown.c.
6529 AC_DEFUN([gl_PREREQ_CHOWN],
6530 [
6531   AC_CHECK_HEADERS_ONCE(unistd.h)
6532 ])
6533
6534 #serial 5
6535
6536 dnl Written by Jim Meyering
6537
6538 AC_DEFUN([jm_FUNC_GROUP_MEMBER],
6539 [
6540   dnl Persuade glibc <unistd.h> to declare group_member().
6541   AC_REQUIRE([AC_GNU_SOURCE])
6542
6543   dnl Do this replacement check manually because I want the hyphen
6544   dnl (not the underscore) in the filename.
6545   AC_CHECK_FUNC(group_member, , [
6546     AC_LIBOBJ(group-member)
6547     gl_PREREQ_GROUP_MEMBER
6548   ])
6549 ])
6550
6551 # Prerequisites of lib/group-member.c.
6552 AC_DEFUN([gl_PREREQ_GROUP_MEMBER],
6553 [
6554   AC_CHECK_HEADERS_ONCE(unistd.h)
6555   AC_REQUIRE([AC_FUNC_GETGROUPS])
6556 ])
6557
6558 #serial 3
6559 dnl Run a program to determine whether whether link(2) follows symlinks.
6560 dnl Set LINK_FOLLOWS_SYMLINKS accordingly.
6561
6562 AC_DEFUN([jm_AC_FUNC_LINK_FOLLOWS_SYMLINK],
6563 [dnl
6564   AC_CACHE_CHECK(
6565     [whether link(2) dereferences a symlink specified with a trailing slash],
6566                  jm_ac_cv_func_link_follows_symlink,
6567   [
6568     dnl poor-man's AC_REQUIRE: FIXME: repair this once autoconf-3 provides
6569     dnl the appropriate framework.
6570     test -z "$ac_cv_header_unistd_h" \
6571       && AC_CHECK_HEADERS(unistd.h)
6572
6573     # Create a regular file.
6574     echo > conftest.file
6575     AC_TRY_RUN(
6576       [
6577 #       include <sys/types.h>
6578 #       include <sys/stat.h>
6579 #       ifdef HAVE_UNISTD_H
6580 #        include <unistd.h>
6581 #       endif
6582
6583 #       define SAME_INODE(Stat_buf_1, Stat_buf_2) \
6584           ((Stat_buf_1).st_ino == (Stat_buf_2).st_ino \
6585            && (Stat_buf_1).st_dev == (Stat_buf_2).st_dev)
6586
6587         int
6588         main ()
6589         {
6590           const char *file = "conftest.file";
6591           const char *sym = "conftest.sym";
6592           const char *hard = "conftest.hard";
6593           struct stat sb_file, sb_hard;
6594
6595           /* Create a symlink to the regular file. */
6596           if (symlink (file, sym))
6597             abort ();
6598
6599           /* Create a hard link to that symlink.  */
6600           if (link (sym, hard))
6601             abort ();
6602
6603           if (lstat (hard, &sb_hard))
6604             abort ();
6605           if (lstat (file, &sb_file))
6606             abort ();
6607
6608           /* If the dev/inode of hard and file are the same, then
6609              the link call followed the symlink.  */
6610           return SAME_INODE (sb_hard, sb_file) ? 0 : 1;
6611         }
6612       ],
6613       jm_ac_cv_func_link_follows_symlink=yes,
6614       jm_ac_cv_func_link_follows_symlink=no,
6615       jm_ac_cv_func_link_follows_symlink=yes dnl We're cross compiling.
6616     )
6617   ])
6618   if test $jm_ac_cv_func_link_follows_symlink = yes; then
6619     AC_DEFINE(LINK_FOLLOWS_SYMLINKS, 1,
6620       [Define if `link(2)' dereferences symbolic links.])
6621   fi
6622 ])
6623
6624 #serial 3
6625
6626 dnl From Jim Meyering
6627 dnl Using code from emacs, based on suggestions from Paul Eggert
6628 dnl and Ulrich Drepper.
6629
6630 dnl Find out how to determine the number of pending output bytes on a stream.
6631 dnl glibc (2.1.93 and newer) and Solaris provide __fpending.  On other systems,
6632 dnl we have to grub around in the FILE struct.
6633
6634 AC_DEFUN([jm_FUNC_FPENDING],
6635 [
6636   AC_CHECK_HEADERS(stdio_ext.h)
6637   AC_REPLACE_FUNCS([__fpending])
6638   fp_headers='
6639 #     if HAVE_STDIO_EXT_H
6640 #      include <stdio_ext.h>
6641 #     endif
6642 '
6643   AC_CHECK_DECLS([__fpending], , , $fp_headers)
6644   if test $ac_cv_func___fpending = no; then
6645     AC_CACHE_CHECK(
6646               [how to determine the number of pending output bytes on a stream],
6647                    ac_cv_sys_pending_output_n_bytes,
6648       [
6649         for ac_expr in                                          \
6650                                                                 \
6651             '# glibc2'                                          \
6652             'fp->_IO_write_ptr - fp->_IO_write_base'            \
6653                                                                 \
6654             '# traditional Unix'                                \
6655             'fp->_ptr - fp->_base'                              \
6656                                                                 \
6657             '# BSD'                                             \
6658             'fp->_p - fp->_bf._base'                            \
6659                                                                 \
6660             '# SCO, Unixware'                                   \
6661             'fp->__ptr - fp->__base'                            \
6662                                                                 \
6663             '# old glibc?'                                      \
6664             'fp->__bufp - fp->__buffer'                         \
6665                                                                 \
6666             '# old glibc iostream?'                             \
6667             'fp->_pptr - fp->_pbase'                            \
6668                                                                 \
6669             '# VMS'                                             \
6670             '(*fp)->_ptr - (*fp)->_base'                        \
6671                                                                 \
6672             '# e.g., DGUX R4.11; the info is not available'     \
6673             1                                                   \
6674             ; do
6675
6676           # Skip each embedded comment.
6677           case "$ac_expr" in '#'*) continue;; esac
6678
6679           AC_TRY_COMPILE(
6680             [#include <stdio.h>
6681             ],
6682             [FILE *fp = stdin; (void) ($ac_expr);],
6683             fp_done=yes
6684           )
6685           test "$fp_done" = yes && break
6686         done
6687
6688         ac_cv_sys_pending_output_n_bytes=$ac_expr
6689       ]
6690     )
6691     AC_DEFINE_UNQUOTED(PENDING_OUTPUT_N_BYTES,
6692       $ac_cv_sys_pending_output_n_bytes,
6693       [the number of pending output bytes on stream `fp'])
6694   fi
6695 ])
6696
6697 # inttypes-pri.m4 serial 1 (gettext-0.11.4)
6698 dnl Copyright (C) 1997-2002 Free Software Foundation, Inc.
6699 dnl This file is free software, distributed under the terms of the GNU
6700 dnl General Public License.  As a special exception to the GNU General
6701 dnl Public License, this file may be distributed as part of a program
6702 dnl that contains a configuration script generated by Autoconf, under
6703 dnl the same distribution terms as the rest of that program.
6704
6705 dnl From Bruno Haible.
6706
6707 # Define PRI_MACROS_BROKEN if <inttypes.h> exists and defines the PRI*
6708 # macros to non-string values.  This is the case on AIX 4.3.3.
6709
6710 AC_DEFUN([gt_INTTYPES_PRI],
6711 [
6712   AC_REQUIRE([gt_HEADER_INTTYPES_H])
6713   if test $gt_cv_header_inttypes_h = yes; then
6714     AC_CACHE_CHECK([whether the inttypes.h PRIxNN macros are broken],
6715       gt_cv_inttypes_pri_broken,
6716       [
6717         AC_TRY_COMPILE([#include <inttypes.h>
6718 #ifdef PRId32
6719 char *p = PRId32;
6720 #endif
6721 ], [], gt_cv_inttypes_pri_broken=no, gt_cv_inttypes_pri_broken=yes)
6722       ])
6723   fi
6724   if test "$gt_cv_inttypes_pri_broken" = yes; then
6725     AC_DEFINE_UNQUOTED(PRI_MACROS_BROKEN, 1,
6726       [Define if <inttypes.h> exists and defines unusable PRI* macros.])
6727   fi
6728 ])
6729
6730 # Assume AM_GNU_GETTEXT([external]) and Autoconf 2.54 or later, for coreutils.
6731
6732 # serial 2
6733
6734 dnl Copyright (C) 2003 Free Software Foundation, Inc.
6735 dnl This file is free software, distributed under the terms of the GNU
6736 dnl General Public License.  As a special exception to the GNU General
6737 dnl Public License, this file may be distributed as part of a program
6738 dnl that contains a configuration script generated by Autoconf, under
6739 dnl the same distribution terms as the rest of that program.
6740
6741 dnl From Paul Eggert
6742
6743 dnl Automake doesn't understand that AM_GNU_GETTEXT([external])
6744 dnl never invokes the following macros, because of the [external].
6745 dnl Insert empty macros to pacify Automake.
6746
6747 AC_DEFUN([AM_LC_MESSAGES])
6748 AC_DEFUN([AM_MKINSTALLDIRS])
6749 AC_DEFUN([gt_INTDIV0])
6750
6751 dnl A simpler substitute for gt_INTTYPES_PRI that assumes Autoconf 2.54
6752 dnl or later.
6753
6754 AC_DEFUN([gt_HEADER_INTTYPES_H], [
6755   AC_REQUIRE([AC_HEADER_STDC])
6756   gt_cv_header_inttypes_h=$ac_cv_header_inttypes_h
6757 ])
6758
6759 #serial 8
6760
6761 dnl From Jim Meyering.
6762 dnl A wrapper around AC_FUNC_GETGROUPS.
6763
6764 AC_DEFUN([jm_FUNC_GETGROUPS],
6765 [
6766   AC_REQUIRE([AC_FUNC_GETGROUPS])
6767   if test $ac_cv_func_getgroups_works = no; then
6768     AC_LIBOBJ(getgroups)
6769     AC_DEFINE(getgroups, rpl_getgroups,
6770       [Define as rpl_getgroups if getgroups doesn't work right.])
6771     gl_PREREQ_GETGROUPS
6772   fi
6773   test -n "$GETGROUPS_LIB" && LIBS="$GETGROUPS_LIB $LIBS"
6774 ])
6775
6776 # Prerequisites of lib/getgroups.c.
6777 AC_DEFUN([gl_PREREQ_GETGROUPS],
6778 [
6779   AC_REQUIRE([AC_TYPE_GETGROUPS])
6780 ])
6781
6782 #serial 5
6783
6784 AC_PREREQ(2.13)
6785
6786 AC_DEFUN([jm_SYS_PROC_UPTIME],
6787 [ dnl Require AC_PROG_CC to see if we're cross compiling.
6788   AC_REQUIRE([AC_PROG_CC])
6789   AC_CACHE_CHECK([for /proc/uptime], jm_cv_have_proc_uptime,
6790   [jm_cv_have_proc_uptime=no
6791     test -f /proc/uptime \
6792       && test "$cross_compiling" = no \
6793       && cat < /proc/uptime >/dev/null 2>/dev/null \
6794       && jm_cv_have_proc_uptime=yes])
6795   if test $jm_cv_have_proc_uptime = yes; then
6796     AC_DEFINE(HAVE_PROC_UPTIME, 1,
6797               [  Define if your system has the /proc/uptime special file.])
6798   fi
6799 ])
6800
6801 #serial 5
6802
6803 # See if we need to emulate a missing ftruncate function using fcntl or chsize.
6804
6805 AC_DEFUN([jm_FUNC_FTRUNCATE],
6806 [
6807   AC_REPLACE_FUNCS(ftruncate)
6808   if test $ac_cv_func_ftruncate = no; then
6809     gl_PREREQ_FTRUNCATE
6810   fi
6811 ])
6812
6813 # Prerequisites of lib/ftruncate.c.
6814 AC_DEFUN([gl_PREREQ_FTRUNCATE],
6815 [
6816   AC_CHECK_HEADERS_ONCE(unistd.h)
6817   AC_CHECK_FUNCS(chsize)
6818 ])
6819
6820 #serial 1
6821 # Determine approximately how many files may be open simultaneously
6822 # in one process.  This is approximate, since while running this test,
6823 # the configure script already has a few files open.
6824 # From Jim Meyering
6825
6826 AC_DEFUN([UTILS_SYS_OPEN_MAX],
6827 [
6828   AC_CACHE_CHECK([determine how many files may be open simultaneously],
6829                  utils_cv_sys_open_max,
6830   [
6831   AC_RUN_IFELSE([AC_LANG_SOURCE([[
6832 #include <stdio.h>
6833 #include <stdlib.h>
6834 #include <unistd.h>
6835     int
6836     main ()
6837     {
6838       FILE *result = fopen ("conftest.omax", "w");
6839       int i = 1;
6840       /* Impose an arbitrary limit, in case some system has no
6841          effective limit on the number of simultaneously open files.  */
6842       while (i < 30000)
6843         {
6844           FILE *s = fopen ("conftest.op", "w");
6845           if (!s)
6846             break;
6847           ++i;
6848         }
6849       fprintf (result, "%d\n", i);
6850       exit (fclose (result) == EOF);
6851     }
6852   ]])],
6853        [utils_cv_sys_open_max=`cat conftest.omax`],
6854        [utils_cv_sys_open_max='internal error in open-max.m4'],
6855        [utils_cv_sys_open_max='cross compiling run-test in open-max.m4'])])
6856
6857   AC_DEFINE_UNQUOTED([UTILS_OPEN_MAX],
6858     $utils_cv_sys_open_max,
6859     [the maximum number of simultaneously open files per process])
6860 ])
6861
6862 #serial 4
6863 # Check whether getcwd has the bug that it succeeds for a working directory
6864 # longer than PATH_MAX, yet returns a truncated directory name.
6865 # If so, arrange to compile the wrapper function.
6866
6867 # This is necessary for at least GNU libc on linux-2.4.19 and 2.4.20.
6868 # I've heard that this is due to a Linux kernel bug, and that it has
6869 # been fixed between 2.4.21-pre3 and 2.4.21-pre4.  */
6870
6871 # From Jim Meyering
6872
6873 AC_DEFUN([GL_FUNC_GETCWD_PATH_MAX],
6874 [
6875   AC_CHECK_DECLS([getcwd])
6876   AC_CACHE_CHECK([whether getcwd properly handles paths longer than PATH_MAX],
6877                  gl_cv_func_getcwd_vs_path_max,
6878   [
6879   # Arrange for deletion of the temporary directory this test creates.
6880   ac_clean_files="$ac_clean_files confdir3"
6881   AC_RUN_IFELSE([AC_LANG_SOURCE([[
6882 #include <stdlib.h>
6883 #include <unistd.h>
6884 #include <string.h>
6885 #include <limits.h>
6886 #include <sys/stat.h>
6887 #include <sys/types.h>
6888
6889 /* Don't get link errors because mkdir is redefined to rpl_mkdir.  */
6890 #undef mkdir
6891
6892 #ifndef CHAR_BIT
6893 # define CHAR_BIT 8
6894 #endif
6895
6896 /* The extra casts work around common compiler bugs.  */
6897 #define TYPE_SIGNED(t) (! ((t) 0 < (t) -1))
6898 /* The outer cast is needed to work around a bug in Cray C 5.0.3.0.
6899    It is necessary at least when t == time_t.  */
6900 #define TYPE_MINIMUM(t) ((t) (TYPE_SIGNED (t) \
6901                               ? ~ (t) 0 << (sizeof (t) * CHAR_BIT - 1) : (t) 0))
6902 #define TYPE_MAXIMUM(t) ((t) (~ (t) 0 - TYPE_MINIMUM (t)))
6903
6904 #ifndef INT_MAX
6905 # define INT_MAX TYPE_MAXIMUM (int)
6906 #endif
6907
6908 /* The length of this name must be 8.  */
6909 #define DIR_NAME "confdir3"
6910
6911 int
6912 main ()
6913 {
6914 #ifndef PATH_MAX
6915   /* The Hurd doesn't define this, so getcwd can't exhibit the bug --
6916      at least not on a local file system.  And if we were to start worrying
6917      about remote file systems, we'd have to enable the wrapper function
6918      all of the time, just to be safe.  That's not worth the cost.  */
6919   exit (0);
6920 #elif INT_MAX - 9 <= PATH_MAX
6921   /* The '9', above, comes from strlen (DIR_NAME) + 1.  */
6922   /* FIXME: Assuming there's a system for which this is true,
6923      this should be done in a compile test.  */
6924   exit (0);
6925 #else
6926   char buf[PATH_MAX + 20];
6927   char *cwd = getcwd (buf, PATH_MAX);
6928   size_t cwd_len;
6929   int fail = 0;
6930   size_t n_chdirs = 0;
6931
6932   if (cwd == NULL)
6933     exit (1);
6934
6935   cwd_len = strlen (cwd);
6936
6937   while (1)
6938     {
6939       char *c;
6940       size_t len;
6941
6942       cwd_len += 1 + strlen (DIR_NAME);
6943       /* If mkdir or chdir fails, be pessimistic and consider that
6944          as a failure, too.  */
6945       if (mkdir (DIR_NAME, 0700) < 0 || chdir (DIR_NAME) < 0)
6946         {
6947           fail = 1;
6948           break;
6949         }
6950       if ((c = getcwd (buf, PATH_MAX)) == NULL)
6951         {
6952           /* This allows any failure to indicate there is no bug.
6953              FIXME: check errno?  */
6954           break;
6955         }
6956       if ((len = strlen (c)) != cwd_len)
6957         {
6958           fail = 1;
6959           break;
6960         }
6961       ++n_chdirs;
6962       if (PATH_MAX < len)
6963         break;
6964     }
6965
6966   /* Leaving behind such a deep directory is not polite.
6967      So clean up here, right away, even though the driving
6968      shell script would also clean up.  */
6969   {
6970     size_t i;
6971
6972     /* Unlink first, in case the chdir failed.  */
6973     unlink (DIR_NAME);
6974     for (i = 0; i <= n_chdirs; i++)
6975       {
6976         if (chdir ("..") < 0)
6977           break;
6978         rmdir (DIR_NAME);
6979       }
6980   }
6981
6982   exit (fail);
6983 #endif
6984 }
6985   ]])],
6986        [gl_cv_func_getcwd_vs_path_max=yes],
6987        [gl_cv_func_getcwd_vs_path_max=no],
6988        [gl_cv_func_getcwd_vs_path_max=no])])
6989
6990   if test $gl_cv_func_getcwd_vs_path_max = yes; then
6991     AC_LIBOBJ(getcwd)
6992     AC_DEFINE(getcwd, rpl_getcwd,
6993       [Define to rpl_getcwd if the wrapper function should be used.])
6994   fi
6995 ])
6996
6997 #serial 7
6998
6999 dnl SunOS's readdir is broken in such a way that rm.c has to add extra code
7000 dnl to test whether a NULL return value really means there are no more files
7001 dnl in the directory.
7002 dnl
7003 dnl And the rm from coreutils-5.0 exposes a similar problem when there
7004 dnl are 338 or more files in a directory on a Darwin-6.5 system
7005 dnl
7006 dnl Detect the problem by creating a directory containing 500 files (254 not
7007 dnl counting . and .. is the minimum for SunOS, 338 for Darwin) and see
7008 dnl if a loop doing `readdir; unlink' removes all of them.
7009 dnl
7010 dnl Define HAVE_WORKING_READDIR if readdir does *not* have this problem.
7011
7012 dnl Written by Jim Meyering.
7013
7014 AC_DEFUN([GL_FUNC_READDIR],
7015 [dnl
7016 AC_REQUIRE([AC_HEADER_DIRENT])
7017 AC_CACHE_CHECK([for working readdir], gl_cv_func_working_readdir,
7018   [dnl
7019   # Arrange for deletion of the temporary directory this test creates, in
7020   # case the test itself fails to delete everything -- as happens on Sunos.
7021   ac_clean_files="$ac_clean_files conf-dir"
7022
7023   AC_TRY_RUN(
7024 [#   include <stdio.h>
7025 #   include <sys/types.h>
7026 #   include <string.h>
7027
7028 #   ifdef HAVE_DIRENT_H
7029 #    include <dirent.h>
7030 #    define NLENGTH(direct) (strlen((direct)->d_name))
7031 #   else /* not HAVE_DIRENT_H */
7032 #    define dirent direct
7033 #    define NLENGTH(direct) ((direct)->d_namlen)
7034 #    ifdef HAVE_SYS_NDIR_H
7035 #     include <sys/ndir.h>
7036 #    endif /* HAVE_SYS_NDIR_H */
7037 #    ifdef HAVE_SYS_DIR_H
7038 #     include <sys/dir.h>
7039 #    endif /* HAVE_SYS_DIR_H */
7040 #    ifdef HAVE_NDIR_H
7041 #     include <ndir.h>
7042 #    endif /* HAVE_NDIR_H */
7043 #   endif /* HAVE_DIRENT_H */
7044
7045 #   define DOT_OR_DOTDOT(Basename) \
7046      (Basename[0] == '.' && (Basename[1] == '\0' \
7047                              || (Basename[1] == '.' && Basename[2] == '\0')))
7048
7049 /* Don't try to use replacement mkdir; it wouldn't resolve at link time.  */
7050 #   undef mkdir
7051
7052     static void
7053     create_N_file_dir (const char *dir, size_t n_files)
7054     {
7055       unsigned int i;
7056
7057       if (mkdir (dir, 0700))
7058         abort ();
7059       if (chdir (dir))
7060         abort ();
7061
7062       for (i = 0; i < n_files; i++)
7063         {
7064           char file_name[4];
7065           FILE *out;
7066
7067           sprintf (file_name, "%03d", i);
7068           out = fopen (file_name, "w");
7069           if (!out)
7070             abort ();
7071           if (fclose (out) == EOF)
7072             abort ();
7073         }
7074
7075       if (chdir (".."))
7076         abort ();
7077     }
7078
7079     static void
7080     remove_dir (const char *dir)
7081     {
7082       DIR *dirp;
7083
7084       if (chdir (dir))
7085         abort ();
7086
7087       dirp = opendir (".");
7088       if (dirp == NULL)
7089         abort ();
7090
7091       while (1)
7092         {
7093           struct dirent *dp = readdir (dirp);
7094           if (dp == NULL)
7095             break;
7096
7097           if (DOT_OR_DOTDOT (dp->d_name))
7098             continue;
7099
7100           if (unlink (dp->d_name))
7101             abort ();
7102         }
7103       closedir (dirp);
7104
7105       if (chdir (".."))
7106         abort ();
7107
7108       if (rmdir (dir))
7109         exit (1);
7110     }
7111
7112     int
7113     main ()
7114     {
7115       const char *dir = "conf-dir";
7116       create_N_file_dir (dir, 500);
7117       remove_dir (dir);
7118       exit (0);
7119     }],
7120   gl_cv_func_working_readdir=yes,
7121   gl_cv_func_working_readdir=no,
7122   gl_cv_func_working_readdir=no)])
7123
7124   if test $gl_cv_func_working_readdir = yes; then
7125     AC_DEFINE(HAVE_WORKING_READDIR, 1,
7126       [Define if readdir is found to work properly in some unusual cases. ])
7127   fi
7128 ])
7129
7130 # codeset.m4 serial AM1 (gettext-0.10.40)
7131 dnl Copyright (C) 2000-2002 Free Software Foundation, Inc.
7132 dnl This file is free software, distributed under the terms of the GNU
7133 dnl General Public License.  As a special exception to the GNU General
7134 dnl Public License, this file may be distributed as part of a program
7135 dnl that contains a configuration script generated by Autoconf, under
7136 dnl the same distribution terms as the rest of that program.
7137
7138 dnl From Bruno Haible.
7139
7140 AC_DEFUN([AM_LANGINFO_CODESET],
7141 [
7142   AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset,
7143     [AC_TRY_LINK([#include <langinfo.h>],
7144       [char* cs = nl_langinfo(CODESET);],
7145       am_cv_langinfo_codeset=yes,
7146       am_cv_langinfo_codeset=no)
7147     ])
7148   if test $am_cv_langinfo_codeset = yes; then
7149     AC_DEFINE(HAVE_LANGINFO_CODESET, 1,
7150       [Define if you have <langinfo.h> and nl_langinfo(CODESET).])
7151   fi
7152 ])
7153
7154 # glibc21.m4 serial 2 (fileutils-4.1.3, gettext-0.10.40)
7155 dnl Copyright (C) 2000-2002 Free Software Foundation, Inc.
7156 dnl This file is free software, distributed under the terms of the GNU
7157 dnl General Public License.  As a special exception to the GNU General
7158 dnl Public License, this file may be distributed as part of a program
7159 dnl that contains a configuration script generated by Autoconf, under
7160 dnl the same distribution terms as the rest of that program.
7161
7162 # Test for the GNU C Library, version 2.1 or newer.
7163 # From Bruno Haible.
7164
7165 AC_DEFUN([jm_GLIBC21],
7166   [
7167     AC_CACHE_CHECK(whether we are using the GNU C Library 2.1 or newer,
7168       ac_cv_gnu_library_2_1,
7169       [AC_EGREP_CPP([Lucky GNU user],
7170         [
7171 #include <features.h>
7172 #ifdef __GNU_LIBRARY__
7173  #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2)
7174   Lucky GNU user
7175  #endif
7176 #endif
7177         ],
7178         ac_cv_gnu_library_2_1=yes,
7179         ac_cv_gnu_library_2_1=no)
7180       ]
7181     )
7182     AC_SUBST(GLIBC21)
7183     GLIBC21="$ac_cv_gnu_library_2_1"
7184   ]
7185 )
7186
7187 # iconv.m4 serial AM4 (gettext-0.11.3)
7188 dnl Copyright (C) 2000-2002 Free Software Foundation, Inc.
7189 dnl This file is free software, distributed under the terms of the GNU
7190 dnl General Public License.  As a special exception to the GNU General
7191 dnl Public License, this file may be distributed as part of a program
7192 dnl that contains a configuration script generated by Autoconf, under
7193 dnl the same distribution terms as the rest of that program.
7194
7195 dnl From Bruno Haible.
7196
7197 AC_DEFUN([AM_ICONV_LINKFLAGS_BODY],
7198 [
7199   dnl Prerequisites of AC_LIB_LINKFLAGS_BODY.
7200   AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
7201   AC_REQUIRE([AC_LIB_RPATH])
7202
7203   dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
7204   dnl accordingly.
7205   AC_LIB_LINKFLAGS_BODY([iconv])
7206 ])
7207
7208 AC_DEFUN([AM_ICONV_LINK],
7209 [
7210   dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
7211   dnl those with the standalone portable GNU libiconv installed).
7212
7213   dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
7214   dnl accordingly.
7215   AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
7216
7217   dnl Add $INCICONV to CPPFLAGS before performing the following checks,
7218   dnl because if the user has installed libiconv and not disabled its use
7219   dnl via --without-libiconv-prefix, he wants to use it. The first
7220   dnl AC_TRY_LINK will then fail, the second AC_TRY_LINK will succeed.
7221   am_save_CPPFLAGS="$CPPFLAGS"
7222   AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV])
7223
7224   AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [
7225     am_cv_func_iconv="no, consider installing GNU libiconv"
7226     am_cv_lib_iconv=no
7227     AC_TRY_LINK([#include <stdlib.h>
7228 #include <iconv.h>],
7229       [iconv_t cd = iconv_open("","");
7230        iconv(cd,NULL,NULL,NULL,NULL);
7231        iconv_close(cd);],
7232       am_cv_func_iconv=yes)
7233     if test "$am_cv_func_iconv" != yes; then
7234       am_save_LIBS="$LIBS"
7235       LIBS="$LIBS $LIBICONV"
7236       AC_TRY_LINK([#include <stdlib.h>
7237 #include <iconv.h>],
7238         [iconv_t cd = iconv_open("","");
7239          iconv(cd,NULL,NULL,NULL,NULL);
7240          iconv_close(cd);],
7241         am_cv_lib_iconv=yes
7242         am_cv_func_iconv=yes)
7243       LIBS="$am_save_LIBS"
7244     fi
7245   ])
7246   if test "$am_cv_func_iconv" = yes; then
7247     AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.])
7248   fi
7249   if test "$am_cv_lib_iconv" = yes; then
7250     AC_MSG_CHECKING([how to link with libiconv])
7251     AC_MSG_RESULT([$LIBICONV])
7252   else
7253     dnl If $LIBICONV didn't lead to a usable library, we don't need $INCICONV
7254     dnl either.
7255     CPPFLAGS="$am_save_CPPFLAGS"
7256     LIBICONV=
7257     LTLIBICONV=
7258   fi
7259   AC_SUBST(LIBICONV)
7260   AC_SUBST(LTLIBICONV)
7261 ])
7262
7263 AC_DEFUN([AM_ICONV],
7264 [
7265   AM_ICONV_LINK
7266   if test "$am_cv_func_iconv" = yes; then
7267     AC_MSG_CHECKING([for iconv declaration])
7268     AC_CACHE_VAL(am_cv_proto_iconv, [
7269       AC_TRY_COMPILE([
7270 #include <stdlib.h>
7271 #include <iconv.h>
7272 extern
7273 #ifdef __cplusplus
7274 "C"
7275 #endif
7276 #if defined(__STDC__) || defined(__cplusplus)
7277 size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
7278 #else
7279 size_t iconv();
7280 #endif
7281 ], [], am_cv_proto_iconv_arg1="", am_cv_proto_iconv_arg1="const")
7282       am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"])
7283     am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
7284     AC_MSG_RESULT([$]{ac_t:-
7285          }[$]am_cv_proto_iconv)
7286     AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1,
7287       [Define as const if the declaration of iconv() needs const.])
7288   fi
7289 ])
7290
7291 # lib-prefix.m4 serial 2 (gettext-0.12)
7292 dnl Copyright (C) 2001-2003 Free Software Foundation, Inc.
7293 dnl This file is free software, distributed under the terms of the GNU
7294 dnl General Public License.  As a special exception to the GNU General
7295 dnl Public License, this file may be distributed as part of a program
7296 dnl that contains a configuration script generated by Autoconf, under
7297 dnl the same distribution terms as the rest of that program.
7298
7299 dnl From Bruno Haible.
7300
7301 dnl AC_LIB_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and
7302 dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't
7303 dnl require excessive bracketing.
7304 ifdef([AC_HELP_STRING],
7305 [AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])],
7306 [AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])])
7307
7308 dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed
7309 dnl to access previously installed libraries. The basic assumption is that
7310 dnl a user will want packages to use other packages he previously installed
7311 dnl with the same --prefix option.
7312 dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate
7313 dnl libraries, but is otherwise very convenient.
7314 AC_DEFUN([AC_LIB_PREFIX],
7315 [
7316   AC_BEFORE([$0], [AC_LIB_LINKFLAGS])
7317   AC_REQUIRE([AC_PROG_CC])
7318   AC_REQUIRE([AC_CANONICAL_HOST])
7319   AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
7320   dnl By default, look in $includedir and $libdir.
7321   use_additional=yes
7322   AC_LIB_WITH_FINAL_PREFIX([
7323     eval additional_includedir=\"$includedir\"
7324     eval additional_libdir=\"$libdir\"
7325   ])
7326   AC_LIB_ARG_WITH([lib-prefix],
7327 [  --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib
7328   --without-lib-prefix    don't search for libraries in includedir and libdir],
7329 [
7330     if test "X$withval" = "Xno"; then
7331       use_additional=no
7332     else
7333       if test "X$withval" = "X"; then
7334         AC_LIB_WITH_FINAL_PREFIX([
7335           eval additional_includedir=\"$includedir\"
7336           eval additional_libdir=\"$libdir\"
7337         ])
7338       else
7339         additional_includedir="$withval/include"
7340         additional_libdir="$withval/lib"
7341       fi
7342     fi
7343 ])
7344   if test $use_additional = yes; then
7345     dnl Potentially add $additional_includedir to $CPPFLAGS.
7346     dnl But don't add it
7347     dnl   1. if it's the standard /usr/include,
7348     dnl   2. if it's already present in $CPPFLAGS,
7349     dnl   3. if it's /usr/local/include and we are using GCC on Linux,
7350     dnl   4. if it doesn't exist as a directory.
7351     if test "X$additional_includedir" != "X/usr/include"; then
7352       haveit=
7353       for x in $CPPFLAGS; do
7354         AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
7355         if test "X$x" = "X-I$additional_includedir"; then
7356           haveit=yes
7357           break
7358         fi
7359       done
7360       if test -z "$haveit"; then
7361         if test "X$additional_includedir" = "X/usr/local/include"; then
7362           if test -n "$GCC"; then
7363             case $host_os in
7364               linux*) haveit=yes;;
7365             esac
7366           fi
7367         fi
7368         if test -z "$haveit"; then
7369           if test -d "$additional_includedir"; then
7370             dnl Really add $additional_includedir to $CPPFLAGS.
7371             CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir"
7372           fi
7373         fi
7374       fi
7375     fi
7376     dnl Potentially add $additional_libdir to $LDFLAGS.
7377     dnl But don't add it
7378     dnl   1. if it's the standard /usr/lib,
7379     dnl   2. if it's already present in $LDFLAGS,
7380     dnl   3. if it's /usr/local/lib and we are using GCC on Linux,
7381     dnl   4. if it doesn't exist as a directory.
7382     if test "X$additional_libdir" != "X/usr/lib"; then
7383       haveit=
7384       for x in $LDFLAGS; do
7385         AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
7386         if test "X$x" = "X-L$additional_libdir"; then
7387           haveit=yes
7388           break
7389         fi
7390       done
7391       if test -z "$haveit"; then
7392         if test "X$additional_libdir" = "X/usr/local/lib"; then
7393           if test -n "$GCC"; then
7394             case $host_os in
7395               linux*) haveit=yes;;
7396             esac
7397           fi
7398         fi
7399         if test -z "$haveit"; then
7400           if test -d "$additional_libdir"; then
7401             dnl Really add $additional_libdir to $LDFLAGS.
7402             LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir"
7403           fi
7404         fi
7405       fi
7406     fi
7407   fi
7408 ])
7409
7410 dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix,
7411 dnl acl_final_exec_prefix, containing the values to which $prefix and
7412 dnl $exec_prefix will expand at the end of the configure script.
7413 AC_DEFUN([AC_LIB_PREPARE_PREFIX],
7414 [
7415   dnl Unfortunately, prefix and exec_prefix get only finally determined
7416   dnl at the end of configure.
7417   if test "X$prefix" = "XNONE"; then
7418     acl_final_prefix="$ac_default_prefix"
7419   else
7420     acl_final_prefix="$prefix"
7421   fi
7422   if test "X$exec_prefix" = "XNONE"; then
7423     acl_final_exec_prefix='${prefix}'
7424   else
7425     acl_final_exec_prefix="$exec_prefix"
7426   fi
7427   acl_save_prefix="$prefix"
7428   prefix="$acl_final_prefix"
7429   eval acl_final_exec_prefix=\"$acl_final_exec_prefix\"
7430   prefix="$acl_save_prefix"
7431 ])
7432
7433 dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the
7434 dnl variables prefix and exec_prefix bound to the values they will have
7435 dnl at the end of the configure script.
7436 AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX],
7437 [
7438   acl_save_prefix="$prefix"
7439   prefix="$acl_final_prefix"
7440   acl_save_exec_prefix="$exec_prefix"
7441   exec_prefix="$acl_final_exec_prefix"
7442   $1
7443   exec_prefix="$acl_save_exec_prefix"
7444   prefix="$acl_save_prefix"
7445 ])
7446
7447 # lib-link.m4 serial 4 (gettext-0.12)
7448 dnl Copyright (C) 2001-2003 Free Software Foundation, Inc.
7449 dnl This file is free software, distributed under the terms of the GNU
7450 dnl General Public License.  As a special exception to the GNU General
7451 dnl Public License, this file may be distributed as part of a program
7452 dnl that contains a configuration script generated by Autoconf, under
7453 dnl the same distribution terms as the rest of that program.
7454
7455 dnl From Bruno Haible.
7456
7457 dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and
7458 dnl the libraries corresponding to explicit and implicit dependencies.
7459 dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and
7460 dnl augments the CPPFLAGS variable.
7461 AC_DEFUN([AC_LIB_LINKFLAGS],
7462 [
7463   AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
7464   AC_REQUIRE([AC_LIB_RPATH])
7465   define([Name],[translit([$1],[./-], [___])])
7466   define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
7467                                [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
7468   AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [
7469     AC_LIB_LINKFLAGS_BODY([$1], [$2])
7470     ac_cv_lib[]Name[]_libs="$LIB[]NAME"
7471     ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME"
7472     ac_cv_lib[]Name[]_cppflags="$INC[]NAME"
7473   ])
7474   LIB[]NAME="$ac_cv_lib[]Name[]_libs"
7475   LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs"
7476   INC[]NAME="$ac_cv_lib[]Name[]_cppflags"
7477   AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
7478   AC_SUBST([LIB]NAME)
7479   AC_SUBST([LTLIB]NAME)
7480   dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the
7481   dnl results of this search when this library appears as a dependency.
7482   HAVE_LIB[]NAME=yes
7483   undefine([Name])
7484   undefine([NAME])
7485 ])
7486
7487 dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode)
7488 dnl searches for libname and the libraries corresponding to explicit and
7489 dnl implicit dependencies, together with the specified include files and
7490 dnl the ability to compile and link the specified testcode. If found, it
7491 dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and
7492 dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and
7493 dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs
7494 dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty.
7495 AC_DEFUN([AC_LIB_HAVE_LINKFLAGS],
7496 [
7497   AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
7498   AC_REQUIRE([AC_LIB_RPATH])
7499   define([Name],[translit([$1],[./-], [___])])
7500   define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
7501                                [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
7502
7503   dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME
7504   dnl accordingly.
7505   AC_LIB_LINKFLAGS_BODY([$1], [$2])
7506
7507   dnl Add $INC[]NAME to CPPFLAGS before performing the following checks,
7508   dnl because if the user has installed lib[]Name and not disabled its use
7509   dnl via --without-lib[]Name-prefix, he wants to use it.
7510   ac_save_CPPFLAGS="$CPPFLAGS"
7511   AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
7512
7513   AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [
7514     ac_save_LIBS="$LIBS"
7515     LIBS="$LIBS $LIB[]NAME"
7516     AC_TRY_LINK([$3], [$4], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name=no])
7517     LIBS="$ac_save_LIBS"
7518   ])
7519   if test "$ac_cv_lib[]Name" = yes; then
7520     HAVE_LIB[]NAME=yes
7521     AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the $1 library.])
7522     AC_MSG_CHECKING([how to link with lib[]$1])
7523     AC_MSG_RESULT([$LIB[]NAME])
7524   else
7525     HAVE_LIB[]NAME=no
7526     dnl If $LIB[]NAME didn't lead to a usable library, we don't need
7527     dnl $INC[]NAME either.
7528     CPPFLAGS="$ac_save_CPPFLAGS"
7529     LIB[]NAME=
7530     LTLIB[]NAME=
7531   fi
7532   AC_SUBST([HAVE_LIB]NAME)
7533   AC_SUBST([LIB]NAME)
7534   AC_SUBST([LTLIB]NAME)
7535   undefine([Name])
7536   undefine([NAME])
7537 ])
7538
7539 dnl Determine the platform dependent parameters needed to use rpath:
7540 dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator,
7541 dnl hardcode_direct, hardcode_minus_L.
7542 AC_DEFUN([AC_LIB_RPATH],
7543 [
7544   AC_REQUIRE([AC_PROG_CC])                dnl we use $CC, $GCC, $LDFLAGS
7545   AC_REQUIRE([AC_LIB_PROG_LD])            dnl we use $LD, $with_gnu_ld
7546   AC_REQUIRE([AC_CANONICAL_HOST])         dnl we use $host
7547   AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir
7548   AC_CACHE_CHECK([for shared library run path origin], acl_cv_rpath, [
7549     CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
7550     ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh
7551     . ./conftest.sh
7552     rm -f ./conftest.sh
7553     acl_cv_rpath=done
7554   ])
7555   wl="$acl_cv_wl"
7556   libext="$acl_cv_libext"
7557   shlibext="$acl_cv_shlibext"
7558   hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
7559   hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
7560   hardcode_direct="$acl_cv_hardcode_direct"
7561   hardcode_minus_L="$acl_cv_hardcode_minus_L"
7562   dnl Determine whether the user wants rpath handling at all.
7563   AC_ARG_ENABLE(rpath,
7564     [  --disable-rpath         do not hardcode runtime library paths],
7565     :, enable_rpath=yes)
7566 ])
7567
7568 dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and
7569 dnl the libraries corresponding to explicit and implicit dependencies.
7570 dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables.
7571 AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
7572 [
7573   define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
7574                                [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
7575   dnl By default, look in $includedir and $libdir.
7576   use_additional=yes
7577   AC_LIB_WITH_FINAL_PREFIX([
7578     eval additional_includedir=\"$includedir\"
7579     eval additional_libdir=\"$libdir\"
7580   ])
7581   AC_LIB_ARG_WITH([lib$1-prefix],
7582 [  --with-lib$1-prefix[=DIR]  search for lib$1 in DIR/include and DIR/lib
7583   --without-lib$1-prefix     don't search for lib$1 in includedir and libdir],
7584 [
7585     if test "X$withval" = "Xno"; then
7586       use_additional=no
7587     else
7588       if test "X$withval" = "X"; then
7589         AC_LIB_WITH_FINAL_PREFIX([
7590           eval additional_includedir=\"$includedir\"
7591           eval additional_libdir=\"$libdir\"
7592         ])
7593       else
7594         additional_includedir="$withval/include"
7595         additional_libdir="$withval/lib"
7596       fi
7597     fi
7598 ])
7599   dnl Search the library and its dependencies in $additional_libdir and
7600   dnl $LDFLAGS. Using breadth-first-seach.
7601   LIB[]NAME=
7602   LTLIB[]NAME=
7603   INC[]NAME=
7604   rpathdirs=
7605   ltrpathdirs=
7606   names_already_handled=
7607   names_next_round='$1 $2'
7608   while test -n "$names_next_round"; do
7609     names_this_round="$names_next_round"
7610     names_next_round=
7611     for name in $names_this_round; do
7612       already_handled=
7613       for n in $names_already_handled; do
7614         if test "$n" = "$name"; then
7615           already_handled=yes
7616           break
7617         fi
7618       done
7619       if test -z "$already_handled"; then
7620         names_already_handled="$names_already_handled $name"
7621         dnl See if it was already located by an earlier AC_LIB_LINKFLAGS
7622         dnl or AC_LIB_HAVE_LINKFLAGS call.
7623         uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
7624         eval value=\"\$HAVE_LIB$uppername\"
7625         if test -n "$value"; then
7626           if test "$value" = yes; then
7627             eval value=\"\$LIB$uppername\"
7628             test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value"
7629             eval value=\"\$LTLIB$uppername\"
7630             test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value"
7631           else
7632             dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined
7633             dnl that this library doesn't exist. So just drop it.
7634             :
7635           fi
7636         else
7637           dnl Search the library lib$name in $additional_libdir and $LDFLAGS
7638           dnl and the already constructed $LIBNAME/$LTLIBNAME.
7639           found_dir=
7640           found_la=
7641           found_so=
7642           found_a=
7643           if test $use_additional = yes; then
7644             if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
7645               found_dir="$additional_libdir"
7646               found_so="$additional_libdir/lib$name.$shlibext"
7647               if test -f "$additional_libdir/lib$name.la"; then
7648                 found_la="$additional_libdir/lib$name.la"
7649               fi
7650             else
7651               if test -f "$additional_libdir/lib$name.$libext"; then
7652                 found_dir="$additional_libdir"
7653                 found_a="$additional_libdir/lib$name.$libext"
7654                 if test -f "$additional_libdir/lib$name.la"; then
7655                   found_la="$additional_libdir/lib$name.la"
7656                 fi
7657               fi
7658             fi
7659           fi
7660           if test "X$found_dir" = "X"; then
7661             for x in $LDFLAGS $LTLIB[]NAME; do
7662               AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
7663               case "$x" in
7664                 -L*)
7665                   dir=`echo "X$x" | sed -e 's/^X-L//'`
7666                   if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
7667                     found_dir="$dir"
7668                     found_so="$dir/lib$name.$shlibext"
7669                     if test -f "$dir/lib$name.la"; then
7670                       found_la="$dir/lib$name.la"
7671                     fi
7672                   else
7673                     if test -f "$dir/lib$name.$libext"; then
7674                       found_dir="$dir"
7675                       found_a="$dir/lib$name.$libext"
7676                       if test -f "$dir/lib$name.la"; then
7677                         found_la="$dir/lib$name.la"
7678                       fi
7679                     fi
7680                   fi
7681                   ;;
7682               esac
7683               if test "X$found_dir" != "X"; then
7684                 break
7685               fi
7686             done
7687           fi
7688           if test "X$found_dir" != "X"; then
7689             dnl Found the library.
7690             LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name"
7691             if test "X$found_so" != "X"; then
7692               dnl Linking with a shared library. We attempt to hardcode its
7693               dnl directory into the executable's runpath, unless it's the
7694               dnl standard /usr/lib.
7695               if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then
7696                 dnl No hardcoding is needed.
7697                 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
7698               else
7699                 dnl Use an explicit option to hardcode DIR into the resulting
7700                 dnl binary.
7701                 dnl Potentially add DIR to ltrpathdirs.
7702                 dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
7703                 haveit=
7704                 for x in $ltrpathdirs; do
7705                   if test "X$x" = "X$found_dir"; then
7706                     haveit=yes
7707                     break
7708                   fi
7709                 done
7710                 if test -z "$haveit"; then
7711                   ltrpathdirs="$ltrpathdirs $found_dir"
7712                 fi
7713                 dnl The hardcoding into $LIBNAME is system dependent.
7714                 if test "$hardcode_direct" = yes; then
7715                   dnl Using DIR/libNAME.so during linking hardcodes DIR into the
7716                   dnl resulting binary.
7717                   LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
7718                 else
7719                   if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
7720                     dnl Use an explicit option to hardcode DIR into the resulting
7721                     dnl binary.
7722                     LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
7723                     dnl Potentially add DIR to rpathdirs.
7724                     dnl The rpathdirs will be appended to $LIBNAME at the end.
7725                     haveit=
7726                     for x in $rpathdirs; do
7727                       if test "X$x" = "X$found_dir"; then
7728                         haveit=yes
7729                         break
7730                       fi
7731                     done
7732                     if test -z "$haveit"; then
7733                       rpathdirs="$rpathdirs $found_dir"
7734                     fi
7735                   else
7736                     dnl Rely on "-L$found_dir".
7737                     dnl But don't add it if it's already contained in the LDFLAGS
7738                     dnl or the already constructed $LIBNAME
7739                     haveit=
7740                     for x in $LDFLAGS $LIB[]NAME; do
7741                       AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
7742                       if test "X$x" = "X-L$found_dir"; then
7743                         haveit=yes
7744                         break
7745                       fi
7746                     done
7747                     if test -z "$haveit"; then
7748                       LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir"
7749                     fi
7750                     if test "$hardcode_minus_L" != no; then
7751                       dnl FIXME: Not sure whether we should use
7752                       dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
7753                       dnl here.
7754                       LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
7755                     else
7756                       dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH
7757                       dnl here, because this doesn't fit in flags passed to the
7758                       dnl compiler. So give up. No hardcoding. This affects only
7759                       dnl very old systems.
7760                       dnl FIXME: Not sure whether we should use
7761                       dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
7762                       dnl here.
7763                       LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name"
7764                     fi
7765                   fi
7766                 fi
7767               fi
7768             else
7769               if test "X$found_a" != "X"; then
7770                 dnl Linking with a static library.
7771                 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a"
7772               else
7773                 dnl We shouldn't come here, but anyway it's good to have a
7774                 dnl fallback.
7775                 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name"
7776               fi
7777             fi
7778             dnl Assume the include files are nearby.
7779             additional_includedir=
7780             case "$found_dir" in
7781               */lib | */lib/)
7782                 basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'`
7783                 additional_includedir="$basedir/include"
7784                 ;;
7785             esac
7786             if test "X$additional_includedir" != "X"; then
7787               dnl Potentially add $additional_includedir to $INCNAME.
7788               dnl But don't add it
7789               dnl   1. if it's the standard /usr/include,
7790               dnl   2. if it's /usr/local/include and we are using GCC on Linux,
7791               dnl   3. if it's already present in $CPPFLAGS or the already
7792               dnl      constructed $INCNAME,
7793               dnl   4. if it doesn't exist as a directory.
7794               if test "X$additional_includedir" != "X/usr/include"; then
7795                 haveit=
7796                 if test "X$additional_includedir" = "X/usr/local/include"; then
7797                   if test -n "$GCC"; then
7798                     case $host_os in
7799                       linux*) haveit=yes;;
7800                     esac
7801                   fi
7802                 fi
7803                 if test -z "$haveit"; then
7804                   for x in $CPPFLAGS $INC[]NAME; do
7805                     AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
7806                     if test "X$x" = "X-I$additional_includedir"; then
7807                       haveit=yes
7808                       break
7809                     fi
7810                   done
7811                   if test -z "$haveit"; then
7812                     if test -d "$additional_includedir"; then
7813                       dnl Really add $additional_includedir to $INCNAME.
7814                       INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir"
7815                     fi
7816                   fi
7817                 fi
7818               fi
7819             fi
7820             dnl Look for dependencies.
7821             if test -n "$found_la"; then
7822               dnl Read the .la file. It defines the variables
7823               dnl dlname, library_names, old_library, dependency_libs, current,
7824               dnl age, revision, installed, dlopen, dlpreopen, libdir.
7825               save_libdir="$libdir"
7826               case "$found_la" in
7827                 */* | *\\*) . "$found_la" ;;
7828                 *) . "./$found_la" ;;
7829               esac
7830               libdir="$save_libdir"
7831               dnl We use only dependency_libs.
7832               for dep in $dependency_libs; do
7833                 case "$dep" in
7834                   -L*)
7835                     additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
7836                     dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME.
7837                     dnl But don't add it
7838                     dnl   1. if it's the standard /usr/lib,
7839                     dnl   2. if it's /usr/local/lib and we are using GCC on Linux,
7840                     dnl   3. if it's already present in $LDFLAGS or the already
7841                     dnl      constructed $LIBNAME,
7842                     dnl   4. if it doesn't exist as a directory.
7843                     if test "X$additional_libdir" != "X/usr/lib"; then
7844                       haveit=
7845                       if test "X$additional_libdir" = "X/usr/local/lib"; then
7846                         if test -n "$GCC"; then
7847                           case $host_os in
7848                             linux*) haveit=yes;;
7849                           esac
7850                         fi
7851                       fi
7852                       if test -z "$haveit"; then
7853                         haveit=
7854                         for x in $LDFLAGS $LIB[]NAME; do
7855                           AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
7856                           if test "X$x" = "X-L$additional_libdir"; then
7857                             haveit=yes
7858                             break
7859                           fi
7860                         done
7861                         if test -z "$haveit"; then
7862                           if test -d "$additional_libdir"; then
7863                             dnl Really add $additional_libdir to $LIBNAME.
7864                             LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir"
7865                           fi
7866                         fi
7867                         haveit=
7868                         for x in $LDFLAGS $LTLIB[]NAME; do
7869                           AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
7870                           if test "X$x" = "X-L$additional_libdir"; then
7871                             haveit=yes
7872                             break
7873                           fi
7874                         done
7875                         if test -z "$haveit"; then
7876                           if test -d "$additional_libdir"; then
7877                             dnl Really add $additional_libdir to $LTLIBNAME.
7878                             LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir"
7879                           fi
7880                         fi
7881                       fi
7882                     fi
7883                     ;;
7884                   -R*)
7885                     dir=`echo "X$dep" | sed -e 's/^X-R//'`
7886                     if test "$enable_rpath" != no; then
7887                       dnl Potentially add DIR to rpathdirs.
7888                       dnl The rpathdirs will be appended to $LIBNAME at the end.
7889                       haveit=
7890                       for x in $rpathdirs; do
7891                         if test "X$x" = "X$dir"; then
7892                           haveit=yes
7893                           break
7894                         fi
7895                       done
7896                       if test -z "$haveit"; then
7897                         rpathdirs="$rpathdirs $dir"
7898                       fi
7899                       dnl Potentially add DIR to ltrpathdirs.
7900                       dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
7901                       haveit=
7902                       for x in $ltrpathdirs; do
7903                         if test "X$x" = "X$dir"; then
7904                           haveit=yes
7905                           break
7906                         fi
7907                       done
7908                       if test -z "$haveit"; then
7909                         ltrpathdirs="$ltrpathdirs $dir"
7910                       fi
7911                     fi
7912                     ;;
7913                   -l*)
7914                     dnl Handle this in the next round.
7915                     names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
7916                     ;;
7917                   *.la)
7918                     dnl Handle this in the next round. Throw away the .la's
7919                     dnl directory; it is already contained in a preceding -L
7920                     dnl option.
7921                     names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
7922                     ;;
7923                   *)
7924                     dnl Most likely an immediate library name.
7925                     LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep"
7926                     LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep"
7927                     ;;
7928                 esac
7929               done
7930             fi
7931           else
7932             dnl Didn't find the library; assume it is in the system directories
7933             dnl known to the linker and runtime loader. (All the system
7934             dnl directories known to the linker should also be known to the
7935             dnl runtime loader, otherwise the system is severely misconfigured.)
7936             LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name"
7937             LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name"
7938           fi
7939         fi
7940       fi
7941     done
7942   done
7943   if test "X$rpathdirs" != "X"; then
7944     if test -n "$hardcode_libdir_separator"; then
7945       dnl Weird platform: only the last -rpath option counts, the user must
7946       dnl pass all path elements in one option. We can arrange that for a
7947       dnl single library, but not when more than one $LIBNAMEs are used.
7948       alldirs=
7949       for found_dir in $rpathdirs; do
7950         alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
7951       done
7952       dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl.
7953       acl_save_libdir="$libdir"
7954       libdir="$alldirs"
7955       eval flag=\"$hardcode_libdir_flag_spec\"
7956       libdir="$acl_save_libdir"
7957       LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
7958     else
7959       dnl The -rpath options are cumulative.
7960       for found_dir in $rpathdirs; do
7961         acl_save_libdir="$libdir"
7962         libdir="$found_dir"
7963         eval flag=\"$hardcode_libdir_flag_spec\"
7964         libdir="$acl_save_libdir"
7965         LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
7966       done
7967     fi
7968   fi
7969   if test "X$ltrpathdirs" != "X"; then
7970     dnl When using libtool, the option that works for both libraries and
7971     dnl executables is -R. The -R options are cumulative.
7972     for found_dir in $ltrpathdirs; do
7973       LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir"
7974     done
7975   fi
7976 ])
7977
7978 dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR,
7979 dnl unless already present in VAR.
7980 dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes
7981 dnl contains two or three consecutive elements that belong together.
7982 AC_DEFUN([AC_LIB_APPENDTOVAR],
7983 [
7984   for element in [$2]; do
7985     haveit=
7986     for x in $[$1]; do
7987       AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
7988       if test "X$x" = "X$element"; then
7989         haveit=yes
7990         break
7991       fi
7992     done
7993     if test -z "$haveit"; then
7994       [$1]="${[$1]}${[$1]:+ }$element"
7995     fi
7996   done
7997 ])
7998
7999 # lib-ld.m4 serial 1003 (gettext-0.12)
8000 dnl Copyright (C) 1996-2003 Free Software Foundation, Inc.
8001 dnl This file is free software, distributed under the terms of the GNU
8002 dnl General Public License.  As a special exception to the GNU General
8003 dnl Public License, this file may be distributed as part of a program
8004 dnl that contains a configuration script generated by Autoconf, under
8005 dnl the same distribution terms as the rest of that program.
8006
8007 dnl Subroutines of libtool.m4,
8008 dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision
8009 dnl with libtool.m4.
8010
8011 dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no.
8012 AC_DEFUN([AC_LIB_PROG_LD_GNU],
8013 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], acl_cv_prog_gnu_ld,
8014 [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
8015 if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
8016   acl_cv_prog_gnu_ld=yes
8017 else
8018   acl_cv_prog_gnu_ld=no
8019 fi])
8020 with_gnu_ld=$acl_cv_prog_gnu_ld
8021 ])
8022
8023 dnl From libtool-1.4. Sets the variable LD.
8024 AC_DEFUN([AC_LIB_PROG_LD],
8025 [AC_ARG_WITH(gnu-ld,
8026 [  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]],
8027 test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
8028 AC_REQUIRE([AC_PROG_CC])dnl
8029 AC_REQUIRE([AC_CANONICAL_HOST])dnl
8030 # Prepare PATH_SEPARATOR.
8031 # The user is always right.
8032 if test "${PATH_SEPARATOR+set}" != set; then
8033   echo "#! /bin/sh" >conf$$.sh
8034   echo  "exit 0"   >>conf$$.sh
8035   chmod +x conf$$.sh
8036   if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
8037     PATH_SEPARATOR=';'
8038   else
8039     PATH_SEPARATOR=:
8040   fi
8041   rm -f conf$$.sh
8042 fi
8043 ac_prog=ld
8044 if test "$GCC" = yes; then
8045   # Check if gcc -print-prog-name=ld gives a path.
8046   AC_MSG_CHECKING([for ld used by GCC])
8047   case $host in
8048   *-*-mingw*)
8049     # gcc leaves a trailing carriage return which upsets mingw
8050     ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
8051   *)
8052     ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
8053   esac
8054   case $ac_prog in
8055     # Accept absolute paths.
8056     [[\\/]* | [A-Za-z]:[\\/]*)]
8057       [re_direlt='/[^/][^/]*/\.\./']
8058       # Canonicalize the path of ld
8059       ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
8060       while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
8061         ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
8062       done
8063       test -z "$LD" && LD="$ac_prog"
8064       ;;
8065   "")
8066     # If it fails, then pretend we aren't using GCC.
8067     ac_prog=ld
8068     ;;
8069   *)
8070     # If it is relative, then search for the first ld in PATH.
8071     with_gnu_ld=unknown
8072     ;;
8073   esac
8074 elif test "$with_gnu_ld" = yes; then
8075   AC_MSG_CHECKING([for GNU ld])
8076 else
8077   AC_MSG_CHECKING([for non-GNU ld])
8078 fi
8079 AC_CACHE_VAL(acl_cv_path_LD,
8080 [if test -z "$LD"; then
8081   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
8082   for ac_dir in $PATH; do
8083     test -z "$ac_dir" && ac_dir=.
8084     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
8085       acl_cv_path_LD="$ac_dir/$ac_prog"
8086       # Check to see if the program is GNU ld.  I'd rather use --version,
8087       # but apparently some GNU ld's only accept -v.
8088       # Break only if it was the GNU/non-GNU ld that we prefer.
8089       if "$acl_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
8090         test "$with_gnu_ld" != no && break
8091       else
8092         test "$with_gnu_ld" != yes && break
8093       fi
8094     fi
8095   done
8096   IFS="$ac_save_ifs"
8097 else
8098   acl_cv_path_LD="$LD" # Let the user override the test with a path.
8099 fi])
8100 LD="$acl_cv_path_LD"
8101 if test -n "$LD"; then
8102   AC_MSG_RESULT($LD)
8103 else
8104   AC_MSG_RESULT(no)
8105 fi
8106 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
8107 AC_LIB_PROG_LD_GNU
8108 ])
8109
8110 #serial 6
8111
8112 dnl From J. David Anglin.
8113
8114 dnl HPUX and other systems can't unlink shared text that is being executed.
8115
8116 AC_DEFUN([jm_FUNC_UNLINK_BUSY_TEXT],
8117 [dnl
8118   AC_CACHE_CHECK([whether a running program can be unlinked],
8119     jm_cv_func_unlink_busy_text,
8120     [
8121       AC_TRY_RUN([
8122         main (argc, argv)
8123           int argc;
8124           char **argv;
8125         {
8126           if (!argc)
8127             exit (-1);
8128           exit (unlink (argv[0]));
8129         }
8130         ],
8131       jm_cv_func_unlink_busy_text=yes,
8132       jm_cv_func_unlink_busy_text=no,
8133       jm_cv_func_unlink_busy_text=no
8134       )
8135     ]
8136   )
8137
8138   if test $jm_cv_func_unlink_busy_text = no; then
8139     INSTALL=$ac_install_sh
8140   fi
8141 ])
8142
8143 #serial 1
8144 AC_DEFUN([AC_FUNC_CANONICALIZE_FILE_NAME],
8145   [
8146     AC_REQUIRE([AC_HEADER_STDC])
8147     AC_CHECK_HEADERS(string.h sys/param.h stddef.h)
8148     AC_CHECK_FUNCS(resolvepath)
8149     AC_REQUIRE([AC_HEADER_STAT])
8150
8151     # This would simply be AC_REPLACE_FUNC([canonicalize_file_name])
8152     # if the function name weren't so long.  Besides, I would rather
8153     # not have underscores in file names.
8154     AC_CHECK_FUNC([canonicalize_file_name], , [AC_LIBOBJ(canonicalize)])
8155   ])
8156
8157 # Check whether free (NULL) is supposed to work.
8158
8159 # Copyright (C) 2003 Free Software Foundation, Inc.
8160
8161 # This file is free software, distributed under the terms of the GNU
8162 # General Public License.  As a special exception to the GNU General
8163 # Public License, this file may be distributed as part of a program
8164 # that contains a configuration script generated by Autoconf, under
8165 # the same distribution terms as the rest of that program.
8166
8167 # Written by Paul Eggert.
8168
8169 # We can't test for free (NULL) even at runtime, since it might
8170 # happen to "work" for our test program, but not in general.  So, be
8171 # conservative and use feature tests for relatively modern hosts,
8172 # where free (NULL) is known to work.  This costs a bit of
8173 # performance on some older hosts, but we can fix that later if
8174 # needed.
8175
8176 AC_DEFUN([gl_FUNC_FREE],
8177 [
8178   AC_CHECK_HEADERS_ONCE(unistd.h)
8179   AC_CACHE_CHECK([whether free (NULL) is known to work],
8180     [gl_cv_func_free],
8181     [AC_COMPILE_IFELSE(
8182        [AC_LANG_PROGRAM(
8183           [[@%:@if HAVE_UNISTD_H
8184               @%:@include <unistd.h>
8185             @%:@endif]],
8186           [[@%:@if _POSIX_VERSION < 199009L && \
8187                 (defined unix || defined _unix || defined _unix_ \
8188                  || defined __unix || defined __unix__)
8189               @%:@error "'free (NULL)' is not known to work"
8190             @%:@endif]])],
8191        [gl_cv_func_free=yes],
8192        [gl_cv_func_free=no])])
8193
8194   if test $gl_cv_func_free = yes; then
8195     AC_LIBOBJ(free)
8196     AC_DEFINE(free, rpl_free,
8197       [Define to rpl_free if the replacement function should be used.])
8198   fi
8199 ])
8200
8201 # Prerequisites of lib/free.c.
8202 AC_DEFUN([gl_PREREQ_FREE], [:])
8203
8204
8205 # Copyright 1996, 1997, 1998, 2000, 2001, 2002  Free Software Foundation, Inc.
8206
8207 # This program is free software; you can redistribute it and/or modify
8208 # it under the terms of the GNU General Public License as published by
8209 # the Free Software Foundation; either version 2, or (at your option)
8210 # any later version.
8211
8212 # This program is distributed in the hope that it will be useful,
8213 # but WITHOUT ANY WARRANTY; without even the implied warranty of
8214 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
8215 # GNU General Public License for more details.
8216
8217 # You should have received a copy of the GNU General Public License
8218 # along with this program; if not, write to the Free Software
8219 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
8220 # 02111-1307, USA.
8221
8222 # serial 2
8223
8224 AC_DEFUN([AM_C_PROTOTYPES],
8225 [AC_REQUIRE([AM_PROG_CC_STDC])
8226 AC_REQUIRE([AC_PROG_CPP])
8227 AC_MSG_CHECKING([for function prototypes])
8228 if test "$am_cv_prog_cc_stdc" != no; then
8229   AC_MSG_RESULT(yes)
8230   AC_DEFINE(PROTOTYPES,1,[Define if compiler has function prototypes])
8231   U= ANSI2KNR=
8232 else
8233   AC_MSG_RESULT(no)
8234   U=_ ANSI2KNR=./ansi2knr
8235 fi
8236 # Ensure some checks needed by ansi2knr itself.
8237 AC_HEADER_STDC
8238 AC_CHECK_HEADERS(string.h)
8239 AC_SUBST(U)dnl
8240 AC_SUBST(ANSI2KNR)dnl
8241 ])
8242
8243 AU_DEFUN([fp_C_PROTOTYPES], [AM_C_PROTOTYPES])
8244
8245
8246 # Copyright 1996, 1997, 1999, 2000, 2001, 2002  Free Software Foundation, Inc.
8247
8248 # This program is free software; you can redistribute it and/or modify
8249 # it under the terms of the GNU General Public License as published by
8250 # the Free Software Foundation; either version 2, or (at your option)
8251 # any later version.
8252
8253 # This program is distributed in the hope that it will be useful,
8254 # but WITHOUT ANY WARRANTY; without even the implied warranty of
8255 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
8256 # GNU General Public License for more details.
8257
8258 # You should have received a copy of the GNU General Public License
8259 # along with this program; if not, write to the Free Software
8260 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
8261 # 02111-1307, USA.
8262
8263 # serial 2
8264
8265 # @defmac AC_PROG_CC_STDC
8266 # @maindex PROG_CC_STDC
8267 # @ovindex CC
8268 # If the C compiler in not in ANSI C mode by default, try to add an option
8269 # to output variable @code{CC} to make it so.  This macro tries various
8270 # options that select ANSI C on some system or another.  It considers the
8271 # compiler to be in ANSI C mode if it handles function prototypes correctly.
8272 #
8273 # If you use this macro, you should check after calling it whether the C
8274 # compiler has been set to accept ANSI C; if not, the shell variable
8275 # @code{am_cv_prog_cc_stdc} is set to @samp{no}.  If you wrote your source
8276 # code in ANSI C, you can make an un-ANSIfied copy of it by using the
8277 # program @code{ansi2knr}, which comes with Ghostscript.
8278 # @end defmac
8279
8280 AC_DEFUN([AM_PROG_CC_STDC],
8281 [AC_REQUIRE([AC_PROG_CC])
8282 AC_BEFORE([$0], [AC_C_INLINE])
8283 AC_BEFORE([$0], [AC_C_CONST])
8284 dnl Force this before AC_PROG_CPP.  Some cpp's, eg on HPUX, require
8285 dnl a magic option to avoid problems with ANSI preprocessor commands
8286 dnl like #elif.
8287 dnl FIXME: can't do this because then AC_AIX won't work due to a
8288 dnl circular dependency.
8289 dnl AC_BEFORE([$0], [AC_PROG_CPP])
8290 AC_MSG_CHECKING([for ${CC-cc} option to accept ANSI C])
8291 AC_CACHE_VAL(am_cv_prog_cc_stdc,
8292 [am_cv_prog_cc_stdc=no
8293 ac_save_CC="$CC"
8294 # Don't try gcc -ansi; that turns off useful extensions and
8295 # breaks some systems' header files.
8296 # AIX                   -qlanglvl=ansi
8297 # Ultrix and OSF/1      -std1
8298 # HP-UX 10.20 and later -Ae
8299 # HP-UX older versions  -Aa -D_HPUX_SOURCE
8300 # SVR4                  -Xc -D__EXTENSIONS__
8301 for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
8302 do
8303   CC="$ac_save_CC $ac_arg"
8304   AC_TRY_COMPILE(
8305 [#include <stdarg.h>
8306 #include <stdio.h>
8307 #include <sys/types.h>
8308 #include <sys/stat.h>
8309 /* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
8310 struct buf { int x; };
8311 FILE * (*rcsopen) (struct buf *, struct stat *, int);
8312 static char *e (p, i)
8313      char **p;
8314      int i;
8315 {
8316   return p[i];
8317 }
8318 static char *f (char * (*g) (char **, int), char **p, ...)
8319 {
8320   char *s;
8321   va_list v;
8322   va_start (v,p);
8323   s = g (p, va_arg (v,int));
8324   va_end (v);
8325   return s;
8326 }
8327 int test (int i, double x);
8328 struct s1 {int (*f) (int a);};
8329 struct s2 {int (*f) (double a);};
8330 int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
8331 int argc;
8332 char **argv;
8333 ], [
8334 return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
8335 ],
8336 [am_cv_prog_cc_stdc="$ac_arg"; break])
8337 done
8338 CC="$ac_save_CC"
8339 ])
8340 if test -z "$am_cv_prog_cc_stdc"; then
8341   AC_MSG_RESULT([none needed])
8342 else
8343   AC_MSG_RESULT([$am_cv_prog_cc_stdc])
8344 fi
8345 case "x$am_cv_prog_cc_stdc" in
8346   x|xno) ;;
8347   *) CC="$CC $am_cv_prog_cc_stdc" ;;
8348 esac
8349 ])
8350
8351 AU_DEFUN([fp_PROG_CC_STDC], [AM_PROG_CC_STDC])
8352
8353 #serial 3
8354
8355 # Define HAVE_ST_DM_MODE if struct stat has an st_dm_mode member.
8356
8357 AC_DEFUN([AC_STRUCT_ST_DM_MODE],
8358  [AC_CACHE_CHECK([for st_dm_mode in struct stat], ac_cv_struct_st_dm_mode,
8359    [AC_TRY_COMPILE([#include <sys/types.h>
8360 #include <sys/stat.h>], [struct stat s; s.st_dm_mode;],
8361      ac_cv_struct_st_dm_mode=yes,
8362      ac_cv_struct_st_dm_mode=no)])
8363
8364   if test $ac_cv_struct_st_dm_mode = yes; then
8365     AC_DEFINE(HAVE_ST_DM_MODE, 1,
8366               [Define if struct stat has an st_dm_mode member. ])
8367   fi
8368  ]
8369 )
8370
8371 #serial 6
8372 dnl From Jim Meyering and Paul Eggert.
8373 AC_DEFUN([jm_HEADER_TIOCGWINSZ_IN_TERMIOS_H],
8374 [AC_REQUIRE([AC_SYS_POSIX_TERMIOS])
8375  AC_CACHE_CHECK([whether use of TIOCGWINSZ requires termios.h],
8376                 jm_cv_sys_tiocgwinsz_needs_termios_h,
8377   [jm_cv_sys_tiocgwinsz_needs_termios_h=no
8378
8379    if test $ac_cv_sys_posix_termios = yes; then
8380      AC_EGREP_CPP([yes],
8381      [#include <sys/types.h>
8382 #      include <termios.h>
8383 #      ifdef TIOCGWINSZ
8384          yes
8385 #      endif
8386      ], jm_cv_sys_tiocgwinsz_needs_termios_h=yes)
8387    fi
8388   ])
8389 ])
8390
8391 AC_DEFUN([jm_WINSIZE_IN_PTEM],
8392   [AC_REQUIRE([AC_SYS_POSIX_TERMIOS])
8393    AC_CACHE_CHECK([whether use of struct winsize requires sys/ptem.h],
8394      jm_cv_sys_struct_winsize_needs_sys_ptem_h,
8395      [jm_cv_sys_struct_winsize_needs_sys_ptem_h=yes
8396       if test $ac_cv_sys_posix_termios = yes; then
8397         AC_TRY_COMPILE([#include <termios.h>]
8398           [struct winsize x;],
8399           [jm_cv_sys_struct_winsize_needs_sys_ptem_h=no])
8400       fi
8401       if test $jm_cv_sys_struct_winsize_needs_sys_ptem_h = yes; then
8402         AC_TRY_COMPILE([#include <sys/ptem.h>],
8403           [struct winsize x;],
8404           [], [jm_cv_sys_struct_winsize_needs_sys_ptem_h=no])
8405       fi])
8406    if test $jm_cv_sys_struct_winsize_needs_sys_ptem_h = yes; then
8407      AC_DEFINE([WINSIZE_IN_PTEM], 1,
8408        [Define if sys/ptem.h is required for struct winsize.])
8409    fi])
8410
8411 # Determine whether this system has infrastructure for obtaining the boot time.
8412
8413 # GNULIB_BOOT_TIME([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
8414 * ----------------------------------------------------------
8415 AC_DEFUN([GNULIB_BOOT_TIME],
8416 [
8417   AC_CHECK_FUNCS(sysctl)
8418   AC_CHECK_HEADERS(sys/sysctl.h)
8419   AC_CACHE_CHECK(
8420     [whether we can get the system boot time],
8421     [gnulib_cv_have_boot_time],
8422     [
8423       AC_COMPILE_IFELSE(
8424        [AC_LANG_PROGRAM(
8425 [AC_INCLUDES_DEFAULT
8426 #if HAVE_SYSCTL && HAVE_SYS_SYSCTL_H
8427 # include <sys/param.h> /* needed for OpenBSD 3.0 */
8428 # include <sys/sysctl.h>
8429 #endif
8430 #ifdef HAVE_UTMPX_H
8431 # include <utmpx.h>
8432 #else
8433 # include <utmp.h>
8434 #endif
8435 ],
8436 [[
8437 #if defined BOOT_TIME || (defined CTL_KERN && defined KERN_BOOTTIME)
8438 /* your system *does* have the infrastructure to determine boot time */
8439 #else
8440 please_tell_us_how_to_determine_boot_time_on_your_system
8441 #endif
8442 ]])],
8443        gnulib_cv_have_boot_time=yes,
8444        gnulib_cv_have_boot_time=no)
8445     ])
8446   AS_IF([test $gnulib_cv_have_boot_time = yes], [$1], [$2])
8447 ])
8448
8449 #serial 4
8450
8451 AC_DEFUN([jm_HEADER_TIOCGWINSZ_NEEDS_SYS_IOCTL],
8452 [AC_REQUIRE([jm_HEADER_TIOCGWINSZ_IN_TERMIOS_H])
8453  AC_CACHE_CHECK([whether use of TIOCGWINSZ requires sys/ioctl.h],
8454                 jm_cv_sys_tiocgwinsz_needs_sys_ioctl_h,
8455   [jm_cv_sys_tiocgwinsz_needs_sys_ioctl_h=no
8456
8457   if test $jm_cv_sys_tiocgwinsz_needs_termios_h = no; then
8458     AC_EGREP_CPP([yes],
8459     [#include <sys/types.h>
8460 #     include <sys/ioctl.h>
8461 #     ifdef TIOCGWINSZ
8462         yes
8463 #     endif
8464     ], jm_cv_sys_tiocgwinsz_needs_sys_ioctl_h=yes)
8465   fi
8466   ])
8467   if test $jm_cv_sys_tiocgwinsz_needs_sys_ioctl_h = yes; then
8468     AC_DEFINE(GWINSZ_IN_SYS_IOCTL, 1,
8469       [Define if your system defines TIOCGWINSZ in sys/ioctl.h.])
8470   fi
8471 ])
8472
8473 #serial 5
8474
8475 dnl Misc lib-related macros for fileutils, sh-utils, textutils.
8476
8477 AC_DEFUN([jm_LIB_CHECK],
8478 [
8479
8480   # Check for libypsec.a on Dolphin M88K machines.
8481   AC_CHECK_LIB(ypsec, main)
8482
8483   # m88k running dgux 5.4 needs this
8484   AC_CHECK_LIB(ldgc, main)
8485
8486   # Some programs need to link with -lm.  printf does if it uses
8487   # lib/strtod.c which uses pow.  And seq uses the math functions,
8488   # floor, modf, rint.  And factor uses sqrt.  And sleep uses fesetround.
8489
8490   # Save a copy of $LIBS and add $FLOOR_LIBM before these tests
8491   # Check for these math functions used by seq.
8492   ac_su_saved_lib="$LIBS"
8493   LIBS="$LIBS -lm"
8494   AC_CHECK_FUNCS(floor modf rint)
8495   LIBS="$ac_su_saved_lib"
8496
8497   AC_SUBST(SQRT_LIBM)
8498   AC_CHECK_FUNCS(sqrt)
8499   if test $ac_cv_func_sqrt = no; then
8500     AC_CHECK_LIB(m, sqrt, [SQRT_LIBM=-lm])
8501   fi
8502
8503   AC_SUBST(FESETROUND_LIBM)
8504   AC_CHECK_FUNCS(fesetround)
8505   if test $ac_cv_func_fesetround = no; then
8506     AC_CHECK_LIB(m, fesetround, [FESETROUND_LIBM=-lm])
8507   fi
8508
8509   # The -lsun library is required for YP support on Irix-4.0.5 systems.
8510   # m88k/svr3 DolphinOS systems using YP need -lypsec for id.
8511   AC_SEARCH_LIBS(yp_match, [sun ypsec])
8512
8513   # SysV needs -lsec, older versions of Linux need -lshadow for
8514   # shadow passwords.  UnixWare 7 needs -lgen.
8515   AC_SEARCH_LIBS(getspnam, [shadow sec gen])
8516
8517   AC_CHECK_HEADERS(shadow.h)
8518
8519   # Requirements for su.c.
8520   shadow_includes="\
8521 $ac_includes_default
8522 #if HAVE_SHADOW_H
8523 # include <shadow.h>
8524 #endif
8525 "
8526   AC_CHECK_MEMBERS([struct spwd.sp_pwdp],,,[$shadow_includes])
8527   AC_CHECK_FUNCS(getspnam)
8528
8529   # SCO-ODT-3.0 is reported to need -lufc for crypt.
8530   # NetBSD needs -lcrypt for crypt.
8531   ac_su_saved_lib="$LIBS"
8532   AC_SEARCH_LIBS(crypt, [ufc crypt], [LIB_CRYPT="$ac_cv_search_crypt"])
8533   LIBS="$ac_su_saved_lib"
8534   AC_SUBST(LIB_CRYPT)
8535 ])
8536
8537 # gettext.m4 serial 20 (gettext-0.12)
8538 dnl Copyright (C) 1995-2003 Free Software Foundation, Inc.
8539 dnl This file is free software, distributed under the terms of the GNU
8540 dnl General Public License.  As a special exception to the GNU General
8541 dnl Public License, this file may be distributed as part of a program
8542 dnl that contains a configuration script generated by Autoconf, under
8543 dnl the same distribution terms as the rest of that program.
8544 dnl
8545 dnl This file can can be used in projects which are not available under
8546 dnl the GNU General Public License or the GNU Library General Public
8547 dnl License but which still want to provide support for the GNU gettext
8548 dnl functionality.
8549 dnl Please note that the actual code of the GNU gettext library is covered
8550 dnl by the GNU Library General Public License, and the rest of the GNU
8551 dnl gettext package package is covered by the GNU General Public License.
8552 dnl They are *not* in the public domain.
8553
8554 dnl Authors:
8555 dnl   Ulrich Drepper <drepper@cygnus.com>, 1995-2000.
8556 dnl   Bruno Haible <haible@clisp.cons.org>, 2000-2003.
8557
8558 dnl Macro to add for using GNU gettext.
8559
8560 dnl Usage: AM_GNU_GETTEXT([INTLSYMBOL], [NEEDSYMBOL], [INTLDIR]).
8561 dnl INTLSYMBOL can be one of 'external', 'no-libtool', 'use-libtool'. The
8562 dnl    default (if it is not specified or empty) is 'no-libtool'.
8563 dnl    INTLSYMBOL should be 'external' for packages with no intl directory,
8564 dnl    and 'no-libtool' or 'use-libtool' for packages with an intl directory.
8565 dnl    If INTLSYMBOL is 'use-libtool', then a libtool library
8566 dnl    $(top_builddir)/intl/libintl.la will be created (shared and/or static,
8567 dnl    depending on --{enable,disable}-{shared,static} and on the presence of
8568 dnl    AM-DISABLE-SHARED). If INTLSYMBOL is 'no-libtool', a static library
8569 dnl    $(top_builddir)/intl/libintl.a will be created.
8570 dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext
8571 dnl    implementations (in libc or libintl) without the ngettext() function
8572 dnl    will be ignored.  If NEEDSYMBOL is specified and is
8573 dnl    'need-formatstring-macros', then GNU gettext implementations that don't
8574 dnl    support the ISO C 99 <inttypes.h> formatstring macros will be ignored.
8575 dnl INTLDIR is used to find the intl libraries.  If empty,
8576 dnl    the value `$(top_builddir)/intl/' is used.
8577 dnl
8578 dnl The result of the configuration is one of three cases:
8579 dnl 1) GNU gettext, as included in the intl subdirectory, will be compiled
8580 dnl    and used.
8581 dnl    Catalog format: GNU --> install in $(datadir)
8582 dnl    Catalog extension: .mo after installation, .gmo in source tree
8583 dnl 2) GNU gettext has been found in the system's C library.
8584 dnl    Catalog format: GNU --> install in $(datadir)
8585 dnl    Catalog extension: .mo after installation, .gmo in source tree
8586 dnl 3) No internationalization, always use English msgid.
8587 dnl    Catalog format: none
8588 dnl    Catalog extension: none
8589 dnl If INTLSYMBOL is 'external', only cases 2 and 3 can occur.
8590 dnl The use of .gmo is historical (it was needed to avoid overwriting the
8591 dnl GNU format catalogs when building on a platform with an X/Open gettext),
8592 dnl but we keep it in order not to force irrelevant filename changes on the
8593 dnl maintainers.
8594 dnl
8595 AC_DEFUN([AM_GNU_GETTEXT],
8596 [
8597   dnl Argument checking.
8598   ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [no-libtool], , [ifelse([$1], [use-libtool], ,
8599     [errprint([ERROR: invalid first argument to AM_GNU_GETTEXT
8600 ])])])])])
8601   ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], ,
8602     [errprint([ERROR: invalid second argument to AM_GNU_GETTEXT
8603 ])])])])
8604   define(gt_included_intl, ifelse([$1], [external], [no], [yes]))
8605   define(gt_libtool_suffix_prefix, ifelse([$1], [use-libtool], [l], []))
8606
8607   AC_REQUIRE([AM_PO_SUBDIRS])dnl
8608   ifelse(gt_included_intl, yes, [
8609     AC_REQUIRE([AM_INTL_SUBDIR])dnl
8610   ])
8611
8612   dnl Prerequisites of AC_LIB_LINKFLAGS_BODY.
8613   AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
8614   AC_REQUIRE([AC_LIB_RPATH])
8615
8616   dnl Sometimes libintl requires libiconv, so first search for libiconv.
8617   dnl Ideally we would do this search only after the
8618   dnl      if test "$USE_NLS" = "yes"; then
8619   dnl        if test "$gt_cv_func_gnugettext_libc" != "yes"; then
8620   dnl tests. But if configure.in invokes AM_ICONV after AM_GNU_GETTEXT
8621   dnl the configure script would need to contain the same shell code
8622   dnl again, outside any 'if'. There are two solutions:
8623   dnl - Invoke AM_ICONV_LINKFLAGS_BODY here, outside any 'if'.
8624   dnl - Control the expansions in more detail using AC_PROVIDE_IFELSE.
8625   dnl Since AC_PROVIDE_IFELSE is only in autoconf >= 2.52 and not
8626   dnl documented, we avoid it.
8627   ifelse(gt_included_intl, yes, , [
8628     AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
8629   ])
8630
8631   dnl Set USE_NLS.
8632   AM_NLS
8633
8634   ifelse(gt_included_intl, yes, [
8635     BUILD_INCLUDED_LIBINTL=no
8636     USE_INCLUDED_LIBINTL=no
8637   ])
8638   LIBINTL=
8639   LTLIBINTL=
8640   POSUB=
8641
8642   dnl If we use NLS figure out what method
8643   if test "$USE_NLS" = "yes"; then
8644     gt_use_preinstalled_gnugettext=no
8645     ifelse(gt_included_intl, yes, [
8646       AC_MSG_CHECKING([whether included gettext is requested])
8647       AC_ARG_WITH(included-gettext,
8648         [  --with-included-gettext use the GNU gettext library included here],
8649         nls_cv_force_use_gnu_gettext=$withval,
8650         nls_cv_force_use_gnu_gettext=no)
8651       AC_MSG_RESULT($nls_cv_force_use_gnu_gettext)
8652
8653       nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
8654       if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
8655     ])
8656         dnl User does not insist on using GNU NLS library.  Figure out what
8657         dnl to use.  If GNU gettext is available we use this.  Else we have
8658         dnl to fall back to GNU NLS library.
8659
8660         dnl Add a version number to the cache macros.
8661         define([gt_api_version], ifelse([$2], [need-formatstring-macros], 3, ifelse([$2], [need-ngettext], 2, 1)))
8662         define([gt_cv_func_gnugettext_libc], [gt_cv_func_gnugettext]gt_api_version[_libc])
8663         define([gt_cv_func_gnugettext_libintl], [gt_cv_func_gnugettext]gt_api_version[_libintl])
8664
8665         AC_CACHE_CHECK([for GNU gettext in libc], gt_cv_func_gnugettext_libc,
8666          [AC_TRY_LINK([#include <libintl.h>
8667 ]ifelse([$2], [need-formatstring-macros],
8668 [#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
8669 #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
8670 #endif
8671 changequote(,)dnl
8672 typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
8673 changequote([,])dnl
8674 ], [])[extern int _nl_msg_cat_cntr;
8675 extern int *_nl_domain_bindings;],
8676             [bindtextdomain ("", "");
8677 return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_domain_bindings],
8678             gt_cv_func_gnugettext_libc=yes,
8679             gt_cv_func_gnugettext_libc=no)])
8680
8681         if test "$gt_cv_func_gnugettext_libc" != "yes"; then
8682           dnl Sometimes libintl requires libiconv, so first search for libiconv.
8683           ifelse(gt_included_intl, yes, , [
8684             AM_ICONV_LINK
8685           ])
8686           dnl Search for libintl and define LIBINTL, LTLIBINTL and INCINTL
8687           dnl accordingly. Don't use AC_LIB_LINKFLAGS_BODY([intl],[iconv])
8688           dnl because that would add "-liconv" to LIBINTL and LTLIBINTL
8689           dnl even if libiconv doesn't exist.
8690           AC_LIB_LINKFLAGS_BODY([intl])
8691           AC_CACHE_CHECK([for GNU gettext in libintl],
8692             gt_cv_func_gnugettext_libintl,
8693            [gt_save_CPPFLAGS="$CPPFLAGS"
8694             CPPFLAGS="$CPPFLAGS $INCINTL"
8695             gt_save_LIBS="$LIBS"
8696             LIBS="$LIBS $LIBINTL"
8697             dnl Now see whether libintl exists and does not depend on libiconv.
8698             AC_TRY_LINK([#include <libintl.h>
8699 ]ifelse([$2], [need-formatstring-macros],
8700 [#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
8701 #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
8702 #endif
8703 changequote(,)dnl
8704 typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
8705 changequote([,])dnl
8706 ], [])[extern int _nl_msg_cat_cntr;
8707 extern
8708 #ifdef __cplusplus
8709 "C"
8710 #endif
8711 const char *_nl_expand_alias ();],
8712               [bindtextdomain ("", "");
8713 return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)],
8714               gt_cv_func_gnugettext_libintl=yes,
8715               gt_cv_func_gnugettext_libintl=no)
8716             dnl Now see whether libintl exists and depends on libiconv.
8717             if test "$gt_cv_func_gnugettext_libintl" != yes && test -n "$LIBICONV"; then
8718               LIBS="$LIBS $LIBICONV"
8719               AC_TRY_LINK([#include <libintl.h>
8720 ]ifelse([$2], [need-formatstring-macros],
8721 [#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
8722 #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
8723 #endif
8724 changequote(,)dnl
8725 typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
8726 changequote([,])dnl
8727 ], [])[extern int _nl_msg_cat_cntr;
8728 extern
8729 #ifdef __cplusplus
8730 "C"
8731 #endif
8732 const char *_nl_expand_alias ();],
8733                 [bindtextdomain ("", "");
8734 return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)],
8735                [LIBINTL="$LIBINTL $LIBICONV"
8736                 LTLIBINTL="$LTLIBINTL $LTLIBICONV"
8737                 gt_cv_func_gnugettext_libintl=yes
8738                ])
8739             fi
8740             CPPFLAGS="$gt_save_CPPFLAGS"
8741             LIBS="$gt_save_LIBS"])
8742         fi
8743
8744         dnl If an already present or preinstalled GNU gettext() is found,
8745         dnl use it.  But if this macro is used in GNU gettext, and GNU
8746         dnl gettext is already preinstalled in libintl, we update this
8747         dnl libintl.  (Cf. the install rule in intl/Makefile.in.)
8748         if test "$gt_cv_func_gnugettext_libc" = "yes" \
8749            || { test "$gt_cv_func_gnugettext_libintl" = "yes" \
8750                 && test "$PACKAGE" != gettext-runtime \
8751                 && test "$PACKAGE" != gettext-tools; }; then
8752           gt_use_preinstalled_gnugettext=yes
8753         else
8754           dnl Reset the values set by searching for libintl.
8755           LIBINTL=
8756           LTLIBINTL=
8757           INCINTL=
8758         fi
8759
8760     ifelse(gt_included_intl, yes, [
8761         if test "$gt_use_preinstalled_gnugettext" != "yes"; then
8762           dnl GNU gettext is not found in the C library.
8763           dnl Fall back on included GNU gettext library.
8764           nls_cv_use_gnu_gettext=yes
8765         fi
8766       fi
8767
8768       if test "$nls_cv_use_gnu_gettext" = "yes"; then
8769         dnl Mark actions used to generate GNU NLS library.
8770         BUILD_INCLUDED_LIBINTL=yes
8771         USE_INCLUDED_LIBINTL=yes
8772         LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LIBICONV"
8773         LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LTLIBICONV"
8774         LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'`
8775       fi
8776
8777       if test "$gt_use_preinstalled_gnugettext" = "yes" \
8778          || test "$nls_cv_use_gnu_gettext" = "yes"; then
8779         dnl Mark actions to use GNU gettext tools.
8780         CATOBJEXT=.gmo
8781       fi
8782     ])
8783
8784     if test "$gt_use_preinstalled_gnugettext" = "yes" \
8785        || test "$nls_cv_use_gnu_gettext" = "yes"; then
8786       AC_DEFINE(ENABLE_NLS, 1,
8787         [Define to 1 if translation of program messages to the user's native language
8788    is requested.])
8789     else
8790       USE_NLS=no
8791     fi
8792   fi
8793
8794   AC_MSG_CHECKING([whether to use NLS])
8795   AC_MSG_RESULT([$USE_NLS])
8796   if test "$USE_NLS" = "yes"; then
8797     AC_MSG_CHECKING([where the gettext function comes from])
8798     if test "$gt_use_preinstalled_gnugettext" = "yes"; then
8799       if test "$gt_cv_func_gnugettext_libintl" = "yes"; then
8800         gt_source="external libintl"
8801       else
8802         gt_source="libc"
8803       fi
8804     else
8805       gt_source="included intl directory"
8806     fi
8807     AC_MSG_RESULT([$gt_source])
8808   fi
8809
8810   if test "$USE_NLS" = "yes"; then
8811
8812     if test "$gt_use_preinstalled_gnugettext" = "yes"; then
8813       if test "$gt_cv_func_gnugettext_libintl" = "yes"; then
8814         AC_MSG_CHECKING([how to link with libintl])
8815         AC_MSG_RESULT([$LIBINTL])
8816         AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCINTL])
8817       fi
8818
8819       dnl For backward compatibility. Some packages may be using this.
8820       AC_DEFINE(HAVE_GETTEXT, 1,
8821        [Define if the GNU gettext() function is already present or preinstalled.])
8822       AC_DEFINE(HAVE_DCGETTEXT, 1,
8823        [Define if the GNU dcgettext() function is already present or preinstalled.])
8824     fi
8825
8826     dnl We need to process the po/ directory.
8827     POSUB=po
8828   fi
8829
8830   ifelse(gt_included_intl, yes, [
8831     dnl If this is used in GNU gettext we have to set BUILD_INCLUDED_LIBINTL
8832     dnl to 'yes' because some of the testsuite requires it.
8833     if test "$PACKAGE" = gettext-runtime || test "$PACKAGE" = gettext-tools; then
8834       BUILD_INCLUDED_LIBINTL=yes
8835     fi
8836
8837     dnl Make all variables we use known to autoconf.
8838     AC_SUBST(BUILD_INCLUDED_LIBINTL)
8839     AC_SUBST(USE_INCLUDED_LIBINTL)
8840     AC_SUBST(CATOBJEXT)
8841
8842     dnl For backward compatibility. Some configure.ins may be using this.
8843     nls_cv_header_intl=
8844     nls_cv_header_libgt=
8845
8846     dnl For backward compatibility. Some Makefiles may be using this.
8847     DATADIRNAME=share
8848     AC_SUBST(DATADIRNAME)
8849
8850     dnl For backward compatibility. Some Makefiles may be using this.
8851     INSTOBJEXT=.mo
8852     AC_SUBST(INSTOBJEXT)
8853
8854     dnl For backward compatibility. Some Makefiles may be using this.
8855     GENCAT=gencat
8856     AC_SUBST(GENCAT)
8857
8858     dnl For backward compatibility. Some Makefiles may be using this.
8859     if test "$USE_INCLUDED_LIBINTL" = yes; then
8860       INTLOBJS="\$(GETTOBJS)"
8861     fi
8862     AC_SUBST(INTLOBJS)
8863
8864     dnl Enable libtool support if the surrounding package wishes it.
8865     INTL_LIBTOOL_SUFFIX_PREFIX=gt_libtool_suffix_prefix
8866     AC_SUBST(INTL_LIBTOOL_SUFFIX_PREFIX)
8867   ])
8868
8869   dnl For backward compatibility. Some Makefiles may be using this.
8870   INTLLIBS="$LIBINTL"
8871   AC_SUBST(INTLLIBS)
8872
8873   dnl Make all documented variables known to autoconf.
8874   AC_SUBST(LIBINTL)
8875   AC_SUBST(LTLIBINTL)
8876   AC_SUBST(POSUB)
8877 ])
8878
8879
8880 dnl Checks for all prerequisites of the intl subdirectory,
8881 dnl except for INTL_LIBTOOL_SUFFIX_PREFIX (and possibly LIBTOOL), INTLOBJS,
8882 dnl            USE_INCLUDED_LIBINTL, BUILD_INCLUDED_LIBINTL.
8883 AC_DEFUN([AM_INTL_SUBDIR],
8884 [
8885   AC_REQUIRE([AC_PROG_INSTALL])dnl
8886   AC_REQUIRE([AM_MKINSTALLDIRS])dnl
8887   AC_REQUIRE([AC_PROG_CC])dnl
8888   AC_REQUIRE([AC_CANONICAL_HOST])dnl
8889   AC_REQUIRE([AC_PROG_RANLIB])dnl
8890   AC_REQUIRE([AC_ISC_POSIX])dnl
8891   AC_REQUIRE([AC_HEADER_STDC])dnl
8892   AC_REQUIRE([AC_C_CONST])dnl
8893   AC_REQUIRE([AC_C_INLINE])dnl
8894   AC_REQUIRE([AC_TYPE_OFF_T])dnl
8895   AC_REQUIRE([AC_TYPE_SIZE_T])dnl
8896   AC_REQUIRE([AC_FUNC_ALLOCA])dnl
8897   AC_REQUIRE([AC_FUNC_MMAP])dnl
8898   AC_REQUIRE([jm_GLIBC21])dnl
8899   AC_REQUIRE([gt_INTDIV0])dnl
8900   AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])dnl
8901   AC_REQUIRE([gt_HEADER_INTTYPES_H])dnl
8902   AC_REQUIRE([gt_INTTYPES_PRI])dnl
8903
8904   AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h stddef.h \
8905 stdlib.h string.h unistd.h sys/param.h])
8906   AC_CHECK_FUNCS([feof_unlocked fgets_unlocked getc_unlocked getcwd getegid \
8907 geteuid getgid getuid mempcpy munmap putenv setenv setlocale stpcpy \
8908 strcasecmp strdup strtoul tsearch __argz_count __argz_stringify __argz_next \
8909 __fsetlocking])
8910
8911   AM_ICONV
8912   AM_LANGINFO_CODESET
8913   if test $ac_cv_header_locale_h = yes; then
8914     AM_LC_MESSAGES
8915   fi
8916
8917   dnl intl/plural.c is generated from intl/plural.y. It requires bison,
8918   dnl because plural.y uses bison specific features. It requires at least
8919   dnl bison-1.26 because earlier versions generate a plural.c that doesn't
8920   dnl compile.
8921   dnl bison is only needed for the maintainer (who touches plural.y). But in
8922   dnl order to avoid separate Makefiles or --enable-maintainer-mode, we put
8923   dnl the rule in general Makefile. Now, some people carelessly touch the
8924   dnl files or have a broken "make" program, hence the plural.c rule will
8925   dnl sometimes fire. To avoid an error, defines BISON to ":" if it is not
8926   dnl present or too old.
8927   AC_CHECK_PROGS([INTLBISON], [bison])
8928   if test -z "$INTLBISON"; then
8929     ac_verc_fail=yes
8930   else
8931     dnl Found it, now check the version.
8932     AC_MSG_CHECKING([version of bison])
8933 changequote(<<,>>)dnl
8934     ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
8935     case $ac_prog_version in
8936       '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
8937       1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*)
8938 changequote([,])dnl
8939          ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
8940       *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
8941     esac
8942     AC_MSG_RESULT([$ac_prog_version])
8943   fi
8944   if test $ac_verc_fail = yes; then
8945     INTLBISON=:
8946   fi
8947 ])
8948
8949
8950 dnl Usage: AM_GNU_GETTEXT_VERSION([gettext-version])
8951 AC_DEFUN([AM_GNU_GETTEXT_VERSION], [])
8952
8953 # po.m4 serial 2
8954 dnl Copyright (C) 1995-2003 Free Software Foundation, Inc.
8955 dnl This file is free software, distributed under the terms of the GNU
8956 dnl General Public License.  As a special exception to the GNU General
8957 dnl Public License, this file may be distributed as part of a program
8958 dnl that contains a configuration script generated by Autoconf, under
8959 dnl the same distribution terms as the rest of that program.
8960 dnl
8961 dnl This file can can be used in projects which are not available under
8962 dnl the GNU General Public License or the GNU Library General Public
8963 dnl License but which still want to provide support for the GNU gettext
8964 dnl functionality.
8965 dnl Please note that the actual code of the GNU gettext library is covered
8966 dnl by the GNU Library General Public License, and the rest of the GNU
8967 dnl gettext package package is covered by the GNU General Public License.
8968 dnl They are *not* in the public domain.
8969
8970 dnl Authors:
8971 dnl   Ulrich Drepper <drepper@cygnus.com>, 1995-2000.
8972 dnl   Bruno Haible <haible@clisp.cons.org>, 2000-2003.
8973
8974 dnl Checks for all prerequisites of the po subdirectory.
8975 AC_DEFUN([AM_PO_SUBDIRS],
8976 [
8977   AC_REQUIRE([AC_PROG_MAKE_SET])dnl
8978   AC_REQUIRE([AC_PROG_INSTALL])dnl
8979   AC_REQUIRE([AM_MKINSTALLDIRS])dnl
8980   AC_REQUIRE([AM_NLS])dnl
8981
8982   dnl Perform the following tests also if --disable-nls has been given,
8983   dnl because they are needed for "make dist" to work.
8984
8985   dnl Search for GNU msgfmt in the PATH.
8986   dnl The first test excludes Solaris msgfmt and early GNU msgfmt versions.
8987   dnl The second test excludes FreeBSD msgfmt.
8988   AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
8989     [$ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 &&
8990      (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)],
8991     :)
8992   AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
8993
8994   dnl Search for GNU xgettext 0.12 or newer in the PATH.
8995   dnl The first test excludes Solaris xgettext and early GNU xgettext versions.
8996   dnl The second test excludes FreeBSD xgettext.
8997   AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
8998     [$ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 &&
8999      (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)],
9000     :)
9001   dnl Remove leftover from FreeBSD xgettext call.
9002   rm -f messages.po
9003
9004   dnl Search for GNU msgmerge 0.11 or newer in the PATH.
9005   AM_PATH_PROG_WITH_TEST(MSGMERGE, msgmerge,
9006     [$ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1], :)
9007
9008   dnl This could go away some day; the PATH_PROG_WITH_TEST already does it.
9009   dnl Test whether we really found GNU msgfmt.
9010   if test "$GMSGFMT" != ":"; then
9011     dnl If it is no GNU msgfmt we define it as : so that the
9012     dnl Makefiles still can work.
9013     if $GMSGFMT --statistics /dev/null >/dev/null 2>&1 &&
9014        (if $GMSGFMT --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
9015       : ;
9016     else
9017       GMSGFMT=`echo "$GMSGFMT" | sed -e 's,^.*/,,'`
9018       AC_MSG_RESULT(
9019         [found $GMSGFMT program is not GNU msgfmt; ignore it])
9020       GMSGFMT=":"
9021     fi
9022   fi
9023
9024   dnl This could go away some day; the PATH_PROG_WITH_TEST already does it.
9025   dnl Test whether we really found GNU xgettext.
9026   if test "$XGETTEXT" != ":"; then
9027     dnl If it is no GNU xgettext we define it as : so that the
9028     dnl Makefiles still can work.
9029     if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 &&
9030        (if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
9031       : ;
9032     else
9033       AC_MSG_RESULT(
9034         [found xgettext program is not GNU xgettext; ignore it])
9035       XGETTEXT=":"
9036     fi
9037     dnl Remove leftover from FreeBSD xgettext call.
9038     rm -f messages.po
9039   fi
9040
9041   AC_OUTPUT_COMMANDS([
9042     for ac_file in $CONFIG_FILES; do
9043       # Support "outfile[:infile[:infile...]]"
9044       case "$ac_file" in
9045         *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
9046       esac
9047       # PO directories have a Makefile.in generated from Makefile.in.in.
9048       case "$ac_file" in */Makefile.in)
9049         # Adjust a relative srcdir.
9050         ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
9051         ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`"
9052         ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
9053         # In autoconf-2.13 it is called $ac_given_srcdir.
9054         # In autoconf-2.50 it is called $srcdir.
9055         test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir"
9056         case "$ac_given_srcdir" in
9057           .)  top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;;
9058           /*) top_srcdir="$ac_given_srcdir" ;;
9059           *)  top_srcdir="$ac_dots$ac_given_srcdir" ;;
9060         esac
9061         if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then
9062           rm -f "$ac_dir/POTFILES"
9063           test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES"
9064           cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[    ]*\$/d" -e "s,.*,     $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES"
9065           POMAKEFILEDEPS="POTFILES.in"
9066           # ALL_LINGUAS, POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES depend
9067           # on $ac_dir but don't depend on user-specified configuration
9068           # parameters.
9069           if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then
9070             # The LINGUAS file contains the set of available languages.
9071             if test -n "$OBSOLETE_ALL_LINGUAS"; then
9072               test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete"
9073             fi
9074             ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"`
9075             # Hide the ALL_LINGUAS assigment from automake.
9076             eval 'ALL_LINGUAS''=$ALL_LINGUAS_'
9077             POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS"
9078           else
9079             # The set of available languages was given in configure.in.
9080             eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS'
9081           fi
9082           case "$ac_given_srcdir" in
9083             .) srcdirpre= ;;
9084             *) srcdirpre='$(srcdir)/' ;;
9085           esac
9086           POFILES=
9087           GMOFILES=
9088           UPDATEPOFILES=
9089           DUMMYPOFILES=
9090           for lang in $ALL_LINGUAS; do
9091             POFILES="$POFILES $srcdirpre$lang.po"
9092             GMOFILES="$GMOFILES $srcdirpre$lang.gmo"
9093             UPDATEPOFILES="$UPDATEPOFILES $lang.po-update"
9094             DUMMYPOFILES="$DUMMYPOFILES $lang.nop"
9095           done
9096           # CATALOGS depends on both $ac_dir and the user's LINGUAS
9097           # environment variable.
9098           INST_LINGUAS=
9099           if test -n "$ALL_LINGUAS"; then
9100             for presentlang in $ALL_LINGUAS; do
9101               useit=no
9102               if test "%UNSET%" != "$LINGUAS"; then
9103                 desiredlanguages="$LINGUAS"
9104               else
9105                 desiredlanguages="$ALL_LINGUAS"
9106               fi
9107               for desiredlang in $desiredlanguages; do
9108                 # Use the presentlang catalog if desiredlang is
9109                 #   a. equal to presentlang, or
9110                 #   b. a variant of presentlang (because in this case,
9111                 #      presentlang can be used as a fallback for messages
9112                 #      which are not translated in the desiredlang catalog).
9113                 case "$desiredlang" in
9114                   "$presentlang"*) useit=yes;;
9115                 esac
9116               done
9117               if test $useit = yes; then
9118                 INST_LINGUAS="$INST_LINGUAS $presentlang"
9119               fi
9120             done
9121           fi
9122           CATALOGS=
9123           if test -n "$INST_LINGUAS"; then
9124             for lang in $INST_LINGUAS; do
9125               CATALOGS="$CATALOGS $lang.gmo"
9126             done
9127           fi
9128           test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile"
9129           sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile"
9130           for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do
9131             if test -f "$f"; then
9132               case "$f" in
9133                 *.orig | *.bak | *~) ;;
9134                 *) cat "$f" >> "$ac_dir/Makefile" ;;
9135               esac
9136             fi
9137           done
9138         fi
9139         ;;
9140       esac
9141     done],
9142    [# Capture the value of obsolete ALL_LINGUAS because we need it to compute
9143     # POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES, CATALOGS. But hide it
9144     # from automake.
9145     eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"'
9146     # Capture the value of LINGUAS because we need it to compute CATALOGS.
9147     LINGUAS="${LINGUAS-%UNSET%}"
9148    ])
9149 ])
9150
9151 # nls.m4 serial 2
9152 dnl Copyright (C) 1995-2003 Free Software Foundation, Inc.
9153 dnl This file is free software, distributed under the terms of the GNU
9154 dnl General Public License.  As a special exception to the GNU General
9155 dnl Public License, this file may be distributed as part of a program
9156 dnl that contains a configuration script generated by Autoconf, under
9157 dnl the same distribution terms as the rest of that program.
9158 dnl
9159 dnl This file can can be used in projects which are not available under
9160 dnl the GNU General Public License or the GNU Library General Public
9161 dnl License but which still want to provide support for the GNU gettext
9162 dnl functionality.
9163 dnl Please note that the actual code of the GNU gettext library is covered
9164 dnl by the GNU Library General Public License, and the rest of the GNU
9165 dnl gettext package package is covered by the GNU General Public License.
9166 dnl They are *not* in the public domain.
9167
9168 dnl Authors:
9169 dnl   Ulrich Drepper <drepper@cygnus.com>, 1995-2000.
9170 dnl   Bruno Haible <haible@clisp.cons.org>, 2000-2003.
9171
9172 AC_DEFUN([AM_NLS],
9173 [
9174   AC_MSG_CHECKING([whether NLS is requested])
9175   dnl Default is enabled NLS
9176   AC_ARG_ENABLE(nls,
9177     [  --disable-nls           do not use Native Language Support],
9178     USE_NLS=$enableval, USE_NLS=yes)
9179   AC_MSG_RESULT($USE_NLS)
9180   AC_SUBST(USE_NLS)
9181 ])
9182
9183 AC_DEFUN([AM_MKINSTALLDIRS],
9184 [
9185   dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
9186   dnl find the mkinstalldirs script in another subdir but $(top_srcdir).
9187   dnl Try to locate it.
9188   MKINSTALLDIRS=
9189   if test -n "$ac_aux_dir"; then
9190     case "$ac_aux_dir" in
9191       /*) MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" ;;
9192       *) MKINSTALLDIRS="\$(top_builddir)/$ac_aux_dir/mkinstalldirs" ;;
9193     esac
9194   fi
9195   if test -z "$MKINSTALLDIRS"; then
9196     MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
9197   fi
9198   AC_SUBST(MKINSTALLDIRS)
9199 ])
9200
9201 # progtest.m4 serial 3 (gettext-0.12)
9202 dnl Copyright (C) 1996-2003 Free Software Foundation, Inc.
9203 dnl This file is free software, distributed under the terms of the GNU
9204 dnl General Public License.  As a special exception to the GNU General
9205 dnl Public License, this file may be distributed as part of a program
9206 dnl that contains a configuration script generated by Autoconf, under
9207 dnl the same distribution terms as the rest of that program.
9208 dnl
9209 dnl This file can can be used in projects which are not available under
9210 dnl the GNU General Public License or the GNU Library General Public
9211 dnl License but which still want to provide support for the GNU gettext
9212 dnl functionality.
9213 dnl Please note that the actual code of the GNU gettext library is covered
9214 dnl by the GNU Library General Public License, and the rest of the GNU
9215 dnl gettext package package is covered by the GNU General Public License.
9216 dnl They are *not* in the public domain.
9217
9218 dnl Authors:
9219 dnl   Ulrich Drepper <drepper@cygnus.com>, 1996.
9220
9221 # Search path for a program which passes the given test.
9222
9223 dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
9224 dnl   TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
9225 AC_DEFUN([AM_PATH_PROG_WITH_TEST],
9226 [
9227 # Prepare PATH_SEPARATOR.
9228 # The user is always right.
9229 if test "${PATH_SEPARATOR+set}" != set; then
9230   echo "#! /bin/sh" >conf$$.sh
9231   echo  "exit 0"   >>conf$$.sh
9232   chmod +x conf$$.sh
9233   if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
9234     PATH_SEPARATOR=';'
9235   else
9236     PATH_SEPARATOR=:
9237   fi
9238   rm -f conf$$.sh
9239 fi
9240
9241 # Find out how to test for executable files. Don't use a zero-byte file,
9242 # as systems may use methods other than mode bits to determine executability.
9243 cat >conf$$.file <<_ASEOF
9244 #! /bin/sh
9245 exit 0
9246 _ASEOF
9247 chmod +x conf$$.file
9248 if test -x conf$$.file >/dev/null 2>&1; then
9249   ac_executable_p="test -x"
9250 else
9251   ac_executable_p="test -f"
9252 fi
9253 rm -f conf$$.file
9254
9255 # Extract the first word of "$2", so it can be a program name with args.
9256 set dummy $2; ac_word=[$]2
9257 AC_MSG_CHECKING([for $ac_word])
9258 AC_CACHE_VAL(ac_cv_path_$1,
9259 [case "[$]$1" in
9260   [[\\/]]* | ?:[[\\/]]*)
9261     ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
9262     ;;
9263   *)
9264     ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR
9265     for ac_dir in ifelse([$5], , $PATH, [$5]); do
9266       IFS="$ac_save_IFS"
9267       test -z "$ac_dir" && ac_dir=.
9268       for ac_exec_ext in '' $ac_executable_extensions; do
9269         if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then
9270           if [$3]; then
9271             ac_cv_path_$1="$ac_dir/$ac_word$ac_exec_ext"
9272             break 2
9273           fi
9274         fi
9275       done
9276     done
9277     IFS="$ac_save_IFS"
9278 dnl If no 4th arg is given, leave the cache variable unset,
9279 dnl so AC_PATH_PROGS will keep looking.
9280 ifelse([$4], , , [  test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
9281 ])dnl
9282     ;;
9283 esac])dnl
9284 $1="$ac_cv_path_$1"
9285 if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then
9286   AC_MSG_RESULT([$]$1)
9287 else
9288   AC_MSG_RESULT(no)
9289 fi
9290 AC_SUBST($1)dnl
9291 ])
9292