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