1 # generated automatically by aclocal 1.7.3 -*- Autoconf -*-
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.
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
14 # Do all the work for Automake. -*- Autoconf -*-
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.
19 # Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
20 # Free Software Foundation, Inc.
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)
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.
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
39 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
40 # written in clear, in which case automake, when reading aclocal.m4,
41 # will think it sees a *use*, and therefore will trigger all it's
42 # C support machinery. Also note that it means that autoscan, seeing
43 # CC etc. in the Makefile, will ask for an AC_PROG_CC use...
48 # Autoconf 2.50 wants to disallow AM_ names. We explicitly allow
49 # the ones we care about.
50 m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
52 # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
53 # AM_INIT_AUTOMAKE([OPTIONS])
54 # -----------------------------------------------
55 # The call with PACKAGE and VERSION arguments is the old style
56 # call (pre autoconf-2.50), which is being phased out. PACKAGE
57 # and VERSION should now be passed to AC_INIT and removed from
58 # the call to AM_INIT_AUTOMAKE.
59 # We support both call styles for the transition. After
60 # the next Automake release, Autoconf can make the AC_INIT
61 # arguments mandatory, and then we can depend on a new Autoconf
62 # release and drop the old call support.
63 AC_DEFUN([AM_INIT_AUTOMAKE],
64 [AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
65 AC_REQUIRE([AC_PROG_INSTALL])dnl
66 # test to see if srcdir already configured
67 if test "`cd $srcdir && pwd`" != "`pwd`" &&
68 test -f $srcdir/config.status; then
69 AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
72 # test whether we have cygpath
73 if test -z "$CYGPATH_W"; then
74 if (cygpath --version) >/dev/null 2>/dev/null; then
75 CYGPATH_W='cygpath -w'
82 # Define the identity of the package.
83 dnl Distinguish between old-style and new-style calls.
85 [m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
86 AC_SUBST([PACKAGE], [$1])dnl
87 AC_SUBST([VERSION], [$2])],
88 [_AM_SET_OPTIONS([$1])dnl
89 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
90 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
92 _AM_IF_OPTION([no-define],,
93 [AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
94 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
96 # Some tools Automake needs.
97 AC_REQUIRE([AM_SANITY_CHECK])dnl
98 AC_REQUIRE([AC_ARG_PROGRAM])dnl
99 AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
100 AM_MISSING_PROG(AUTOCONF, autoconf)
101 AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
102 AM_MISSING_PROG(AUTOHEADER, autoheader)
103 AM_MISSING_PROG(MAKEINFO, makeinfo)
104 AM_MISSING_PROG(AMTAR, tar)
106 AM_PROG_INSTALL_STRIP
107 # We need awk for the "check" target. The system "awk" is bad on
109 AC_REQUIRE([AC_PROG_AWK])dnl
110 AC_REQUIRE([AC_PROG_MAKE_SET])dnl
111 AC_REQUIRE([AM_SET_LEADING_DOT])dnl
113 _AM_IF_OPTION([no-dependencies],,
114 [AC_PROVIDE_IFELSE([AC_PROG_CC],
115 [_AM_DEPENDENCIES(CC)],
116 [define([AC_PROG_CC],
117 defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
118 AC_PROVIDE_IFELSE([AC_PROG_CXX],
119 [_AM_DEPENDENCIES(CXX)],
120 [define([AC_PROG_CXX],
121 defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
126 # When config.status generates a header, we must update the stamp-h file.
127 # This file resides in the same directory as the config header
128 # that is generated. The stamp files are numbered to have different names.
130 # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
131 # loop where config.status creates the headers, so we can generate
132 # our stamp files there.
133 AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
134 [# Compute $1's index in $config_headers.
136 for _am_header in $config_headers :; do
141 _am_stamp_count=`expr $_am_stamp_count + 1` ;;
144 echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
146 # Copyright 2002 Free Software Foundation, Inc.
148 # This program is free software; you can redistribute it and/or modify
149 # it under the terms of the GNU General Public License as published by
150 # the Free Software Foundation; either version 2, or (at your option)
153 # This program is distributed in the hope that it will be useful,
154 # but WITHOUT ANY WARRANTY; without even the implied warranty of
155 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
156 # GNU General Public License for more details.
158 # You should have received a copy of the GNU General Public License
159 # along with this program; if not, write to the Free Software
160 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
162 # AM_AUTOMAKE_VERSION(VERSION)
163 # ----------------------------
164 # Automake X.Y traces this macro to ensure aclocal.m4 has been
165 # generated from the m4 files accompanying Automake X.Y.
166 AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.7"])
168 # AM_SET_CURRENT_AUTOMAKE_VERSION
169 # -------------------------------
170 # Call AM_AUTOMAKE_VERSION so it can be traced.
171 # This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
172 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
173 [AM_AUTOMAKE_VERSION([1.7.3])])
175 # Helper functions for option handling. -*- Autoconf -*-
177 # Copyright 2001, 2002 Free Software Foundation, Inc.
179 # This program is free software; you can redistribute it and/or modify
180 # it under the terms of the GNU General Public License as published by
181 # the Free Software Foundation; either version 2, or (at your option)
184 # This program is distributed in the hope that it will be useful,
185 # but WITHOUT ANY WARRANTY; without even the implied warranty of
186 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
187 # GNU General Public License for more details.
189 # You should have received a copy of the GNU General Public License
190 # along with this program; if not, write to the Free Software
191 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
196 # _AM_MANGLE_OPTION(NAME)
197 # -----------------------
198 AC_DEFUN([_AM_MANGLE_OPTION],
199 [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
201 # _AM_SET_OPTION(NAME)
202 # ------------------------------
203 # Set option NAME. Presently that only means defining a flag for this option.
204 AC_DEFUN([_AM_SET_OPTION],
205 [m4_define(_AM_MANGLE_OPTION([$1]), 1)])
207 # _AM_SET_OPTIONS(OPTIONS)
208 # ----------------------------------
209 # OPTIONS is a space-separated list of Automake options.
210 AC_DEFUN([_AM_SET_OPTIONS],
211 [AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
213 # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
214 # -------------------------------------------
215 # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
216 AC_DEFUN([_AM_IF_OPTION],
217 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
220 # Check to make sure that the build environment is sane.
223 # Copyright 1996, 1997, 2000, 2001 Free Software Foundation, Inc.
225 # This program is free software; you can redistribute it and/or modify
226 # it under the terms of the GNU General Public License as published by
227 # the Free Software Foundation; either version 2, or (at your option)
230 # This program is distributed in the hope that it will be useful,
231 # but WITHOUT ANY WARRANTY; without even the implied warranty of
232 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
233 # GNU General Public License for more details.
235 # You should have received a copy of the GNU General Public License
236 # along with this program; if not, write to the Free Software
237 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
244 AC_DEFUN([AM_SANITY_CHECK],
245 [AC_MSG_CHECKING([whether build environment is sane])
248 echo timestamp > conftest.file
249 # Do `set' in a subshell so we don't clobber the current shell's
250 # arguments. Must try -L first in case configure is actually a
251 # symlink; some systems play weird games with the mod time of symlinks
252 # (eg FreeBSD returns the mod time of the symlink's containing
255 set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
256 if test "$[*]" = "X"; then
258 set X `ls -t $srcdir/configure conftest.file`
261 if test "$[*]" != "X $srcdir/configure conftest.file" \
262 && test "$[*]" != "X conftest.file $srcdir/configure"; then
264 # If neither matched, then we have a broken ls. This can happen
265 # if, for instance, CONFIG_SHELL is bash and it inherits a
266 # broken ls alias from the environment. This has actually
267 # happened. Such a system could not be considered "sane".
268 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
269 alias in your environment])
272 test "$[2]" = conftest.file
278 AC_MSG_ERROR([newly created file is older than distributed files!
279 Check your system clock])
286 # Copyright 1997, 1999, 2000, 2001 Free Software Foundation, Inc.
288 # This program is free software; you can redistribute it and/or modify
289 # it under the terms of the GNU General Public License as published by
290 # the Free Software Foundation; either version 2, or (at your option)
293 # This program is distributed in the hope that it will be useful,
294 # but WITHOUT ANY WARRANTY; without even the implied warranty of
295 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
296 # GNU General Public License for more details.
298 # You should have received a copy of the GNU General Public License
299 # along with this program; if not, write to the Free Software
300 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
305 # AM_MISSING_PROG(NAME, PROGRAM)
306 # ------------------------------
307 AC_DEFUN([AM_MISSING_PROG],
308 [AC_REQUIRE([AM_MISSING_HAS_RUN])
309 $1=${$1-"${am_missing_run}$2"}
315 # Define MISSING if not defined so far and test if it supports --run.
316 # If it does, set am_missing_run to use it, otherwise, to nothing.
317 AC_DEFUN([AM_MISSING_HAS_RUN],
318 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
319 test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
320 # Use eval to expand $SHELL
321 if eval "$MISSING --run true"; then
322 am_missing_run="$MISSING --run "
325 AC_MSG_WARN([`missing' script is too old or missing])
331 # Copyright 2001 Free Software Foundation, Inc.
333 # This program is free software; you can redistribute it and/or modify
334 # it under the terms of the GNU General Public License as published by
335 # the Free Software Foundation; either version 2, or (at your option)
338 # This program is distributed in the hope that it will be useful,
339 # but WITHOUT ANY WARRANTY; without even the implied warranty of
340 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
341 # GNU General Public License for more details.
343 # You should have received a copy of the GNU General Public License
344 # along with this program; if not, write to the Free Software
345 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
348 # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
349 # $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
350 # `$srcdir', `$srcdir/..', or `$srcdir/../..'.
352 # Of course, Automake must honor this variable whenever it calls a
353 # tool from the auxiliary directory. The problem is that $srcdir (and
354 # therefore $ac_aux_dir as well) can be either absolute or relative,
355 # depending on how configure is run. This is pretty annoying, since
356 # it makes $ac_aux_dir quite unusable in subdirectories: in the top
357 # source directory, any form will work fine, but in subdirectories a
358 # relative path needs to be adjusted first.
360 # $ac_aux_dir/missing
361 # fails when called from a subdirectory if $ac_aux_dir is relative
362 # $top_srcdir/$ac_aux_dir/missing
363 # fails if $ac_aux_dir is absolute,
364 # fails when called from a subdirectory in a VPATH build with
365 # a relative $ac_aux_dir
367 # The reason of the latter failure is that $top_srcdir and $ac_aux_dir
368 # are both prefixed by $srcdir. In an in-source build this is usually
369 # harmless because $srcdir is `.', but things will broke when you
370 # start a VPATH build or use an absolute $srcdir.
372 # So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
373 # iff we strip the leading $srcdir from $ac_aux_dir. That would be:
374 # am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
375 # and then we would define $MISSING as
376 # MISSING="\${SHELL} $am_aux_dir/missing"
377 # This will work as long as MISSING is not called from configure, because
378 # unfortunately $(top_srcdir) has no meaning in configure.
379 # However there are other variables, like CC, which are often used in
380 # configure, and could therefore not use this "fixed" $ac_aux_dir.
382 # Another solution, used here, is to always expand $ac_aux_dir to an
383 # absolute PATH. The drawback is that using absolute paths prevent a
384 # configured tree to be moved without reconfiguration.
386 # Rely on autoconf to set up CDPATH properly.
389 AC_DEFUN([AM_AUX_DIR_EXPAND], [
390 # expand $ac_aux_dir to an absolute path
391 am_aux_dir=`cd $ac_aux_dir && pwd`
396 # Define $install_sh.
398 # Copyright 2001 Free Software Foundation, Inc.
400 # This program is free software; you can redistribute it and/or modify
401 # it under the terms of the GNU General Public License as published by
402 # the Free Software Foundation; either version 2, or (at your option)
405 # This program is distributed in the hope that it will be useful,
406 # but WITHOUT ANY WARRANTY; without even the implied warranty of
407 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
408 # GNU General Public License for more details.
410 # You should have received a copy of the GNU General Public License
411 # along with this program; if not, write to the Free Software
412 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
415 AC_DEFUN([AM_PROG_INSTALL_SH],
416 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
417 install_sh=${install_sh-"$am_aux_dir/install-sh"}
418 AC_SUBST(install_sh)])
420 # AM_PROG_INSTALL_STRIP
422 # Copyright 2001 Free Software Foundation, Inc.
424 # This program is free software; you can redistribute it and/or modify
425 # it under the terms of the GNU General Public License as published by
426 # the Free Software Foundation; either version 2, or (at your option)
429 # This program is distributed in the hope that it will be useful,
430 # but WITHOUT ANY WARRANTY; without even the implied warranty of
431 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
432 # GNU General Public License for more details.
434 # You should have received a copy of the GNU General Public License
435 # along with this program; if not, write to the Free Software
436 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
439 # One issue with vendor `install' (even GNU) is that you can't
440 # specify the program used to strip binaries. This is especially
441 # annoying in cross-compiling environments, where the build's strip
442 # is unlikely to handle the host's binaries.
443 # Fortunately install-sh will honor a STRIPPROG variable, so we
444 # always use install-sh in `make install-strip', and initialize
445 # STRIPPROG with the value of the STRIP variable (set by the user).
446 AC_DEFUN([AM_PROG_INSTALL_STRIP],
447 [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
448 # Installed binaries are usually stripped using `strip' when the user
449 # run `make install-strip'. However `strip' might not be the right
450 # tool to use in cross-compilation environments, therefore Automake
451 # will honor the `STRIP' environment variable to overrule this program.
452 dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
453 if test "$cross_compiling" != no; then
454 AC_CHECK_TOOL([STRIP], [strip], :)
456 INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
457 AC_SUBST([INSTALL_STRIP_PROGRAM])])
460 # Copyright (C) 2003 Free Software Foundation, Inc.
462 # This program is free software; you can redistribute it and/or modify
463 # it under the terms of the GNU General Public License as published by
464 # the Free Software Foundation; either version 2, or (at your option)
467 # This program is distributed in the hope that it will be useful,
468 # but WITHOUT ANY WARRANTY; without even the implied warranty of
469 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
470 # GNU General Public License for more details.
472 # You should have received a copy of the GNU General Public License
473 # along with this program; if not, write to the Free Software
474 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
479 # Check whether the underlying file-system supports filenames
480 # with a leading dot. For instance MS-DOS doesn't.
481 AC_DEFUN([AM_SET_LEADING_DOT],
482 [rm -rf .tst 2>/dev/null
483 mkdir .tst 2>/dev/null
484 if test -d .tst; then
489 rmdir .tst 2>/dev/null
490 AC_SUBST([am__leading_dot])])
492 # serial 5 -*- Autoconf -*-
494 # Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
496 # This program is free software; you can redistribute it and/or modify
497 # it under the terms of the GNU General Public License as published by
498 # the Free Software Foundation; either version 2, or (at your option)
501 # This program is distributed in the hope that it will be useful,
502 # but WITHOUT ANY WARRANTY; without even the implied warranty of
503 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
504 # GNU General Public License for more details.
506 # You should have received a copy of the GNU General Public License
507 # along with this program; if not, write to the Free Software
508 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
512 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
513 # written in clear, in which case automake, when reading aclocal.m4,
514 # will think it sees a *use*, and therefore will trigger all it's
515 # C support machinery. Also note that it means that autoscan, seeing
516 # CC etc. in the Makefile, will ask for an AC_PROG_CC use...
520 # _AM_DEPENDENCIES(NAME)
521 # ----------------------
522 # See how the compiler implements dependency checking.
523 # NAME is "CC", "CXX", "GCJ", or "OBJC".
524 # We try a few techniques and use that to set a single cache variable.
526 # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
527 # modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
528 # dependency, and given that the user is not expected to run this macro,
529 # just rely on AC_PROG_CC.
530 AC_DEFUN([_AM_DEPENDENCIES],
531 [AC_REQUIRE([AM_SET_DEPDIR])dnl
532 AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
533 AC_REQUIRE([AM_MAKE_INCLUDE])dnl
534 AC_REQUIRE([AM_DEP_TRACK])dnl
536 ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
537 [$1], CXX, [depcc="$CXX" am_compiler_list=],
538 [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
539 [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
540 [depcc="$$1" am_compiler_list=])
542 AC_CACHE_CHECK([dependency style of $depcc],
543 [am_cv_$1_dependencies_compiler_type],
544 [if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
545 # We make a subdir and do the tests there. Otherwise we can end up
546 # making bogus files that we don't know about and never remove. For
547 # instance it was reported that on HP-UX the gcc test will end up
548 # making a dummy file named `D' -- because `-MD' means `put the output
551 # Copy depcomp to subdir because otherwise we won't find it if we're
552 # using a relative directory.
553 cp "$am_depcomp" conftest.dir
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`
560 for depmode in $am_compiler_list; do
561 # We need to recreate these files for each test, as the compiler may
562 # overwrite some of them when testing with obscure command lines.
563 # This happens at least with the AIX C compiler.
564 echo '#include "conftest.h"' > conftest.c
565 echo 'int i;' > conftest.h
566 echo "${am__include} ${am__quote}conftest.Po${am__quote}" > confmf
570 # after this tag, mechanisms are not by side-effect, so they'll
571 # only be used when explicitly requested
572 if test "x$enable_dependency_tracking" = xyes; then
580 # We check with `-c' and `-o' for the sake of the "dashmstdout"
581 # mode. It turns out that the SunPro C++ compiler does not properly
582 # handle `-M -o', and we need to detect this.
583 if depmode=$depmode \
584 source=conftest.c object=conftest.o \
585 depfile=conftest.Po tmpdepfile=conftest.TPo \
586 $SHELL ./depcomp $depcc -c -o conftest.o conftest.c \
587 >/dev/null 2>conftest.err &&
588 grep conftest.h conftest.Po > /dev/null 2>&1 &&
589 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
590 # icc doesn't choke on unknown options, it will just issue warnings
591 # (even with -Werror). So we grep stderr for any message
592 # that says an option was ignored.
593 if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
594 am_cv_$1_dependencies_compiler_type=$depmode
603 am_cv_$1_dependencies_compiler_type=none
606 AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
607 AM_CONDITIONAL([am__fastdep$1], [
608 test "x$enable_dependency_tracking" != xno \
609 && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
615 # Choose a directory name for dependency files.
616 # This macro is AC_REQUIREd in _AM_DEPENDENCIES
617 AC_DEFUN([AM_SET_DEPDIR],
618 [AC_REQUIRE([AM_SET_LEADING_DOT])dnl
619 AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
625 AC_DEFUN([AM_DEP_TRACK],
626 [AC_ARG_ENABLE(dependency-tracking,
627 [ --disable-dependency-tracking Speeds up one-time builds
628 --enable-dependency-tracking Do not reject slow dependency extractors])
629 if test "x$enable_dependency_tracking" != xno; then
630 am_depcomp="$ac_aux_dir/depcomp"
633 AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
634 AC_SUBST([AMDEPBACKSLASH])
637 # Generate code to set up dependency tracking. -*- Autoconf -*-
639 # Copyright 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
641 # This program is free software; you can redistribute it and/or modify
642 # it under the terms of the GNU General Public License as published by
643 # the Free Software Foundation; either version 2, or (at your option)
646 # This program is distributed in the hope that it will be useful,
647 # but WITHOUT ANY WARRANTY; without even the implied warranty of
648 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
649 # GNU General Public License for more details.
651 # You should have received a copy of the GNU General Public License
652 # along with this program; if not, write to the Free Software
653 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
658 # _AM_OUTPUT_DEPENDENCY_COMMANDS
659 # ------------------------------
660 AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
661 [for mf in $CONFIG_FILES; do
662 # Strip MF so we end up with the name of the file.
663 mf=`echo "$mf" | sed -e 's/:.*$//'`
664 # Check whether this is an Automake generated Makefile or not.
665 # We used to match only the files named `Makefile.in', but
666 # some people rename them; so instead we look at the file content.
667 # Grep'ing the first line is not enough: some people post-process
668 # each Makefile.in and add a new line on top of each file to say so.
669 # So let's grep whole file.
670 if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
671 dirpart=`AS_DIRNAME("$mf")`
675 grep '^DEP_FILES *= *[[^ @%:@]]' < "$mf" > /dev/null || continue
676 # Extract the definition of DEP_FILES from the Makefile without
678 DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"`
679 test -z "$DEPDIR" && continue
680 # When using ansi2knr, U may be empty or an underscore; expand it
681 U=`sed -n -e '/^U = / s///p' < "$mf"`
682 test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR"
683 # We invoke sed twice because it is the simplest approach to
684 # changing $(DEPDIR) to its actual value in the expansion.
685 for file in `sed -n -e '
686 /^DEP_FILES = .*\\\\$/ {
695 /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \
696 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
697 # Make sure the directory exists.
698 test -f "$dirpart/$file" && continue
699 fdir=`AS_DIRNAME(["$file"])`
700 AS_MKDIR_P([$dirpart/$fdir])
701 # echo "creating $dirpart/$file"
702 echo '# dummy' > "$dirpart/$file"
705 ])# _AM_OUTPUT_DEPENDENCY_COMMANDS
708 # AM_OUTPUT_DEPENDENCY_COMMANDS
709 # -----------------------------
710 # This macro should only be invoked once -- use via AC_REQUIRE.
712 # This code is only required when automatic dependency tracking
713 # is enabled. FIXME. This creates each `.P' file that we will
714 # need in order to bootstrap the dependency handling code.
715 AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
716 [AC_CONFIG_COMMANDS([depfiles],
717 [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
718 [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
721 # Check to see how 'make' treats includes. -*- Autoconf -*-
723 # Copyright (C) 2001, 2002 Free Software Foundation, Inc.
725 # This program is free software; you can redistribute it and/or modify
726 # it under the terms of the GNU General Public License as published by
727 # the Free Software Foundation; either version 2, or (at your option)
730 # This program is distributed in the hope that it will be useful,
731 # but WITHOUT ANY WARRANTY; without even the implied warranty of
732 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
733 # GNU General Public License for more details.
735 # You should have received a copy of the GNU General Public License
736 # along with this program; if not, write to the Free Software
737 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
744 # Check to see how make treats includes.
745 AC_DEFUN([AM_MAKE_INCLUDE],
746 [am_make=${MAKE-make}
747 cat > confinc << 'END'
751 # If we don't find an include directive, just comment out the code.
752 AC_MSG_CHECKING([for style of include used by $am_make])
756 # First try GNU make style include.
757 echo "include confinc" > confmf
758 # We grep out `Entering directory' and `Leaving directory'
759 # messages which can occur if `w' ends up in MAKEFLAGS.
760 # In particular we don't look at `^make:' because GNU make might
761 # be invoked under some other name (usually "gmake"), in which
762 # case it prints its new name instead of `make'.
763 if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
768 # Now try BSD make style include.
769 if test "$am__include" = "#"; then
770 echo '.include "confinc"' > confmf
771 if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
777 AC_SUBST(am__include)
779 AC_MSG_RESULT($_am_result)
783 # AM_CONDITIONAL -*- Autoconf -*-
785 # Copyright 1997, 2000, 2001 Free Software Foundation, Inc.
787 # This program is free software; you can redistribute it and/or modify
788 # it under the terms of the GNU General Public License as published by
789 # the Free Software Foundation; either version 2, or (at your option)
792 # This program is distributed in the hope that it will be useful,
793 # but WITHOUT ANY WARRANTY; without even the implied warranty of
794 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
795 # GNU General Public License for more details.
797 # You should have received a copy of the GNU General Public License
798 # along with this program; if not, write to the Free Software
799 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
806 # AM_CONDITIONAL(NAME, SHELL-CONDITION)
807 # -------------------------------------
808 # Define a conditional.
809 AC_DEFUN([AM_CONDITIONAL],
810 [ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
811 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
821 AC_CONFIG_COMMANDS_PRE(
822 [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
823 AC_MSG_ERROR([conditional "$1" was never defined.
824 Usually this means the macro was only invoked conditionally.])
829 dnl From Jim Meyering.
830 dnl Find a new-enough version of Perl.
835 dnl FIXME: don't hard-code 5.003
836 dnl FIXME: should we cache the result?
837 AC_MSG_CHECKING([for perl5.003 or newer])
838 if test "${PERL+set}" = set; then
839 # `PERL' is set in the user's environment.
840 candidate_perl_names="$PERL"
843 candidate_perl_names='perl perl5'
849 PERL="$am_missing_run perl"
850 for perl in $candidate_perl_names; do
851 # Run test in a subshell; some versions of sh will print an error if
852 # an executable is not found, even if stderr is redirected.
853 if ( $perl -e 'require 5.003; use File::Compare' ) > /dev/null 2>&1; then
860 AC_MSG_RESULT($found)
861 test $found = no && AC_MSG_WARN([
862 WARNING: You don't seem to have perl5.003 or newer installed, or you lack
863 a usable version of the Perl File::Compare module. As a result,
864 you may be unable to run a few tests or to regenerate certain
865 files if you modify the sources from which they are derived.
869 #serial 61 -*- autoconf -*-
871 m4_undefine([AC_LANG_SOURCE(C)])
872 dnl The following is identical to the definition in c.m4
873 dnl from the autoconf cvs repository on 2003-03-07.
874 dnl FIXME: remove this code once we upgrade to autoconf-2.58.
876 # We can't use '#line $LINENO "configure"' here, since
877 # Sun c89 (Sun WorkShop 6 update 2 C 5.3 Patch 111679-08 2002/05/09)
878 # rejects $LINENO greater than 32767, and some configure scripts
879 # are longer than 32767 lines.
880 m4_define([AC_LANG_SOURCE(C)],
883 cat confdefs.h >>conftest.$ac_ext
884 cat >>conftest.$ac_ext <<_ACEOF
885 /* end confdefs.h. */
889 dnl Misc type-related macros for fileutils, sh-utils, textutils.
891 AC_DEFUN([jm_MACROS],
895 GNU_PACKAGE="GNU $PACKAGE"
896 AC_DEFINE_UNQUOTED(GNU_PACKAGE, "$GNU_PACKAGE",
897 [The concatenation of the strings `GNU ', and PACKAGE.])
898 AC_SUBST(GNU_PACKAGE)
900 AM_MISSING_PROG(HELP2MAN, help2man)
901 AC_SUBST(OPTIONAL_BIN_PROGS)
902 AC_SUBST(OPTIONAL_BIN_ZCRIPTS)
906 dnl This macro actually runs replacement code. See isc-posix.m4.
907 AC_REQUIRE([AC_ISC_POSIX])dnl
910 jm_INCLUDED_REGEX([lib/regex.c])
912 AC_REQUIRE([UTILS_HOST_OS])
913 AC_REQUIRE([UTILS_FUNC_MKDIR_TRAILING_SLASH])
914 AC_REQUIRE([jm_BISON])
915 AC_REQUIRE([jm_ASSERT])
916 AC_REQUIRE([jm_CHECK_TYPE_STRUCT_UTIMBUF])
917 AC_REQUIRE([jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE])
918 AC_REQUIRE([jm_CHECK_TYPE_STRUCT_DIRENT_D_INO])
919 AC_REQUIRE([jm_CHECK_DECLS])
921 AC_REQUIRE([jm_PREREQ])
923 AC_REQUIRE([UTILS_FUNC_DIRFD])
924 AC_REQUIRE([AC_FUNC_ACL])
925 AC_REQUIRE([AC_FUNC_FTW])
926 AC_REQUIRE([jm_FUNC_LCHOWN])
927 AC_REQUIRE([fetish_FUNC_RMDIR_NOTEMPTY])
928 AC_REQUIRE([jm_FUNC_CHOWN])
929 AC_REQUIRE([jm_FUNC_MKTIME])
930 AC_REQUIRE([jm_FUNC_LSTAT])
931 AC_REQUIRE([AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK])
932 AC_REQUIRE([jm_FUNC_STAT])
933 AC_REQUIRE([AC_FUNC_REALLOC])
934 AC_REQUIRE([AC_FUNC_MALLOC])
935 AC_REQUIRE([AC_FUNC_STRERROR_R])
936 AC_REQUIRE([jm_FUNC_NANOSLEEP])
937 AC_REQUIRE([jm_FUNC_MEMCMP])
938 AC_REQUIRE([jm_FUNC_GLIBC_UNLOCKED_IO])
939 AC_REQUIRE([AC_FUNC_FNMATCH_GNU])
940 AC_REQUIRE([jm_FUNC_GROUP_MEMBER])
941 AC_REQUIRE([jm_FUNC_PUTENV])
943 AC_REQUIRE([jm_AC_PREREQ_XSTRTOUMAX])
944 AC_REQUIRE([jm_AC_PREREQ_XSTRTOIMAX])
945 AC_REQUIRE([jm_AC_FUNC_LINK_FOLLOWS_SYMLINK])
946 AC_REQUIRE([AC_FUNC_ERROR_AT_LINE])
947 AC_REQUIRE([jm_FUNC_GNU_STRFTIME])
948 AC_REQUIRE([jm_FUNC_MKTIME])
949 AC_REQUIRE([jm_FUNC_FPENDING])
951 # This is for od and stat, and any other program that
952 # uses the PRI.MAX macros from inttypes.h.
953 AC_REQUIRE([gt_INTTYPES_PRI])
955 AC_REQUIRE([jm_FUNC_GETGROUPS])
957 AC_REQUIRE([AC_FUNC_FSEEKO])
958 AC_REQUIRE([AC_FUNC_VPRINTF])
959 AC_REQUIRE([AC_FUNC_ALLOCA])
961 AC_CONFIG_LIBOBJ_DIR([lib])
964 AC_REQUIRE([jm_SYS_PROC_UPTIME])
965 AC_REQUIRE([jm_FUNC_FTRUNCATE])
966 AC_REQUIRE([vb_FUNC_RENAME])
968 AC_REPLACE_FUNCS(strcasecmp strncasecmp)
969 AC_REPLACE_FUNCS(dup2)
970 AC_REPLACE_FUNCS(gethostname getusershell)
971 AC_REPLACE_FUNCS(sig2str)
972 AC_REPLACE_FUNCS(strcspn stpcpy strstr strtol strtoul)
973 AC_REPLACE_FUNCS(strpbrk)
974 AC_REPLACE_FUNCS(euidaccess memcmp rmdir rpmatch strndup strverscmp)
975 AC_REPLACE_FUNCS(atexit)
976 AC_REPLACE_FUNCS(getpass)
978 # raise is used by at least sort and ls.
979 AC_REPLACE_FUNCS(raise)
981 dnl used by e.g. intl/*domain.c and lib/canon-host.c
982 AC_REPLACE_FUNCS(strdup)
984 AC_REPLACE_FUNCS(memchr memcpy memmove memrchr memset)
985 AC_CHECK_FUNCS(getpagesize)
987 AC_REQUIRE([UTILS_FUNC_MKSTEMP])
989 # By default, argmatch should fail calling usage (1).
990 AC_DEFINE(ARGMATCH_DIE, [usage (1)],
991 [Define to the function xargmatch calls on failures.])
992 AC_DEFINE(ARGMATCH_DIE_DECL, [extern void usage ()],
993 [Define to the declaration of the xargmatch failure function.])
995 dnl Used to define SETVBUF in sys2.h.
996 dnl This evokes the following warning from autoconf:
997 dnl ...: warning: AC_TRY_RUN called without default to allow cross compiling
998 AC_FUNC_SETVBUF_REVERSED
1000 # used by sleep and shred
1001 # Solaris 2.5.1 needs -lposix4 to get the clock_gettime function.
1002 # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4.
1004 # Save and restore LIBS so e.g., -lrt, isn't added to it. Otherwise, *all*
1005 # programs in the package would end up linked with that potentially-shared
1006 # library, inducing unnecessary run-time overhead.
1007 fetish_saved_libs=$LIBS
1008 AC_SEARCH_LIBS(clock_gettime, [rt posix4],
1009 [LIB_CLOCK_GETTIME=$ac_cv_search_clock_gettime])
1010 AC_SUBST(LIB_CLOCK_GETTIME)
1011 AC_CHECK_FUNCS(clock_gettime clock_settime)
1012 LIBS=$fetish_saved_libs
1013 AC_CHECK_FUNCS(gettimeofday)
1014 AC_FUNC_GETTIMEOFDAY_CLOBBER
1016 AC_REQUIRE([AC_FUNC_CLOSEDIR_VOID])
1017 AC_REQUIRE([jm_FUNC_UTIME])
1051 AC_CHECK_FUNCS(setreuid setregid)
1054 if test $am_cv_func_working_getline != yes; then
1055 AC_CHECK_FUNCS(getdelim)
1060 AC_REQUIRE([UTILS_SYS_OPEN_MAX])
1061 AC_REQUIRE([GL_FUNC_GETCWD_PATH_MAX])
1063 # See if linking `seq' requires -lm.
1064 # It does on nearly every system. The single exception (so far) is
1065 # BeOS which has all the math functions in the normal runtime library
1066 # and doesn't have a separate math library.
1074 AC_TRY_LINK([#include <math.h>], $ac_seq_body, ,
1075 [ac_seq_save_LIBS="$LIBS"
1077 AC_TRY_LINK([#include <math.h>], $ac_seq_body, SEQ_LIBM=-lm)
1078 LIBS="$ac_seq_save_LIBS"
1084 jm_FUNC_UNLINK_BUSY_TEXT
1086 # These tests are for df.
1087 jm_LIST_MOUNTED_FILESYSTEMS([list_mounted_fs=yes], [list_mounted_fs=no])
1089 jm_FILE_SYSTEM_USAGE([space=yes], [space=no])
1090 if test $list_mounted_fs = yes && test $space = yes; then
1091 DF_PROG='df$(EXEEXT)'
1093 AC_LIBOBJ(mountlist)
1095 AC_REQUIRE([jm_AC_DOS])
1096 AC_REQUIRE([AC_FUNC_CANONICALIZE_FILE_NAME])
1098 # If any of these functions don't exist (e.g. DJGPP 2.03),
1099 # use the corresponding stub.
1100 AC_CHECK_FUNC([fchdir], , [AC_LIBOBJ(fchdir-stub)])
1101 AC_CHECK_FUNC([fchown], , [AC_LIBOBJ(fchown-stub)])
1102 AC_CHECK_FUNC([lstat], , [AC_LIBOBJ(lstat-stub)])
1103 AC_CHECK_FUNC([readlink], , [AC_LIBOBJ(readlink-stub)])
1107 # These tests must be run before any use of AC_CHECK_TYPE,
1108 # because that macro compiles code that tests e.g., HAVE_UNISTD_H.
1109 # See the definition of ac_includes_default in `configure'.
1110 AC_DEFUN([jm_CHECK_ALL_HEADERS],
1153 # This macro must be invoked before any tests that run the compiler.
1154 AC_DEFUN([jm_CHECK_ALL_TYPES],
1156 dnl This test must come as early as possible after the compiler configuration
1157 dnl tests, because the choice of the file model can (in principle) affect
1158 dnl whether functions and headers are available, whether they work, etc.
1159 AC_REQUIRE([AC_SYS_LARGEFILE])
1161 dnl This test must precede tests of compiler characteristics like
1162 dnl that for the inline keyword, since it may change the degree to
1163 dnl which the compiler supports such features.
1164 AC_REQUIRE([AM_C_PROTOTYPES])
1166 dnl Checks for typedefs, structures, and compiler characteristics.
1167 AC_REQUIRE([AC_C_BIGENDIAN])
1168 AC_REQUIRE([AC_C_CONST])
1169 AC_REQUIRE([AC_C_VOLATILE])
1170 AC_REQUIRE([AC_C_INLINE])
1171 AC_REQUIRE([AC_C_LONG_DOUBLE])
1173 AC_REQUIRE([jm_CHECK_ALL_HEADERS])
1174 AC_REQUIRE([AC_HEADER_DIRENT])
1175 AC_REQUIRE([AC_HEADER_STDC])
1177 [struct stat.st_author,
1178 struct stat.st_blksize],,,
1179 [$ac_includes_default
1180 #include <sys/stat.h>
1182 AC_REQUIRE([AC_STRUCT_ST_BLOCKS])
1184 AC_REQUIRE([AC_STRUCT_TM])
1185 AC_REQUIRE([AC_STRUCT_TIMEZONE])
1186 AC_REQUIRE([AC_HEADER_STAT])
1187 AC_REQUIRE([AC_STRUCT_ST_MTIM_NSEC])
1188 AC_REQUIRE([AC_STRUCT_ST_DM_MODE])
1189 AC_REQUIRE([jm_CHECK_TYPE_STRUCT_TIMESPEC])
1191 AC_REQUIRE([AC_TYPE_GETGROUPS])
1192 AC_REQUIRE([AC_TYPE_MODE_T])
1193 AC_REQUIRE([AC_TYPE_OFF_T])
1194 AC_REQUIRE([AC_TYPE_PID_T])
1195 AC_REQUIRE([AC_TYPE_SIGNAL])
1196 AC_REQUIRE([AC_TYPE_SIZE_T])
1197 AC_REQUIRE([AC_TYPE_UID_T])
1198 AC_CHECK_TYPE(ino_t, unsigned long)
1200 dnl This relies on the fact that autoconf 2.14a's implementation of
1201 dnl AC_CHECK_TYPE checks includes unistd.h.
1202 AC_CHECK_TYPE(ssize_t, int)
1203 AC_CHECK_TYPE(major_t, unsigned int)
1204 AC_CHECK_TYPE(minor_t, unsigned int)
1206 AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])
1207 AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG])
1209 AC_REQUIRE([AC_HEADER_MAJOR])
1210 AC_REQUIRE([AC_HEADER_DIRENT])
1214 # isc-posix.m4 serial 2 (gettext-0.11.2)
1215 dnl Copyright (C) 1995-2002 Free Software Foundation, Inc.
1216 dnl This file is free software, distributed under the terms of the GNU
1217 dnl General Public License. As a special exception to the GNU General
1218 dnl Public License, this file may be distributed as part of a program
1219 dnl that contains a configuration script generated by Autoconf, under
1220 dnl the same distribution terms as the rest of that program.
1222 # This file is not needed with autoconf-2.53 and newer. Remove it in 2005.
1224 # This test replaces the one in autoconf.
1225 # Currently this macro should have the same name as the autoconf macro
1226 # because gettext's gettext.m4 (distributed in the automake package)
1227 # still uses it. Otherwise, the use in gettext.m4 makes autoheader
1228 # give these diagnostics:
1229 # configure.in:556: AC_TRY_COMPILE was called before AC_ISC_POSIX
1230 # configure.in:556: AC_TRY_RUN was called before AC_ISC_POSIX
1232 undefine([AC_ISC_POSIX])
1234 AC_DEFUN([AC_ISC_POSIX],
1236 dnl This test replaces the obsolescent AC_ISC_POSIX kludge.
1237 AC_CHECK_LIB(cposix, strerror, [LIBS="$LIBS -lcposix"])
1243 dnl Initially derived from code in GNU grep.
1244 dnl Mostly written by Jim Meyering.
1246 dnl Usage: jm_INCLUDED_REGEX([lib/regex.c])
1248 AC_DEFUN([jm_INCLUDED_REGEX],
1250 dnl Even packages that don't use regex.c can use this macro.
1251 dnl Of course, for them it doesn't do anything.
1253 # Assume we'll default to using the included regex.c.
1254 ac_use_included_regex=yes
1256 # However, if the system regex support is good enough that it passes the
1257 # the following run test, then default to *not* using the included regex.c.
1258 # If cross compiling, assume the test would fail and use the included
1259 # regex.c. The first failing regular expression is from `Spencer ere
1260 # test #75' in grep-2.3.
1261 AC_CACHE_CHECK([for working re_compile_pattern],
1262 jm_cv_func_working_re_compile_pattern,
1270 static struct re_pattern_buffer regex;
1272 struct re_registers regs;
1273 re_set_syntax (RE_SYNTAX_POSIX_EGREP);
1274 memset (®ex, 0, sizeof (regex));
1275 [s = re_compile_pattern ("a[[:@:>@:]]b\n", 9, ®ex);]
1276 /* This should fail with _Invalid character class name_ error. */
1280 /* This should succeed, but doesn't for e.g. glibc-2.1.3. */
1281 memset (®ex, 0, sizeof (regex));
1282 s = re_compile_pattern ("{1", 2, ®ex);
1287 /* The following example is derived from a problem report
1288 against gawk from Jorge Stolfi <stolfi@ic.unicamp.br>. */
1289 memset (®ex, 0, sizeof (regex));
1290 s = re_compile_pattern ("[[anù]]*n", 7, ®ex);
1294 /* This should match, but doesn't for e.g. glibc-2.2.1. */
1295 if (re_match (®ex, "an", 2, 0, ®s) != 2)
1298 memset (®ex, 0, sizeof (regex));
1299 s = re_compile_pattern ("x", 1, ®ex);
1303 /* The version of regex.c in e.g. GNU libc-2.2.93 didn't
1304 work with a negative RANGE argument. */
1305 if (re_search (®ex, "wxy", 3, 2, -2, ®s) != 1)
1311 jm_cv_func_working_re_compile_pattern=yes,
1312 jm_cv_func_working_re_compile_pattern=no,
1313 dnl When crosscompiling, assume it's broken.
1314 jm_cv_func_working_re_compile_pattern=no))
1315 if test $jm_cv_func_working_re_compile_pattern = yes; then
1316 ac_use_included_regex=no
1319 test -n "$1" || AC_MSG_ERROR([missing argument])
1320 m4_syscmd([test -f $1])
1321 ifelse(m4_sysval, 0,
1323 AC_ARG_WITH(included-regex,
1324 [ --without-included-regex don't compile regex; this is the default on
1325 systems with version 2 of the GNU C library
1326 (use with caution on other system)],
1327 jm_with_regex=$withval,
1328 jm_with_regex=$ac_use_included_regex)
1329 if test "$jm_with_regex" = yes; then
1338 # Prerequisites of lib/regex.c.
1339 AC_DEFUN([jm_PREREQ_REGEX],
1341 dnl FIXME: Maybe provide a btowc replacement someday: solaris-2.5.1 lacks it.
1342 dnl FIXME: Check for wctype and iswctype, and and add -lw if necessary
1345 dnl Persuade glibc <string.h> to declare mempcpy().
1346 AC_REQUIRE([AC_GNU_SOURCE])
1348 AC_REQUIRE([ACX_C_RESTRICT])
1349 AC_REQUIRE([AC_FUNC_ALLOCA])
1350 AC_REQUIRE([AC_HEADER_STDC])
1351 AC_CHECK_HEADERS_ONCE(limits.h string.h wchar.h wctype.h)
1352 AC_CHECK_FUNCS_ONCE(isascii mempcpy)
1353 AC_CHECK_FUNCS(btowc)
1357 dnl based on acx_restrict.m4, from the GNU Autoconf Macro Archive at:
1358 dnl http://www.gnu.org/software/ac-archive/htmldoc/acx_restrict.html
1360 # Determine whether the C/C++ compiler supports the "restrict" keyword
1361 # introduced in ANSI C99, or an equivalent. Do nothing if the compiler
1362 # accepts it. Otherwise, if the compiler supports an equivalent (like
1363 # gcc's __restrict__) define "restrict" to be that. Otherwise, define
1364 # "restrict" to be empty.
1366 AC_DEFUN([ACX_C_RESTRICT],
1367 [AC_CACHE_CHECK([for C/C++ restrict keyword], acx_cv_c_restrict,
1368 [acx_cv_c_restrict=no
1369 # Try the official restrict keyword, then gcc's __restrict__.
1370 for acx_kw in restrict __restrict__; do
1371 AC_COMPILE_IFELSE([AC_LANG_SOURCE(
1372 [float * $acx_kw x;])],
1373 [acx_cv_c_restrict=$acx_kw; break])
1376 case $acx_cv_c_restrict in
1378 no) AC_DEFINE(restrict,,
1379 [Define to equivalent of C99 restrict keyword, or to nothing if this
1380 is not supported. Do not define if restrict is supported directly.]) ;;
1381 *) AC_DEFINE_UNQUOTED(restrict, $acx_cv_c_restrict) ;;
1385 # onceonly.m4 serial 2
1386 dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
1387 dnl This file is free software, distributed under the terms of the GNU
1388 dnl General Public License. As a special exception to the GNU General
1389 dnl Public License, this file may be distributed as part of a program
1390 dnl that contains a configuration script generated by Autoconf, under
1391 dnl the same distribution terms as the rest of that program.
1393 dnl This file defines some "once only" variants of standard autoconf macros.
1394 dnl AC_CHECK_HEADERS_ONCE like AC_CHECK_HEADERS
1395 dnl AC_CHECK_FUNCS_ONCE like AC_CHECK_FUNCS
1396 dnl AC_CHECK_DECLS_ONCE like AC_CHECK_DECLS
1397 dnl AC_REQUIRE([AC_HEADER_STDC]) like AC_HEADER_STDC
1398 dnl The advantage is that the check for each of the headers/functions/decls
1399 dnl will be put only once into the 'configure' file. It keeps the size of
1400 dnl the 'configure' file down, and avoids redundant output when 'configure'
1402 dnl The drawback is that the checks cannot be conditionalized. If you write
1403 dnl if some_condition; then gl_CHECK_HEADERS(stdlib.h); fi
1404 dnl inside an AC_DEFUNed function, the gl_CHECK_HEADERS macro call expands to
1405 dnl empty, and the check will be inserted before the body of the AC_DEFUNed
1408 dnl Taken from Autoconf 2.50; can be removed once we assume 2.50 or later.
1409 define([m4_quote], [[$*]])
1411 # AC_CHECK_HEADERS_ONCE(HEADER1 HEADER2 ...) is a once-only variant of
1412 # AC_CHECK_HEADERS(HEADER1 HEADER2 ...).
1413 AC_DEFUN([AC_CHECK_HEADERS_ONCE], [
1415 AC_FOREACH([gl_HEADER_NAME], [$1], [
1416 AC_DEFUN([gl_CHECK_HEADER_]m4_quote(translit(defn([gl_HEADER_NAME]),
1418 AC_CHECK_HEADERS(gl_HEADER_NAME)
1420 AC_REQUIRE([gl_CHECK_HEADER_]m4_quote(translit(gl_HEADER_NAME,
1425 # AC_CHECK_FUNCS_ONCE(FUNC1 FUNC2 ...) is a once-only variant of
1426 # AC_CHECK_FUNCS(FUNC1 FUNC2 ...).
1427 AC_DEFUN([AC_CHECK_FUNCS_ONCE], [
1429 AC_FOREACH([gl_FUNC_NAME], [$1], [
1430 AC_DEFUN([gl_CHECK_FUNC_]defn([gl_FUNC_NAME]), [
1431 AC_CHECK_FUNCS(defn([gl_FUNC_NAME]))
1433 AC_REQUIRE([gl_CHECK_FUNC_]defn([gl_FUNC_NAME]))
1437 # AC_CHECK_DECLS_ONCE(DECL1 DECL2 ...) is a once-only variant of
1438 # AC_CHECK_DECLS(DECL1, DECL2, ...).
1439 AC_DEFUN([AC_CHECK_DECLS_ONCE], [
1441 AC_FOREACH([gl_DECL_NAME], [$1], [
1442 AC_DEFUN([gl_CHECK_DECL_]defn([gl_DECL_NAME]), [
1443 AC_CHECK_DECLS(defn([gl_DECL_NAME]))
1445 AC_REQUIRE([gl_CHECK_DECL_]defn([gl_DECL_NAME]))
1451 dnl From Paul Eggert.
1453 # Define HOST_OPERATING_SYSTEM to a name for the host operating system.
1454 AC_DEFUN([UTILS_HOST_OS],
1456 AC_CACHE_CHECK([host operating system],
1457 utils_cv_host_operating_system,
1461 # These operating system names do not use the default heuristic below.
1462 # They are in reverse order, so that more-specific prefixes come first.
1463 winnt*) os='Windows NT';;
1465 sysv*) os='Unix System V';;
1466 superux*) os='SUPER-UX';;
1467 sunos*) os='SunOS';;
1469 sco*) os='SCO Unix';;
1470 riscos*) os='RISC OS';;
1471 riscix*) os='RISCiX';;
1475 plan9*) os='Plan 9';;
1478 openbsd*) os='OpenBSD';;
1479 nsk*) os='NonStop Kernel';;
1480 nonstopux*) os='NonStop-UX';;
1481 netbsd*) os='NetBSD';;
1482 msdosdjgpp*) os='DJGPP';;
1483 mpeix*) os='MPE/iX';;
1485 mingw*) os='MinGW';;
1486 lynxos*) os='LynxOS';;
1487 linux*) os='GNU/Linux';;
1491 freebsd*-gnu*) os='GNU/FreeBSD';;
1492 freebsd*) os='FreeBSD';;
1494 bsdi*) os='BSD/OS';;
1498 atheos*) os='AtheOS';;
1499 amigaos*) os='Amiga OS';;
1502 # The default heuristic takes the initial alphabetic string
1503 # from $host_os, but capitalizes its first letter.
1506 expr "X$host_os" : 'X\([A-Za-z]\)' | tr '[a-z]' '[A-Z]'
1508 expr "X$host_os" : 'X.\([A-Za-z]*\)'
1512 # If $host_os does not start with an alphabetic string, use it unchanged.
1516 utils_cv_host_operating_system=$os]])
1517 AC_DEFINE_UNQUOTED(HOST_OPERATING_SYSTEM,
1518 "$utils_cv_host_operating_system",
1519 [The host operating system.])
1524 # On some systems, mkdir ("foo/", 0700) fails because of the trailing slash.
1525 # On such systems, arrange to use a wrapper function that removes any
1527 AC_DEFUN([UTILS_FUNC_MKDIR_TRAILING_SLASH],
1529 AC_CACHE_CHECK([whether mkdir fails due to a trailing slash],
1530 utils_cv_func_mkdir_trailing_slash_bug,
1532 # Arrange for deletion of the temporary directory this test might create.
1533 ac_clean_files="$ac_clean_files confdir-slash"
1535 # include <sys/types.h>
1536 # include <sys/stat.h>
1537 # include <stdlib.h>
1540 rmdir ("confdir-slash");
1541 exit (mkdir ("confdir-slash/", 0700));
1544 utils_cv_func_mkdir_trailing_slash_bug=no,
1545 utils_cv_func_mkdir_trailing_slash_bug=yes,
1546 utils_cv_func_mkdir_trailing_slash_bug=yes
1551 if test $utils_cv_func_mkdir_trailing_slash_bug = yes; then
1553 AC_DEFINE(mkdir, rpl_mkdir,
1554 [Define to rpl_mkdir if the replacement function should be used.])
1560 AC_DEFUN([jm_BISON],
1562 # getdate.y works with bison only.
1563 : ${YACC='bison -y'}
1568 dnl based on code from Eleftherios Gkioulekas
1570 AC_DEFUN([jm_ASSERT],
1572 AC_MSG_CHECKING(whether to enable assertions)
1573 AC_ARG_ENABLE(assert,
1574 [ --disable-assert turn off assertions],
1576 AC_DEFINE(NDEBUG,1,[Define to 1 if assertions should be disabled.]) ],
1577 [ AC_MSG_RESULT(yes) ]
1583 dnl From Jim Meyering
1585 dnl Define HAVE_STRUCT_UTIMBUF if `struct utimbuf' is declared --
1586 dnl usually in <utime.h>.
1587 dnl Some systems have utime.h but don't declare the struct anywhere.
1589 AC_DEFUN([jm_CHECK_TYPE_STRUCT_UTIMBUF],
1591 AC_CHECK_HEADERS(utime.h)
1592 AC_REQUIRE([AC_HEADER_TIME])
1593 AC_CACHE_CHECK([for struct utimbuf], fu_cv_sys_struct_utimbuf,
1596 #ifdef TIME_WITH_SYS_TIME
1597 # include <sys/time.h>
1600 # ifdef HAVE_SYS_TIME_H
1601 # include <sys/time.h>
1610 [static struct utimbuf x; x.actime = x.modtime;],
1611 fu_cv_sys_struct_utimbuf=yes,
1612 fu_cv_sys_struct_utimbuf=no)
1615 if test $fu_cv_sys_struct_utimbuf = yes; then
1616 AC_DEFINE(HAVE_STRUCT_UTIMBUF, 1,
1617 [Define if struct utimbuf is declared -- usually in <utime.h>.
1618 Some systems have utime.h but don't declare the struct anywhere. ])
1624 dnl From Jim Meyering.
1626 dnl Check whether struct dirent has a member named d_type.
1629 AC_DEFUN([jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE],
1630 [AC_REQUIRE([AC_HEADER_DIRENT])dnl
1631 AC_CACHE_CHECK([for d_type member in directory struct],
1632 jm_cv_struct_dirent_d_type,
1635 #include <sys/types.h>
1636 #ifdef HAVE_DIRENT_H
1637 # include <dirent.h>
1638 #else /* not HAVE_DIRENT_H */
1639 # define dirent direct
1640 # ifdef HAVE_SYS_NDIR_H
1641 # include <sys/ndir.h>
1642 # endif /* HAVE_SYS_NDIR_H */
1643 # ifdef HAVE_SYS_DIR_H
1644 # include <sys/dir.h>
1645 # endif /* HAVE_SYS_DIR_H */
1648 # endif /* HAVE_NDIR_H */
1649 #endif /* HAVE_DIRENT_H */
1651 [struct dirent dp; dp.d_type = 0;],
1653 jm_cv_struct_dirent_d_type=yes,
1654 jm_cv_struct_dirent_d_type=no)
1657 if test $jm_cv_struct_dirent_d_type = yes; then
1658 AC_DEFINE(HAVE_STRUCT_DIRENT_D_TYPE, 1,
1659 [Define if there is a member named d_type in the struct describing
1660 directory headers.])
1667 dnl From Jim Meyering.
1669 dnl Check whether struct dirent has a member named d_ino.
1672 AC_DEFUN([jm_CHECK_TYPE_STRUCT_DIRENT_D_INO],
1673 [AC_REQUIRE([AC_HEADER_DIRENT])dnl
1674 AC_CACHE_CHECK([for d_ino member in directory struct],
1675 jm_cv_struct_dirent_d_ino,
1678 #include <sys/types.h>
1679 #ifdef HAVE_DIRENT_H
1680 # include <dirent.h>
1681 #else /* not HAVE_DIRENT_H */
1682 # define dirent direct
1683 # ifdef HAVE_SYS_NDIR_H
1684 # include <sys/ndir.h>
1685 # endif /* HAVE_SYS_NDIR_H */
1686 # ifdef HAVE_SYS_DIR_H
1687 # include <sys/dir.h>
1688 # endif /* HAVE_SYS_DIR_H */
1691 # endif /* HAVE_NDIR_H */
1692 #endif /* HAVE_DIRENT_H */
1694 [struct dirent dp; dp.d_ino = 0;],
1696 jm_cv_struct_dirent_d_ino=yes,
1697 jm_cv_struct_dirent_d_ino=no)
1700 if test $jm_cv_struct_dirent_d_ino = yes; then
1701 AC_DEFINE(D_INO_IN_DIRENT, 1,
1702 [Define if there is a member named d_ino in the struct describing
1703 directory headers.])
1710 dnl This is just a wrapper function to encapsulate this kludge.
1711 dnl Putting it in a separate file like this helps share it between
1712 dnl different packages.
1713 AC_DEFUN([jm_CHECK_DECLS],
1715 AC_REQUIRE([_jm_DECL_HEADERS])
1716 AC_REQUIRE([AC_HEADER_TIME])
1720 # if !STDC_HEADERS && HAVE_MEMORY_H
1721 # include <memory.h>
1723 # include <string.h>
1726 # include <strings.h>
1730 # include <stdlib.h>
1733 # include <unistd.h>
1736 #include <sys/types.h>
1737 #if TIME_WITH_SYS_TIME
1738 # include <sys/time.h>
1741 # if HAVE_SYS_TIME_H
1742 # include <sys/time.h>
1783 ttyname], , , $headers)
1786 dnl FIXME: when autoconf has support for it.
1787 dnl This is a little helper so we can require these header checks.
1788 AC_DEFUN([_jm_DECL_HEADERS],
1790 AC_REQUIRE([AC_HEADER_STDC])
1791 AC_CHECK_HEADERS(grp.h memory.h pwd.h string.h strings.h stdlib.h \
1792 unistd.h sys/time.h utmp.h utmpx.h)
1797 dnl We use jm_ for non Autoconf macros.
1798 m4_pattern_forbid([^jm_[ABCDEFGHIJKLMNOPQRSTUVXYZ]])dnl
1799 m4_pattern_forbid([^gl_[ABCDEFGHIJKLMNOPQRSTUVXYZ]])dnl
1801 # These are the prerequisite macros for files in the lib/
1802 # directory of the coreutils package.
1804 AC_DEFUN([jm_PREREQ],
1806 AC_REQUIRE([jm_PREREQ_ADDEXT])
1808 # We don't yet use c-stack.c.
1809 # AC_REQUIRE([jm_PREREQ_C_STACK])
1811 AC_REQUIRE([jm_PREREQ_CANON_HOST])
1812 AC_REQUIRE([jm_PREREQ_DIRNAME])
1813 AC_REQUIRE([jm_PREREQ_ERROR])
1814 AC_REQUIRE([jm_PREREQ_EXCLUDE])
1815 AC_REQUIRE([jm_PREREQ_GETPAGESIZE])
1816 AC_REQUIRE([jm_PREREQ_HARD_LOCALE])
1817 AC_REQUIRE([jm_PREREQ_HASH])
1818 AC_REQUIRE([jm_PREREQ_HUMAN])
1819 AC_REQUIRE([jm_PREREQ_MBSWIDTH])
1820 AC_REQUIRE([jm_PREREQ_MEMCHR])
1821 AC_REQUIRE([jm_PREREQ_PHYSMEM])
1822 AC_REQUIRE([jm_PREREQ_POSIXVER])
1823 AC_REQUIRE([jm_PREREQ_QUOTEARG])
1824 AC_REQUIRE([jm_PREREQ_READUTMP])
1825 AC_REQUIRE([jm_PREREQ_STAT])
1826 AC_REQUIRE([jm_PREREQ_STRNLEN])
1827 AC_REQUIRE([jm_PREREQ_TEMPNAME]) # called by mkstemp
1828 AC_REQUIRE([jm_PREREQ_XGETCWD])
1829 AC_REQUIRE([jm_PREREQ_XREADLINK])
1832 AC_DEFUN([jm_PREREQ_ADDEXT],
1835 AC_REQUIRE([AC_SYS_LONG_FILE_NAMES])
1836 AC_CHECK_FUNCS(pathconf)
1837 AC_CHECK_HEADERS(limits.h string.h unistd.h)
1840 AC_DEFUN([jm_PREREQ_CANON_HOST],
1842 dnl Add any libraries as early as possible.
1843 dnl In particular, inet_ntoa needs -lnsl at least on Solaris5.5.1,
1844 dnl so we have to add -lnsl to LIBS before checking for that function.
1845 AC_SEARCH_LIBS(gethostbyname, [inet nsl])
1847 dnl These come from -lnsl on Solaris5.5.1.
1848 AC_CHECK_FUNCS(gethostbyname gethostbyaddr inet_ntoa)
1850 AC_CHECK_HEADERS(unistd.h string.h netdb.h sys/socket.h \
1851 netinet/in.h arpa/inet.h)
1854 AC_DEFUN([jm_PREREQ_DIRNAME],
1856 AC_REQUIRE([AC_HEADER_STDC])
1857 AC_CHECK_HEADERS(string.h)
1860 AC_DEFUN([jm_PREREQ_EXCLUDE],
1862 AC_REQUIRE([AC_FUNC_FNMATCH_GNU])
1863 AC_REQUIRE([AC_HEADER_STDBOOL])
1866 AC_DEFUN([jm_PREREQ_GETPAGESIZE],
1868 AC_CHECK_FUNCS(getpagesize)
1869 AC_CHECK_HEADERS(OS.h unistd.h)
1872 AC_DEFUN([jm_PREREQ_HARD_LOCALE],
1874 AC_CHECK_HEADERS(locale.h stdlib.h string.h)
1875 AC_CHECK_FUNCS(setlocale)
1876 AC_REQUIRE([AM_C_PROTOTYPES])
1879 AC_DEFUN([jm_PREREQ_HASH],
1881 AC_CHECK_HEADERS(stdlib.h)
1882 AC_REQUIRE([AC_HEADER_STDBOOL])
1883 AC_REQUIRE([jm_CHECK_DECLS])
1886 # If you use human.c, you need the following files:
1887 # inttypes.m4 longlong.m4
1888 AC_DEFUN([jm_PREREQ_HUMAN],
1890 AC_CHECK_HEADERS(locale.h)
1891 AC_CHECK_DECLS([getenv])
1892 AC_CHECK_FUNCS(localeconv)
1893 AC_REQUIRE([AC_HEADER_STDBOOL])
1894 AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])
1897 AC_DEFUN([jm_PREREQ_MEMCHR],
1899 AC_CHECK_HEADERS(limits.h stdlib.h bp-sym.h)
1902 # Check for the external symbol, _system_configuration,
1903 # a struct with member `physmem'.
1904 AC_DEFUN([gl_SYS__SYSTEM_CONFIGURATION],
1905 [AC_CACHE_CHECK(for external symbol _system_configuration,
1906 gl_cv_var__system_configuration,
1907 [AC_LINK_IFELSE([AC_LANG_PROGRAM(
1908 [[#include <sys/systemcfg.h>
1910 [double x = _system_configuration.physmem;])],
1911 [gl_cv_var__system_configuration=yes],
1912 [gl_cv_var__system_configuration=no])])
1914 if test $gl_cv_var__system_configuration = yes; then
1915 AC_DEFINE(HAVE__SYSTEM_CONFIGURATION, 1,
1916 [Define to 1 if you have the external variable,
1917 _system_configuration with a member named physmem.])
1922 AC_DEFUN([jm_PREREQ_PHYSMEM],
1924 AC_CHECK_HEADERS([unistd.h sys/pstat.h sys/sysmp.h sys/sysinfo.h \
1925 machine/hal_sysinfo.h sys/table.h sys/param.h sys/sysctl.h \
1927 AC_CHECK_FUNCS(pstat_getstatic pstat_getdynamic sysmp getsysinfo sysctl table)
1929 AC_REQUIRE([gl_SYS__SYSTEM_CONFIGURATION])
1932 AC_DEFUN([jm_PREREQ_POSIXVER],
1934 AC_CHECK_HEADERS(unistd.h)
1935 AC_CHECK_DECLS([getenv])
1938 AC_DEFUN([jm_PREREQ_QUOTEARG],
1940 AC_CHECK_FUNCS(isascii iswprint)
1941 AC_REQUIRE([jm_FUNC_MBRTOWC])
1942 AC_REQUIRE([jm_FUNC_MEMCMP])
1943 AC_CHECK_HEADERS(limits.h stddef.h stdlib.h string.h wchar.h wctype.h)
1944 AC_REQUIRE([AC_HEADER_STDC])
1945 AC_REQUIRE([AC_C_BACKSLASH_A])
1946 AC_REQUIRE([AC_TYPE_MBSTATE_T])
1947 AC_REQUIRE([AM_C_PROTOTYPES])
1950 AC_DEFUN([jm_PREREQ_READUTMP],
1952 AC_REQUIRE([AC_HEADER_STDC])
1953 AC_CHECK_HEADERS(string.h utmp.h utmpx.h sys/param.h)
1954 AC_CHECK_FUNCS(utmpname)
1955 AC_CHECK_FUNCS(utmpxname)
1956 AC_REQUIRE([AM_C_PROTOTYPES])
1958 if test $ac_cv_header_utmp_h = yes || test $ac_cv_header_utmpx_h = yes; then
1960 $ac_includes_default
1968 AC_CHECK_MEMBERS([struct utmpx.ut_user],,,[$utmp_includes])
1969 AC_CHECK_MEMBERS([struct utmp.ut_user],,,[$utmp_includes])
1970 AC_CHECK_MEMBERS([struct utmpx.ut_name],,,[$utmp_includes])
1971 AC_CHECK_MEMBERS([struct utmp.ut_name],,,[$utmp_includes])
1972 AC_CHECK_MEMBERS([struct utmpx.ut_type],,,[$utmp_includes])
1973 AC_CHECK_MEMBERS([struct utmp.ut_type],,,[$utmp_includes])
1974 AC_CHECK_MEMBERS([struct utmpx.ut_pid],,,[$utmp_includes])
1975 AC_CHECK_MEMBERS([struct utmp.ut_pid],,,[$utmp_includes])
1976 AC_CHECK_MEMBERS([struct utmpx.ut_id],,,[$utmp_includes])
1977 AC_CHECK_MEMBERS([struct utmp.ut_id],,,[$utmp_includes])
1979 AC_CHECK_MEMBERS([struct utmpx.ut_exit.ut_exit],,,[$utmp_includes])
1980 AC_CHECK_MEMBERS([struct utmp.ut_exit.ut_exit],,,[$utmp_includes])
1981 AC_CHECK_MEMBERS([struct utmpx.ut_exit.e_exit],,,[$utmp_includes])
1982 AC_CHECK_MEMBERS([struct utmp.ut_exit.e_exit],,,[$utmp_includes])
1984 AC_CHECK_MEMBERS([struct utmpx.ut_exit.ut_termination],,,[$utmp_includes])
1985 AC_CHECK_MEMBERS([struct utmp.ut_exit.ut_termination],,,[$utmp_includes])
1986 AC_CHECK_MEMBERS([struct utmpx.ut_exit.e_termination],,,[$utmp_includes])
1987 AC_CHECK_MEMBERS([struct utmp.ut_exit.e_termination],,,[$utmp_includes])
1992 AC_DEFUN([jm_PREREQ_STAT],
1994 AC_CHECK_HEADERS(sys/sysmacros.h sys/statvfs.h sys/vfs.h inttypes.h)
1995 AC_CHECK_HEADERS(sys/param.h sys/mount.h)
1996 AC_CHECK_FUNCS(statvfs)
1997 AC_REQUIRE([jm_AC_TYPE_LONG_LONG])
2000 $ac_includes_default
2001 #if HAVE_SYS_STATVFS_H
2002 # include <sys/statvfs.h>
2005 # include <sys/vfs.h>
2007 #if ( ! HAVE_SYS_STATVFS_H && ! HAVE_SYS_VFS_H && HAVE_SYS_MOUNT_H && HAVE_SYS_PARAM_H )
2008 /* NetBSD 1.5.2 needs these, for the declaration of struct statfs. */
2009 # include <sys/param.h>
2010 # include <sys/mount.h>
2013 AC_CHECK_MEMBERS([struct statfs.f_basetype],,,[$statxfs_includes])
2014 AC_CHECK_MEMBERS([struct statvfs.f_basetype],,,[$statxfs_includes])
2015 AC_CHECK_MEMBERS([struct statfs.f_fstypename],,,[$statxfs_includes])
2016 AC_CHECK_MEMBERS([struct statfs.f_type],,,[$statxfs_includes])
2017 AC_CHECK_MEMBERS([struct statvfs.f_type],,,[$statxfs_includes])
2018 AC_CHECK_MEMBERS([struct statfs.f_fsid.__val],,,[$statxfs_includes])
2019 AC_CHECK_MEMBERS([struct statvfs.f_fsid.__val],,,[$statxfs_includes])
2020 AC_CHECK_MEMBERS([struct statfs.f_namemax],,,[$statxfs_includes])
2021 AC_CHECK_MEMBERS([struct statvfs.f_namemax],,,[$statxfs_includes])
2022 AC_CHECK_MEMBERS([struct statfs.f_namelen],,,[$statxfs_includes])
2023 AC_CHECK_MEMBERS([struct statvfs.f_namelen],,,[$statxfs_includes])
2026 AC_DEFUN([jm_PREREQ_STRNLEN],
2028 AC_REQUIRE([AC_FUNC_STRNLEN])
2029 AC_REQUIRE([AC_HEADER_STDC])
2030 AC_CHECK_HEADERS(memory.h)
2031 AC_CHECK_DECLS([memchr])
2033 # This is necessary because automake-1.6.1 doesn't understand
2034 # that the above use of AC_FUNC_STRNLEN means we may have to use
2036 test $ac_cv_func_strnlen_working = yes \
2037 && AC_LIBOBJ(strnlen)
2040 AC_DEFUN([jm_PREREQ_TEMPNAME],
2042 AC_REQUIRE([AC_HEADER_STDC])
2043 AC_REQUIRE([AC_HEADER_STAT])
2044 AC_CHECK_HEADERS(fcntl.h sys/time.h stdint.h unistd.h)
2045 AC_CHECK_FUNCS(__secure_getenv gettimeofday)
2046 AC_CHECK_DECLS([getenv])
2047 AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])
2050 AC_DEFUN([jm_PREREQ_XGETCWD],
2052 AC_REQUIRE([AC_C_PROTOTYPES])
2053 AC_CHECK_HEADERS(limits.h stdlib.h sys/param.h unistd.h)
2054 AC_CHECK_FUNCS(getcwd)
2055 AC_REQUIRE([AC_FUNC_GETCWD_NULL])
2058 AC_DEFUN([jm_PREREQ_XREADLINK],
2060 AC_REQUIRE([AC_C_PROTOTYPES])
2061 AC_CHECK_HEADERS(limits.h stdlib.h sys/types.h unistd.h)
2066 dnl FIXME: put these prerequisite-only *.m4 files in a separate
2067 dnl directory -- otherwise, they'll conflict with existing files.
2069 dnl These are the prerequisite macros for GNU's error.c file.
2070 AC_DEFUN([jm_PREREQ_ERROR],
2072 AC_CHECK_FUNCS(strerror vprintf doprnt)
2073 AC_CHECK_DECLS([strerror])
2074 AC_CHECK_HEADERS([libintl.h])
2081 dnl autoconf tests required for use of mbswidth.c
2082 dnl From Bruno Haible.
2084 AC_DEFUN([jm_PREREQ_MBSWIDTH],
2086 AC_REQUIRE([AC_HEADER_STDC])
2087 AC_CHECK_HEADERS(limits.h stdlib.h string.h wchar.h wctype.h)
2088 AC_CHECK_FUNCS(isascii iswcntrl iswprint mbsinit wcwidth)
2091 AC_CACHE_CHECK([whether wcwidth is declared], ac_cv_have_decl_wcwidth,
2093 /* AIX 3.2.5 declares wcwidth in <string.h>. */
2095 # include <string.h>
2102 char *p = (char *) wcwidth;
2104 ], ac_cv_have_decl_wcwidth=yes, ac_cv_have_decl_wcwidth=no)])
2105 if test $ac_cv_have_decl_wcwidth = yes; then
2110 AC_DEFINE_UNQUOTED(HAVE_DECL_WCWIDTH, $ac_val,
2111 [Define to 1 if you have the declaration of wcwidth(), and to 0 otherwise.])
2116 # mbrtowc.m4 serial 4 (fileutils-4.1.3)
2117 dnl Copyright (C) 2001-2002 Free Software Foundation, Inc.
2118 dnl This file is free software, distributed under the terms of the GNU
2119 dnl General Public License. As a special exception to the GNU General
2120 dnl Public License, this file may be distributed as part of a program
2121 dnl that contains a configuration script generated by Autoconf, under
2122 dnl the same distribution terms as the rest of that program.
2124 dnl From Paul Eggert
2126 AC_DEFUN([jm_FUNC_MBRTOWC],
2128 AC_CACHE_CHECK([whether mbrtowc and mbstate_t are properly declared],
2131 [#include <wchar.h>],
2132 [mbstate_t state; return ! (sizeof state && mbrtowc);],
2133 jm_cv_func_mbrtowc=yes,
2134 jm_cv_func_mbrtowc=no)])
2135 if test $jm_cv_func_mbrtowc = yes; then
2136 AC_DEFINE(HAVE_MBRTOWC, 1,
2137 [Define to 1 if mbrtowc and mbstate_t are properly declared.])
2143 dnl A replacement for autoconf's macro by the same name. This version
2144 dnl uses `ac_lib' rather than `i' for the loop variable, but more importantly
2145 dnl moves the ACTION-IF-FOUND ([$]3) into the inner `if'-block so that it is
2146 dnl run only if one of the listed libraries ends up being used (and not in
2147 dnl the `none required' case.
2148 dnl I hope it's only temporary while we wait for that version to be fixed.
2149 undefine([AC_SEARCH_LIBS])
2151 # AC_SEARCH_LIBS(FUNCTION, SEARCH-LIBS,
2152 # [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND],
2153 # [OTHER-LIBRARIES])
2154 # --------------------------------------------------------
2155 # Search for a library defining FUNC, if it's not already available.
2156 AC_DEFUN([AC_SEARCH_LIBS],
2158 AC_CACHE_CHECK([for library containing $1], [ac_cv_search_$1],
2160 ac_func_search_save_LIBS=$LIBS
2162 AC_TRY_LINK_FUNC([$1], [ac_cv_search_$1='none required'])
2163 if test "$ac_cv_search_$1" = no; then
2164 for ac_lib in $2; do
2165 LIBS="-l$ac_lib $5 $ac_func_search_save_LIBS"
2166 AC_TRY_LINK_FUNC([$1], [ac_cv_search_$1="-l$ac_lib"; break])
2169 LIBS=$ac_func_search_save_LIBS
2172 if test "$ac_cv_search_$1" = no; then :
2175 if test "$ac_cv_search_$1" = 'none required'; then :
2178 LIBS="$ac_cv_search_$1 $LIBS"
2184 # Check for stdbool.h that conforms to C99.
2186 # Copyright (C) 2002 Free Software Foundation, Inc.
2188 # This program is free software; you can redistribute it and/or modify
2189 # it under the terms of the GNU General Public License as published by
2190 # the Free Software Foundation; either version 2, or (at your option)
2191 # any later version.
2193 # This program is distributed in the hope that it will be useful,
2194 # but WITHOUT ANY WARRANTY; without even the implied warranty of
2195 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2196 # GNU General Public License for more details.
2198 # You should have received a copy of the GNU General Public License
2199 # along with this program; if not, write to the Free Software
2200 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
2203 AC_DEFUN([AC_HEADER_STDBOOL],
2204 [AC_CACHE_CHECK([for stdbool.h that conforms to C99],
2205 [ac_cv_header_stdbool_h],
2208 #include <stdbool.h>
2210 "error: bool is not defined"
2213 "error: false is not defined"
2216 "error: false is not 0"
2219 "error: false is not defined"
2222 "error: true is not 1"
2224 #ifndef __bool_true_false_are_defined
2225 "error: __bool_true_false_are_defined is not defined"
2228 struct s { _Bool s: 1; _Bool t; } s;
2230 char a[true == 1 ? 1 : -1];
2231 char b[false == 0 ? 1 : -1];
2232 char c[__bool_true_false_are_defined == 1 ? 1 : -1];
2233 char d[(bool) -0.5 == true ? 1 : -1];
2235 char f[(_Bool) -0.0 == false ? 1 : -1];
2237 char h[sizeof (_Bool)];
2240 [ return !a + !b + !c + !d + !e + !f + !g + !h + !i; ],
2241 [ac_cv_header_stdbool_h=yes],
2242 [ac_cv_header_stdbool_h=no])])
2243 if test $ac_cv_header_stdbool_h = yes; then
2244 AC_DEFINE(HAVE_STDBOOL_H, 1, [Define to 1 if stdbool.h conforms to C99.])
2248 # Copyright 1996, 1997, 1998, 2000, 2001, 2002 Free Software Foundation, Inc.
2250 # This program is free software; you can redistribute it and/or modify
2251 # it under the terms of the GNU General Public License as published by
2252 # the Free Software Foundation; either version 2, or (at your option)
2253 # any later version.
2255 # This program is distributed in the hope that it will be useful,
2256 # but WITHOUT ANY WARRANTY; without even the implied warranty of
2257 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2258 # GNU General Public License for more details.
2260 # You should have received a copy of the GNU General Public License
2261 # along with this program; if not, write to the Free Software
2262 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
2267 AC_DEFUN([AM_C_PROTOTYPES],
2268 [AC_REQUIRE([AM_PROG_CC_STDC])
2269 AC_REQUIRE([AC_PROG_CPP])
2270 AC_MSG_CHECKING([for function prototypes])
2271 if test "$am_cv_prog_cc_stdc" != no; then
2273 AC_DEFINE(PROTOTYPES,1,[Define if compiler has function prototypes])
2277 U=_ ANSI2KNR=./ansi2knr
2279 # Ensure some checks needed by ansi2knr itself.
2281 AC_CHECK_HEADERS(string.h)
2283 AC_SUBST(ANSI2KNR)dnl
2286 AU_DEFUN([fp_C_PROTOTYPES], [AM_C_PROTOTYPES])
2289 # Copyright 1996, 1997, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
2291 # This program is free software; you can redistribute it and/or modify
2292 # it under the terms of the GNU General Public License as published by
2293 # the Free Software Foundation; either version 2, or (at your option)
2294 # any later version.
2296 # This program is distributed in the hope that it will be useful,
2297 # but WITHOUT ANY WARRANTY; without even the implied warranty of
2298 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2299 # GNU General Public License for more details.
2301 # You should have received a copy of the GNU General Public License
2302 # along with this program; if not, write to the Free Software
2303 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
2308 # @defmac AC_PROG_CC_STDC
2309 # @maindex PROG_CC_STDC
2311 # If the C compiler in not in ANSI C mode by default, try to add an option
2312 # to output variable @code{CC} to make it so. This macro tries various
2313 # options that select ANSI C on some system or another. It considers the
2314 # compiler to be in ANSI C mode if it handles function prototypes correctly.
2316 # If you use this macro, you should check after calling it whether the C
2317 # compiler has been set to accept ANSI C; if not, the shell variable
2318 # @code{am_cv_prog_cc_stdc} is set to @samp{no}. If you wrote your source
2319 # code in ANSI C, you can make an un-ANSIfied copy of it by using the
2320 # program @code{ansi2knr}, which comes with Ghostscript.
2323 AC_DEFUN([AM_PROG_CC_STDC],
2324 [AC_REQUIRE([AC_PROG_CC])
2325 AC_BEFORE([$0], [AC_C_INLINE])
2326 AC_BEFORE([$0], [AC_C_CONST])
2327 dnl Force this before AC_PROG_CPP. Some cpp's, eg on HPUX, require
2328 dnl a magic option to avoid problems with ANSI preprocessor commands
2330 dnl FIXME: can't do this because then AC_AIX won't work due to a
2331 dnl circular dependency.
2332 dnl AC_BEFORE([$0], [AC_PROG_CPP])
2333 AC_MSG_CHECKING([for ${CC-cc} option to accept ANSI C])
2334 AC_CACHE_VAL(am_cv_prog_cc_stdc,
2335 [am_cv_prog_cc_stdc=no
2337 # Don't try gcc -ansi; that turns off useful extensions and
2338 # breaks some systems' header files.
2339 # AIX -qlanglvl=ansi
2340 # Ultrix and OSF/1 -std1
2341 # HP-UX 10.20 and later -Ae
2342 # HP-UX older versions -Aa -D_HPUX_SOURCE
2343 # SVR4 -Xc -D__EXTENSIONS__
2344 for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
2346 CC="$ac_save_CC $ac_arg"
2348 [#include <stdarg.h>
2350 #include <sys/types.h>
2351 #include <sys/stat.h>
2352 /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
2353 struct buf { int x; };
2354 FILE * (*rcsopen) (struct buf *, struct stat *, int);
2355 static char *e (p, i)
2361 static char *f (char * (*g) (char **, int), char **p, ...)
2366 s = g (p, va_arg (v,int));
2370 int test (int i, double x);
2371 struct s1 {int (*f) (int a);};
2372 struct s2 {int (*f) (double a);};
2373 int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
2377 return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
2379 [am_cv_prog_cc_stdc="$ac_arg"; break])
2383 if test -z "$am_cv_prog_cc_stdc"; then
2384 AC_MSG_RESULT([none needed])
2386 AC_MSG_RESULT([$am_cv_prog_cc_stdc])
2388 case "x$am_cv_prog_cc_stdc" in
2390 *) CC="$CC $am_cv_prog_cc_stdc" ;;
2394 AU_DEFUN([fp_PROG_CC_STDC], [AM_PROG_CC_STDC])
2398 dnl From Paul Eggert.
2402 # Define intmax_t to long or long long if <inttypes.h> doesn't define.
2404 AC_DEFUN([jm_AC_TYPE_INTMAX_T],
2406 AC_REQUIRE([jm_AC_TYPE_LONG_LONG])
2407 AC_CHECK_TYPE(intmax_t, ,
2408 [test $ac_cv_type_long_long = yes \
2409 && ac_type='long long' \
2411 AC_DEFINE_UNQUOTED(intmax_t, $ac_type,
2412 [Define to widest signed type if <inttypes.h> doesn't define.])])
2415 # Define uintmax_t to unsigned long or unsigned long long
2416 # if <inttypes.h> doesn't define.
2418 AC_DEFUN([jm_AC_TYPE_UINTMAX_T],
2420 AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG])
2421 AC_CHECK_TYPE(uintmax_t, ,
2422 [test $ac_cv_type_unsigned_long_long = yes \
2423 && ac_type='unsigned long long' \
2424 || ac_type='unsigned long'
2425 AC_DEFINE_UNQUOTED(uintmax_t, $ac_type,
2426 [Define to widest unsigned type if <inttypes.h> doesn't define.])])
2431 dnl From Paul Eggert.
2433 # Define HAVE_LONG_LONG if 'long long' works.
2435 AC_DEFUN([jm_AC_TYPE_LONG_LONG],
2437 AC_CACHE_CHECK([for long long], ac_cv_type_long_long,
2438 [AC_TRY_LINK([long long ll = 1; int i = 63;],
2439 [long long llmax = (long long) -1;
2440 return ll << i | ll >> i | llmax / ll | llmax % ll;],
2441 ac_cv_type_long_long=yes,
2442 ac_cv_type_long_long=no)])
2443 if test $ac_cv_type_long_long = yes; then
2444 AC_DEFINE(HAVE_LONG_LONG, 1,
2445 [Define if you have the long long type.])
2449 # Define HAVE_UNSIGNED_LONG_LONG if 'unsigned long long' works.
2451 AC_DEFUN([jm_AC_TYPE_UNSIGNED_LONG_LONG],
2453 AC_CACHE_CHECK([for unsigned long long], ac_cv_type_unsigned_long_long,
2454 [AC_TRY_LINK([unsigned long long ull = 1; int i = 63;],
2455 [unsigned long long ullmax = (unsigned long long) -1;
2456 return ull << i | ull >> i | ullmax / ull | ullmax % ull;],
2457 ac_cv_type_unsigned_long_long=yes,
2458 ac_cv_type_unsigned_long_long=no)])
2459 if test $ac_cv_type_unsigned_long_long = yes; then
2460 AC_DEFINE(HAVE_UNSIGNED_LONG_LONG, 1,
2461 [Define if you have the unsigned long long type.])
2467 AC_DEFUN([jm_FUNC_MEMCMP],
2468 [AC_REQUIRE([AC_FUNC_MEMCMP])dnl
2469 if test $ac_cv_func_memcmp_working = no; then
2470 AC_DEFINE(memcmp, rpl_memcmp,
2471 [Define to rpl_memcmp if the replacement function should be used.])
2475 # getcwd.m4 - check whether getcwd (NULL, 0) allocates memory for result
2477 # Copyright 2001 Free Software Foundation, Inc.
2479 # This program is free software; you can redistribute it and/or modify
2480 # it under the terms of the GNU General Public License as published by
2481 # the Free Software Foundation; either version 2, or (at your option)
2482 # any later version.
2484 # This program is distributed in the hope that it will be useful,
2485 # but WITHOUT ANY WARRANTY; without even the implied warranty of
2486 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2487 # GNU General Public License for more details.
2489 # You should have received a copy of the GNU General Public License
2490 # along with this program; if not, write to the Free Software Foundation,
2491 # Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
2493 # Written by Paul Eggert.
2495 AC_DEFUN([AC_FUNC_GETCWD_NULL],
2496 [AC_CHECK_HEADERS(stdlib.h unistd.h)
2497 AC_CACHE_CHECK([whether getcwd (NULL, 0) allocates memory for result],
2498 [ac_cv_func_getcwd_null],
2501 # ifdef HAVE_STDLIB_H
2502 # include <stdlib.h>
2504 # ifdef HAVE_UNISTD_H
2505 # include <unistd.h>
2513 if (chdir ("/") != 0)
2517 char *f = getcwd (NULL, 0);
2518 exit (! (f && f[0] == '/' && !f[1]));
2521 [ac_cv_func_getcwd_null=yes],
2522 [ac_cv_func_getcwd_null=no],
2523 [ac_cv_func_getcwd_null=no])])
2524 if test $ac_cv_func_getcwd_null = yes; then
2525 AC_DEFINE(HAVE_GETCWD_NULL, 1,
2526 [Define if getcwd (NULL, 0) allocates memory for result.])
2531 dnl Find out how to get the file descriptor associated with an open DIR*.
2532 dnl From Jim Meyering
2534 AC_DEFUN([UTILS_FUNC_DIRFD],
2536 dnl Work around a bug of AC_EGREP_CPP in autoconf-2.57.
2537 AC_REQUIRE([AC_PROG_CPP])
2538 AC_REQUIRE([AC_PROG_EGREP])
2543 # include <dirent.h>
2544 #else /* not HAVE_DIRENT_H */
2545 # define dirent direct
2546 # if HAVE_SYS_NDIR_H
2547 # include <sys/ndir.h>
2548 # endif /* HAVE_SYS_NDIR_H */
2550 # include <sys/dir.h>
2551 # endif /* HAVE_SYS_DIR_H */
2554 # endif /* HAVE_NDIR_H */
2555 #endif /* HAVE_DIRENT_H */
2557 AC_CHECK_FUNCS(dirfd)
2558 AC_CHECK_DECLS([dirfd], , , $dirfd_headers)
2560 AC_CACHE_CHECK([whether dirfd is a macro],
2561 jm_cv_func_dirfd_macro,
2562 AC_EGREP_CPP([dirent_header_defines_dirfd], [$dirfd_headers
2564 dirent_header_defines_dirfd
2566 jm_cv_func_dirfd_macro=yes,
2567 jm_cv_func_dirfd_macro=no))
2569 # Use the replacement only if we have no function, macro,
2570 # or declaration with that name.
2571 if test $ac_cv_func_dirfd,$ac_cv_have_decl_dirfd,$jm_cv_func_dirfd_macro \
2573 AC_REPLACE_FUNCS([dirfd])
2575 [how to get the file descriptor associated with an open DIR*],
2576 gl_cv_sys_dir_fd_member_name,
2578 dirfd_save_CFLAGS=$CFLAGS
2579 for ac_expr in d_fd dd_fd; do
2581 CFLAGS="$CFLAGS -DDIR_FD_MEMBER_NAME=$ac_expr"
2585 [DIR *dir_p = opendir("."); (void) dir_p->DIR_FD_MEMBER_NAME;],
2588 CFLAGS=$dirfd_save_CFLAGS
2589 test "$dir_fd_found" = yes && break
2591 test "$dir_fd_found" = yes || ac_expr=no_such_member
2593 gl_cv_sys_dir_fd_member_name=$ac_expr
2596 if test $gl_cv_sys_dir_fd_member_name != no_such_member; then
2597 AC_DEFINE_UNQUOTED(DIR_FD_MEMBER_NAME,
2598 $gl_cv_sys_dir_fd_member_name,
2599 [the name of the file descriptor member of DIR])
2601 AH_VERBATIM(DIR_TO_FD,
2602 [#ifdef DIR_FD_MEMBER_NAME
2603 # define DIR_TO_FD(Dir_p) ((Dir_p)->DIR_FD_MEMBER_NAME)
2605 # define DIR_TO_FD(Dir_p) -1
2612 # acl.m4 - check for access control list (ACL) primitives
2614 # Copyright (C) 2002 Free Software Foundation, Inc.
2616 # This program is free software; you can redistribute it and/or modify
2617 # it under the terms of the GNU General Public License as published by
2618 # the Free Software Foundation; either version 2, or (at your option)
2619 # any later version.
2621 # This program is distributed in the hope that it will be useful,
2622 # but WITHOUT ANY WARRANTY; without even the implied warranty of
2623 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2624 # GNU General Public License for more details.
2626 # You should have received a copy of the GNU General Public License
2627 # along with this program; if not, write to the Free Software Foundation,
2628 # Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
2630 # Written by Paul Eggert.
2632 AC_DEFUN([AC_FUNC_ACL],
2633 [AC_CHECK_HEADERS(sys/acl.h)
2634 AC_CHECK_FUNCS(acl)])
2637 # Use the replacement ftw.c if the one in the C library is inadequate or buggy.
2638 # For now, we always use the code in lib/ because libc doesn't have the FTW_DCH
2639 # or FTW_DCHP that we need. Arrange to use lib/ftw.h. And since that
2640 # implementation uses tsearch.c/tdestroy, add tsearch.o to the list of
2641 # objects and arrange to use lib/search.h if necessary.
2644 AC_DEFUN([AC_FUNC_FTW],
2647 AC_REQUIRE([AC_HEADER_STAT])
2648 AC_REQUIRE([jm_FUNC_LSTAT])
2649 AC_REQUIRE([AC_HEADER_DIRENT])
2650 AC_CHECK_HEADERS(sys/param.h)
2651 AC_CHECK_DECLS([stpcpy])
2653 # In the event that we have to use the replacement ftw.c,
2654 # see if we'll also need the replacement tsearch.c.
2655 AC_CHECK_FUNC([tdestroy], , [need_tdestroy=1])
2657 AC_CACHE_CHECK([for ftw/FTW_CHDIR that informs callback of failed chdir],
2658 ac_cv_func_ftw_working,
2660 # The following test would fail prior to glibc-2.3.2, because `depth'
2661 # would be 2 rather than 4. Of course, now that we require FTW_DCH
2662 # and FTW_DCHP, this test fails even with GNU libc's fixed ftw.
2663 mkdir -p conftest.dir/a/b/c
2664 AC_RUN_IFELSE([AC_LANG_SOURCE([[
2669 static char *_f[] = { "conftest.dir", "conftest.dir/a",
2670 "conftest.dir/a/b", "conftest.dir/a/b/c" };
2671 static char **p = _f;
2675 cb (const char *file, const struct stat *sb, int file_type, struct FTW *info)
2677 if (strcmp (file, *p++) != 0)
2686 /* Require these symbols, too. */
2690 int err = nftw ("conftest.dir", cb, 30, FTW_PHYS | FTW_MOUNT | FTW_CHDIR);
2691 exit ((err == 0 && depth == 4) ? 0 : 1);
2694 [ac_cv_func_ftw_working=yes],
2695 [ac_cv_func_ftw_working=no],
2696 [ac_cv_func_ftw_working=no])])
2698 if test $ac_cv_func_ftw_working = no; then
2700 AC_CONFIG_LINKS([$ac_config_libobj_dir/ftw.h:$ac_config_libobj_dir/ftw_.h])
2701 # Add tsearch.o IFF we have to use the replacement ftw.c.
2702 if test -n "$need_tdestroy"; then
2703 AC_LIBOBJ([tsearch])
2704 # Link search.h to search_.h if we use the replacement tsearch.c.
2706 [$ac_config_libobj_dir/search.h:$ac_config_libobj_dir/search_.h])
2713 dnl From Jim Meyering.
2714 dnl Determine whether lstat has the bug that it succeeds when given the
2715 dnl zero-length file name argument. The lstat from SunOS4.1.4 and the Hurd
2716 dnl (as of 1998-11-01) do this.
2718 dnl If it does, then define HAVE_LSTAT_EMPTY_STRING_BUG and arrange to
2719 dnl compile the wrapper function.
2722 AC_DEFUN([jm_FUNC_LSTAT],
2724 AC_REQUIRE([AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK])
2725 AC_CACHE_CHECK([whether lstat accepts an empty string],
2726 jm_cv_func_lstat_empty_string_bug,
2728 # include <sys/types.h>
2729 # include <sys/stat.h>
2735 exit (lstat ("", &sbuf) ? 1 : 0);
2738 jm_cv_func_lstat_empty_string_bug=yes,
2739 jm_cv_func_lstat_empty_string_bug=no,
2740 dnl When crosscompiling, assume lstat is broken.
2741 jm_cv_func_lstat_empty_string_bug=yes)
2743 if test $jm_cv_func_lstat_empty_string_bug = yes; then
2745 AC_DEFINE(HAVE_LSTAT_EMPTY_STRING_BUG, 1,
2746 [Define if lstat has the bug that it succeeds when given the zero-length
2747 file name argument. The lstat from SunOS4.1.4 and the Hurd as of 1998-11-01)
2754 dnl From Jim Meyering.
2755 dnl Provide lchown on systems that lack it.
2757 AC_DEFUN([jm_FUNC_LCHOWN],
2759 AC_REQUIRE([AC_TYPE_UID_T])
2760 AC_REPLACE_FUNCS(lchown)
2765 # When rmdir fails because the specified directory is not empty, it sets
2766 # errno to some value, usually ENOTEMPTY. However, on some AIX systems,
2767 # ENOTEMPTY is mistakenly defined to be EEXIST. To work around this, and
2768 # in general, to avoid depending on the use of any particular symbol, this
2769 # test runs a test to determine the actual numeric value.
2770 AC_DEFUN([fetish_FUNC_RMDIR_NOTEMPTY],
2772 AC_CACHE_CHECK([for rmdir-not-empty errno value],
2773 fetish_cv_func_rmdir_errno_not_empty,
2775 # Arrange for deletion of the temporary directory this test creates.
2776 ac_clean_files="$ac_clean_files confdir2"
2777 mkdir confdir2; : > confdir2/file
2790 s = fopen ("confdir2/errno", "w");
2791 fprintf (s, "%d\n", val);
2795 fetish_cv_func_rmdir_errno_not_empty=`cat confdir2/errno`,
2796 fetish_cv_func_rmdir_errno_not_empty='configure error in rmdir-errno.m4',
2797 fetish_cv_func_rmdir_errno_not_empty=ENOTEMPTY
2802 AC_DEFINE_UNQUOTED([RMDIR_ERRNO_NOT_EMPTY],
2803 $fetish_cv_func_rmdir_errno_not_empty,
2804 [the value to which errno is set when rmdir fails on a nonempty directory])
2809 dnl From Jim Meyering.
2810 dnl Determine whether chown accepts arguments of -1 for uid and gid.
2811 dnl If it doesn't, arrange to use the replacement function.
2814 AC_DEFUN([jm_FUNC_CHOWN],
2815 [AC_REQUIRE([AC_TYPE_UID_T])dnl
2816 test -z "$ac_cv_header_unistd_h" \
2817 && AC_CHECK_HEADERS(unistd.h)
2818 AC_CACHE_CHECK([for working chown], jm_cv_func_working_chown,
2820 # include <sys/types.h>
2821 # include <sys/stat.h>
2823 # ifdef HAVE_UNISTD_H
2824 # include <unistd.h>
2830 char *f = "conftest.chown";
2831 struct stat before, after;
2833 if (creat (f, 0600) < 0)
2835 if (stat (f, &before) < 0)
2837 if (chown (f, (uid_t) -1, (gid_t) -1) == -1)
2839 if (stat (f, &after) < 0)
2841 exit ((before.st_uid == after.st_uid
2842 && before.st_gid == after.st_gid) ? 0 : 1);
2845 jm_cv_func_working_chown=yes,
2846 jm_cv_func_working_chown=no,
2847 dnl When crosscompiling, assume chown is broken.
2848 jm_cv_func_working_chown=no)
2850 if test $jm_cv_func_working_chown = no; then
2852 AC_DEFINE(chown, rpl_chown,
2853 [Define to rpl_chown if the replacement function should be used.])
2859 dnl From Jim Meyering.
2860 dnl A wrapper around AC_FUNC_MKTIME.
2862 AC_DEFUN([jm_FUNC_MKTIME],
2863 [AC_REQUIRE([AC_FUNC_MKTIME])dnl
2865 dnl mktime.c uses localtime_r if it exists. Check for it.
2866 AC_CHECK_FUNCS(localtime_r)
2868 if test $ac_cv_func_working_mktime = no; then
2869 AC_DEFINE(mktime, rpl_mktime,
2870 [Define to rpl_mktime if the replacement function should be used.])
2876 dnl From Jim Meyering.
2877 dnl Determine whether stat has the bug that it succeeds when given the
2878 dnl zero-length file name argument. The stat from SunOS4.1.4 and the Hurd
2879 dnl (as of 1998-11-01) do this.
2881 dnl If it does, then define HAVE_STAT_EMPTY_STRING_BUG and arrange to
2882 dnl compile the wrapper function.
2885 AC_DEFUN([jm_FUNC_STAT],
2887 AC_REQUIRE([AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK])
2888 AC_CACHE_CHECK([whether stat accepts an empty string],
2889 jm_cv_func_stat_empty_string_bug,
2891 # include <sys/types.h>
2892 # include <sys/stat.h>
2898 exit (stat ("", &sbuf) ? 1 : 0);
2901 jm_cv_func_stat_empty_string_bug=yes,
2902 jm_cv_func_stat_empty_string_bug=no,
2903 dnl When crosscompiling, assume stat is broken.
2904 jm_cv_func_stat_empty_string_bug=yes)
2906 if test $jm_cv_func_stat_empty_string_bug = yes; then
2908 AC_DEFINE(HAVE_STAT_EMPTY_STRING_BUG, 1,
2909 [Define if stat has the bug that it succeeds when given the zero-length
2910 file name argument. The stat from SunOS4.1.4 and the Hurd as of 1998-11-01)
2917 dnl From Jim Meyering.
2918 dnl Check for the nanosleep function.
2919 dnl If not found, use the supplied replacement.
2922 AC_DEFUN([jm_FUNC_NANOSLEEP],
2924 nanosleep_save_libs=$LIBS
2926 # Solaris 2.5.1 needs -lposix4 to get the nanosleep function.
2927 # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4.
2928 AC_SEARCH_LIBS(nanosleep, [rt posix4], [LIB_NANOSLEEP=$ac_cv_search_nanosleep])
2929 AC_SUBST(LIB_NANOSLEEP)
2931 AC_CACHE_CHECK([whether nanosleep works],
2932 jm_cv_func_nanosleep_works,
2934 AC_REQUIRE([AC_HEADER_TIME])
2936 # if TIME_WITH_SYS_TIME
2937 # include <sys/time.h>
2940 # if HAVE_SYS_TIME_H
2941 # include <sys/time.h>
2950 struct timespec ts_sleep, ts_remaining;
2951 ts_sleep.tv_sec = 0;
2952 ts_sleep.tv_nsec = 1;
2953 exit (nanosleep (&ts_sleep, &ts_remaining) == 0 ? 0 : 1);
2956 jm_cv_func_nanosleep_works=yes,
2957 jm_cv_func_nanosleep_works=no,
2958 dnl When crosscompiling, assume the worst.
2959 jm_cv_func_nanosleep_works=no)
2961 if test $jm_cv_func_nanosleep_works = no; then
2962 AC_LIBOBJ(nanosleep)
2963 AC_DEFINE(nanosleep, rpl_nanosleep,
2964 [Define to rpl_nanosleep if the replacement function should be used.])
2967 LIBS=$nanosleep_save_libs
2970 #serial 7 -*- autoconf -*-
2972 dnl From Jim Meyering.
2974 dnl See if the glibc *_unlocked I/O macros are available.
2975 dnl Use only those *_unlocked macros that are declared.
2978 AC_DEFUN([jm_FUNC_GLIBC_UNLOCKED_IO],
2980 [clearerr_unlocked, feof_unlocked, ferror_unlocked,
2981 fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
2982 fread_unlocked, fwrite_unlocked, getc_unlocked,
2983 getchar_unlocked, putc_unlocked, putchar_unlocked])])
2987 dnl Written by Jim Meyering
2989 AC_DEFUN([jm_FUNC_GROUP_MEMBER],
2991 dnl Do this replacement check manually because I want the hyphen
2992 dnl (not the underscore) in the filename.
2993 AC_CHECK_FUNC(group_member, , [AC_LIBOBJ(group-member)])
2999 dnl From Jim Meyering.
3001 dnl Check whether putenv ("FOO") removes FOO from the environment.
3002 dnl The putenv in libc on at least SunOS 4.1.4 does *not* do that.
3005 AC_DEFUN([jm_FUNC_PUTENV],
3006 [AC_CACHE_CHECK([for SVID conformant putenv], jm_cv_func_svid_putenv,
3011 /* Put it in env. */
3012 if (putenv ("CONFTEST_putenv=val"))
3015 /* Try to remove it. */
3016 if (putenv ("CONFTEST_putenv"))
3019 /* Make sure it was deleted. */
3020 if (getenv ("CONFTEST_putenv") != 0)
3026 jm_cv_func_svid_putenv=yes,
3027 jm_cv_func_svid_putenv=no,
3028 dnl When crosscompiling, assume putenv is broken.
3029 jm_cv_func_svid_putenv=no)
3031 if test $jm_cv_func_svid_putenv = no; then
3033 AC_DEFINE(putenv, rpl_putenv,
3034 [Define to rpl_putenv if the replacement function should be used.])
3042 AC_MSG_CHECKING(for AFS)
3043 if test -d /afs; then
3044 AC_DEFINE(AFS, 1, [Define if you have the Andrew File System.])
3049 AC_MSG_RESULT($ac_result)
3054 # autoconf tests required for use of xstrtoumax.c
3056 AC_DEFUN([jm_AC_PREREQ_XSTRTOUMAX],
3058 AC_REQUIRE([jm_AC_TYPE_INTMAX_T])
3059 AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])
3060 AC_REQUIRE([jm_AC_TYPE_LONG_LONG])
3061 AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG])
3062 AC_CHECK_DECLS([strtol, strtoul, strtoull, strtoimax, strtoumax])
3063 AC_CHECK_HEADERS(limits.h stdlib.h inttypes.h)
3065 AC_CACHE_CHECK([whether <inttypes.h> defines strtoumax as a macro],
3066 jm_cv_func_strtoumax_macro,
3067 AC_EGREP_CPP([inttypes_h_defines_strtoumax], [#include <inttypes.h>
3069 inttypes_h_defines_strtoumax
3071 jm_cv_func_strtoumax_macro=yes,
3072 jm_cv_func_strtoumax_macro=no))
3074 if test "$jm_cv_func_strtoumax_macro" != yes; then
3075 AC_REPLACE_FUNCS(strtoumax)
3078 dnl Only the replacement strtoumax invokes strtoul and strtoull,
3079 dnl so we need the replacements only if strtoumax does not exist.
3080 case "$jm_cv_func_strtoumax_macro,$ac_cv_func_strtoumax" in
3082 AC_REPLACE_FUNCS(strtoul)
3084 dnl We don't need (and can't compile) the replacement strtoull
3085 dnl unless the type `unsigned long long' exists.
3086 if test "$ac_cv_type_unsigned_long_long" = yes; then
3087 AC_REPLACE_FUNCS(strtoull)
3094 dnl Cloned from xstrtoumax.m4. Keep these files in sync.
3096 # autoconf tests required for use of xstrtoimax.c
3098 AC_DEFUN([jm_AC_PREREQ_XSTRTOIMAX],
3100 AC_REQUIRE([jm_AC_TYPE_INTMAX_T])
3101 AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])
3102 AC_REQUIRE([jm_AC_TYPE_LONG_LONG])
3103 AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG])
3104 AC_CHECK_DECLS([strtol, strtoul, strtoll, strtoimax, strtoumax])
3105 AC_CHECK_HEADERS(limits.h stdlib.h inttypes.h)
3107 AC_CACHE_CHECK([whether <inttypes.h> defines strtoimax as a macro],
3108 jm_cv_func_strtoimax_macro,
3109 AC_EGREP_CPP([inttypes_h_defines_strtoimax], [#include <inttypes.h>
3111 inttypes_h_defines_strtoimax
3113 jm_cv_func_strtoimax_macro=yes,
3114 jm_cv_func_strtoimax_macro=no))
3116 if test "$jm_cv_func_strtoimax_macro" != yes; then
3117 AC_REPLACE_FUNCS(strtoimax)
3120 dnl Only the replacement strtoimax invokes strtol and strtoll,
3121 dnl so we need the replacements only if strtoimax does not exist.
3122 case "$jm_cv_func_strtoimax_macro,$ac_cv_func_strtoimax" in
3124 AC_REPLACE_FUNCS(strtol)
3126 dnl We don't need (and can't compile) the replacement strtoll
3127 dnl unless the type `long long' exists.
3128 if test "$ac_cv_type_long_long" = yes; then
3129 AC_REPLACE_FUNCS(strtoll)
3136 dnl Run a program to determine whether whether link(2) follows symlinks.
3137 dnl Set LINK_FOLLOWS_SYMLINKS accordingly.
3139 AC_DEFUN([jm_AC_FUNC_LINK_FOLLOWS_SYMLINK],
3142 [whether link(2) dereferences a symlink specified with a trailing slash],
3143 jm_ac_cv_func_link_follows_symlink,
3145 dnl poor-man's AC_REQUIRE: FIXME: repair this once autoconf-3 provides
3146 dnl the appropriate framework.
3147 test -z "$ac_cv_header_unistd_h" \
3148 && AC_CHECK_HEADERS(unistd.h)
3150 # Create a regular file.
3151 echo > conftest.file
3154 # include <sys/types.h>
3155 # include <sys/stat.h>
3156 # ifdef HAVE_UNISTD_H
3157 # include <unistd.h>
3160 # define SAME_INODE(Stat_buf_1, Stat_buf_2) \
3161 ((Stat_buf_1).st_ino == (Stat_buf_2).st_ino \
3162 && (Stat_buf_1).st_dev == (Stat_buf_2).st_dev)
3167 const char *file = "conftest.file";
3168 const char *sym = "conftest.sym";
3169 const char *hard = "conftest.hard";
3170 struct stat sb_file, sb_hard;
3172 /* Create a symlink to the regular file. */
3173 if (symlink (file, sym))
3176 /* Create a hard link to that symlink. */
3177 if (link (sym, hard))
3180 if (lstat (hard, &sb_hard))
3182 if (lstat (file, &sb_file))
3185 /* If the dev/inode of hard and file are the same, then
3186 the link call followed the symlink. */
3187 return SAME_INODE (sb_hard, sb_file) ? 0 : 1;
3190 jm_ac_cv_func_link_follows_symlink=yes,
3191 jm_ac_cv_func_link_follows_symlink=no,
3192 jm_ac_cv_func_link_follows_symlink=yes dnl We're cross compiling.
3195 if test $jm_ac_cv_func_link_follows_symlink = yes; then
3196 AC_DEFINE(LINK_FOLLOWS_SYMLINKS, 1,
3197 [Define if `link(2)' dereferences symbolic links.])
3203 dnl This macro is intended to be used solely in this file.
3204 dnl These are the prerequisite macros for GNU's strftime.c replacement.
3205 AC_DEFUN([_jm_STRFTIME_PREREQS],
3207 dnl strftime.c uses localtime_r and the underyling system strftime
3209 AC_CHECK_FUNCS(localtime_r strftime)
3211 AC_CHECK_HEADERS(limits.h)
3212 AC_CHECK_FUNCS(bcopy tzset mempcpy memcpy memset)
3214 # This defines (or not) HAVE_TZNAME and HAVE_TM_ZONE.
3217 AC_CHECK_FUNCS(mblen mbrlen)
3219 AC_CHECK_MEMBER([struct tm.tm_gmtoff],
3220 [AC_DEFINE(HAVE_TM_GMTOFF, 1,
3221 [Define if struct tm has the tm_gmtoff member.])],
3223 [#include <time.h>])
3226 dnl From Jim Meyering.
3228 AC_DEFUN([jm_FUNC_GNU_STRFTIME],
3229 [AC_REQUIRE([AC_HEADER_TIME])dnl
3231 _jm_STRFTIME_PREREQS
3233 AC_REQUIRE([AC_C_CONST])dnl
3234 AC_REQUIRE([AC_HEADER_STDC])dnl
3235 AC_CHECK_HEADERS(sys/time.h)
3236 AC_DEFINE([my_strftime], [nstrftime],
3237 [Define to the name of the strftime replacement function.])
3240 AC_DEFUN([jm_FUNC_STRFTIME],
3242 _jm_STRFTIME_PREREQS
3247 dnl From Jim Meyering
3248 dnl Using code from emacs, based on suggestions from Paul Eggert
3249 dnl and Ulrich Drepper.
3251 dnl Find out how to determine the number of pending output bytes on a stream.
3252 dnl glibc (2.1.93 and newer) and Solaris provide __fpending. On other systems,
3253 dnl we have to grub around in the FILE struct.
3255 AC_DEFUN([jm_FUNC_FPENDING],
3257 AC_CHECK_HEADERS(stdio_ext.h)
3258 AC_REPLACE_FUNCS([__fpending])
3260 # if HAVE_STDIO_EXT_H
3261 # include <stdio_ext.h>
3264 AC_CHECK_DECLS([__fpending], , , $fp_headers)
3265 if test $ac_cv_func___fpending = no; then
3267 [how to determine the number of pending output bytes on a stream],
3268 ac_cv_sys_pending_output_n_bytes,
3273 'fp->_IO_write_ptr - fp->_IO_write_base' \
3275 '# traditional Unix' \
3276 'fp->_ptr - fp->_base' \
3279 'fp->_p - fp->_bf._base' \
3282 'fp->__ptr - fp->__base' \
3285 'fp->__bufp - fp->__buffer' \
3287 '# old glibc iostream?' \
3288 'fp->_pptr - fp->_pbase' \
3291 '(*fp)->_ptr - (*fp)->_base' \
3293 '# e.g., DGUX R4.11; the info is not available' \
3297 # Skip each embedded comment.
3298 case "$ac_expr" in '#'*) continue;; esac
3303 [FILE *fp = stdin; (void) ($ac_expr);],
3306 test "$fp_done" = yes && break
3309 ac_cv_sys_pending_output_n_bytes=$ac_expr
3312 AC_DEFINE_UNQUOTED(PENDING_OUTPUT_N_BYTES,
3313 $ac_cv_sys_pending_output_n_bytes,
3314 [the number of pending output bytes on stream `fp'])
3318 # inttypes-pri.m4 serial 1001 (based on gettext-0.11.4's `serial 1')
3319 dnl Copyright (C) 1997-2002 Free Software Foundation, Inc.
3320 dnl This file is free software, distributed under the terms of the GNU
3321 dnl General Public License. As a special exception to the GNU General
3322 dnl Public License, this file may be distributed as part of a program
3323 dnl that contains a configuration script generated by Autoconf, under
3324 dnl the same distribution terms as the rest of that program.
3326 dnl From Bruno Haible.
3328 # Define PRI_MACROS_BROKEN if <inttypes.h> exists and defines the PRI*
3329 # macros to non-string values. This is the case on AIX 4.3.3.
3331 AC_DEFUN([gt_INTTYPES_PRI],
3333 # autoconf-2.52 has a proper check for inttypes.h.
3336 if test $ac_cv_header_inttypes_h = yes; then
3337 AC_CACHE_CHECK([whether the inttypes.h PRIxNN macros are broken],
3338 gt_cv_inttypes_pri_broken,
3340 AC_TRY_COMPILE([#include <inttypes.h>
3344 ], [], gt_cv_inttypes_pri_broken=no, gt_cv_inttypes_pri_broken=yes)
3347 if test "$gt_cv_inttypes_pri_broken" = yes; then
3348 AC_DEFINE_UNQUOTED(PRI_MACROS_BROKEN, 1,
3349 [Define if <inttypes.h> exists and defines unusable PRI* macros.])
3355 dnl From Jim Meyering.
3356 dnl A wrapper around AC_FUNC_GETGROUPS.
3358 AC_DEFUN([jm_FUNC_GETGROUPS],
3359 [AC_REQUIRE([AC_FUNC_GETGROUPS])dnl
3360 if test $ac_cv_func_getgroups_works = no; then
3361 AC_LIBOBJ(getgroups)
3362 AC_DEFINE(getgroups, rpl_getgroups,
3363 [Define as rpl_getgroups if getgroups doesn't work right.])
3365 test -n "$GETGROUPS_LIB" && LIBS="$GETGROUPS_LIB $LIBS"
3372 AC_DEFUN([jm_SYS_PROC_UPTIME],
3373 [ dnl Require AC_PROG_CC to see if we're cross compiling.
3374 AC_REQUIRE([AC_PROG_CC])
3375 AC_CACHE_CHECK([for /proc/uptime], jm_cv_have_proc_uptime,
3376 [jm_cv_have_proc_uptime=no
3377 test -f /proc/uptime \
3378 && test "$cross_compiling" = no \
3379 && cat < /proc/uptime >/dev/null 2>/dev/null \
3380 && jm_cv_have_proc_uptime=yes])
3381 if test $jm_cv_have_proc_uptime = yes; then
3382 AC_DEFINE(HAVE_PROC_UPTIME, 1,
3383 [ Define if your system has the /proc/uptime special file.])
3389 # See if we need to emulate a missing ftruncate function using fcntl or chsize.
3391 AC_DEFUN([jm_FUNC_FTRUNCATE],
3393 AC_CHECK_FUNCS(ftruncate, , [ftruncate_missing=yes])
3395 if test "$ftruncate_missing" = yes; then
3396 AC_CHECK_HEADERS([unistd.h])
3397 AC_CHECK_FUNCS([chsize])
3398 AC_LIBOBJ(ftruncate)
3404 dnl From Volker Borchert.
3405 dnl Determine whether rename works for source paths with a trailing slash.
3406 dnl The rename from SunOS 4.1.1_U1 doesn't.
3408 dnl If it doesn't, then define RENAME_TRAILING_SLASH_BUG and arrange
3409 dnl to compile the wrapper function.
3412 AC_DEFUN([vb_FUNC_RENAME],
3414 AC_CACHE_CHECK([whether rename is broken],
3415 vb_cv_func_rename_trailing_slash_bug,
3417 rm -rf conftest.d1 conftest.d2
3418 mkdir conftest.d1 ||
3419 AC_MSG_ERROR([cannot create temporary directory])
3425 exit (rename ("conftest.d1/", "conftest.d2") ? 1 : 0);
3428 vb_cv_func_rename_trailing_slash_bug=no,
3429 vb_cv_func_rename_trailing_slash_bug=yes,
3430 dnl When crosscompiling, assume rename is broken.
3431 vb_cv_func_rename_trailing_slash_bug=yes)
3433 rm -rf conftest.d1 conftest.d2
3435 if test $vb_cv_func_rename_trailing_slash_bug = yes; then
3437 AC_DEFINE(RENAME_TRAILING_SLASH_BUG, 1,
3438 [Define if rename does not work for source paths with a trailing slash,
3439 like the one from SunOS 4.1.1_U1.])
3445 # On some systems (e.g., HPUX-10.20, SunOS4.1.4, solaris2.5.1), mkstemp has the
3446 # silly limit that it can create no more than 26 files from a given template.
3447 # Other systems lack mkstemp altogether. On either type of system, arrange
3448 # to use the replacement function.
3449 AC_DEFUN([UTILS_FUNC_MKSTEMP],
3451 AC_REPLACE_FUNCS(mkstemp)
3452 if test $ac_cv_func_mkstemp = no; then
3453 utils_cv_func_mkstemp_limitations=yes
3455 AC_CACHE_CHECK([for mkstemp limitations],
3456 utils_cv_func_mkstemp_limitations,
3459 # include <stdlib.h>
3463 for (i = 0; i < 30; i++)
3465 char template[] = "conftestXXXXXX";
3466 int fd = mkstemp (template);
3474 utils_cv_func_mkstemp_limitations=no,
3475 utils_cv_func_mkstemp_limitations=yes,
3476 utils_cv_func_mkstemp_limitations=yes
3482 if test $utils_cv_func_mkstemp_limitations = yes; then
3485 AC_DEFINE(mkstemp, rpl_mkstemp,
3486 [Define to rpl_mkstemp if the replacement function should be used.])
3492 dnl From Jim Meyering.
3494 dnl See if gettimeofday clobbers the static buffer that localtime uses
3495 dnl for it's return value. The gettimeofday function from Mac OS X 10.0.4,
3496 dnl i.e. Darwin 1.3.7 has this problem.
3498 dnl If it does, then arrange to use gettimeofday and localtime only via
3499 dnl the wrapper functions that work around the problem.
3501 AC_DEFUN([AC_FUNC_GETTIMEOFDAY_CLOBBER],
3503 AC_REQUIRE([AC_HEADER_TIME])
3504 AC_CHECK_HEADERS(string.h stdlib.h)
3505 AC_CACHE_CHECK([whether gettimeofday clobbers localtime buffer],
3506 jm_cv_func_gettimeofday_clobber,
3510 # include <string.h>
3513 #if TIME_WITH_SYS_TIME
3514 # include <sys/time.h>
3517 # if HAVE_SYS_TIME_H
3518 # include <sys/time.h>
3525 # include <stdlib.h>
3535 lt = localtime (&t);
3537 gettimeofday (&tv, NULL);
3538 if (memcmp (lt, &saved_lt, sizeof (struct tm)) != 0)
3544 jm_cv_func_gettimeofday_clobber=no,
3545 jm_cv_func_gettimeofday_clobber=yes,
3546 dnl When crosscompiling, assume it is broken.
3547 jm_cv_func_gettimeofday_clobber=yes)
3549 if test $jm_cv_func_gettimeofday_clobber = yes; then
3550 AC_LIBOBJ(gettimeofday)
3551 AC_DEFINE(localtime, rpl_localtime,
3552 [Define to rpl_localtime if the replacement function should be used.])
3553 AC_DEFINE(gettimeofday, rpl_gettimeofday,
3554 [Define to rpl_gettimeofday if the replacement function should be used.])
3555 AC_DEFINE(GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, 1,
3556 [Define if gettimeofday clobbers localtime's static buffer.])
3562 dnl From Jim Meyering
3563 dnl Replace the utime function on systems that need it.
3567 AC_DEFUN([jm_FUNC_UTIME],
3569 AC_CHECK_HEADERS(utime.h)
3570 AC_REQUIRE([jm_CHECK_TYPE_STRUCT_UTIMBUF])
3571 AC_REQUIRE([AC_FUNC_UTIME_NULL])
3573 if test $ac_cv_func_utime_null = no; then
3575 AC_REPLACE_FUNCS(utime)
3581 dnl Shamelessly cloned from acspecific.m4's AC_FUNC_UTIME_NULL,
3582 dnl then do case-insensitive s/utime/utimes/.
3584 AC_DEFUN([jm_FUNC_UTIMES_NULL],
3585 [AC_CACHE_CHECK(whether utimes accepts a null argument, ac_cv_func_utimes_null,
3586 [rm -f conftest.data; > conftest.data
3588 /* In case stat has been defined to rpl_stat, undef it here. */
3590 #include <sys/types.h>
3591 #include <sys/stat.h>
3594 exit(!(stat ("conftest.data", &s) == 0
3595 && utimes("conftest.data", (long *)0) == 0
3596 && stat("conftest.data", &t) == 0
3597 && t.st_mtime >= s.st_mtime
3598 && t.st_mtime - s.st_mtime < 120));
3600 ac_cv_func_utimes_null=yes,
3601 ac_cv_func_utimes_null=no,
3602 ac_cv_func_utimes_null=no)
3603 rm -f core core.* *.core])
3605 if test $ac_cv_func_utimes_null = yes; then
3606 AC_DEFINE(HAVE_UTIMES_NULL, 1,
3607 [Define if utimes accepts a null argument])
3614 dnl See if there's a working, system-supplied version of the getline function.
3615 dnl We can't just do AC_REPLACE_FUNCS(getline) because some systems
3616 dnl have a function by that name in -linet that doesn't have anything
3617 dnl to do with the function we need.
3618 AC_DEFUN([AM_FUNC_GETLINE],
3620 am_getline_needs_run_time_check=no
3621 AC_CHECK_FUNC(getline,
3622 dnl Found it in some library. Verify that it works.
3623 am_getline_needs_run_time_check=yes,
3624 am_cv_func_working_getline=no)
3625 if test $am_getline_needs_run_time_check = yes; then
3626 AC_CACHE_CHECK([for working getline function], am_cv_func_working_getline,
3627 [echo fooN |tr -d '\012'|tr N '\012' > conftest.data
3630 # include <sys/types.h>
3631 # include <string.h>
3633 { /* Based on a test program from Karl Heuer. */
3637 FILE *in = fopen ("./conftest.data", "r");
3640 len = getline (&line, &siz, in);
3641 exit ((len == 4 && line && strcmp (line, "foo\n") == 0) ? 0 : 1);
3643 ], am_cv_func_working_getline=yes dnl The library version works.
3644 , am_cv_func_working_getline=no dnl The library version does NOT work.
3645 , am_cv_func_working_getline=no dnl We're cross compiling.
3649 if test $am_cv_func_working_getline = no; then
3655 # Determine approximately how many files may be open simultaneously
3656 # in one process. This is approximate, since while running this test,
3657 # the configure script already has a few files open.
3660 AC_DEFUN([UTILS_SYS_OPEN_MAX],
3662 AC_CACHE_CHECK([determine how many files may be open simultaneously],
3663 utils_cv_sys_open_max,
3665 AC_RUN_IFELSE([AC_LANG_SOURCE([[
3672 FILE *result = fopen ("conftest.omax", "w");
3674 /* Impose an arbitrary limit, in case some system has no
3675 effective limit on the number of simultaneously open files. */
3678 FILE *s = fopen ("conftest.op", "w");
3683 fprintf (result, "%d\n", i);
3684 exit (fclose (result) == EOF);
3687 [utils_cv_sys_open_max=`cat conftest.omax`],
3688 [utils_cv_sys_open_max='internal error in open-max.m4'],
3689 [utils_cv_sys_open_max='cross compiling run-test in open-max.m4'])])
3691 AC_DEFINE_UNQUOTED([UTILS_OPEN_MAX],
3692 $utils_cv_sys_open_max,
3693 [the maximum number of simultaneously open files per process])
3697 # Check whether getcwd has the bug that it succeeds for a working directory
3698 # longer than PATH_MAX, yet returns a truncated directory name.
3699 # If so, arrange to compile the wrapper function.
3701 # This is necessary for at least GNU libc on linux-2.4.19 and 2.4.20.
3702 # I've heard that this is due to a Linux kernel bug, and that it has
3703 # been fixed between 2.4.21-pre3 and 2.4.21-pre4. */
3707 AC_DEFUN([GL_FUNC_GETCWD_PATH_MAX],
3709 AC_CACHE_CHECK([whether getcwd properly handles paths longer than PATH_MAX],
3710 gl_cv_func_getcwd_vs_path_max,
3712 AC_CHECK_DECLS([getcwd])
3713 # Arrange for deletion of the temporary directory this test creates.
3714 ac_clean_files="$ac_clean_files confdir3"
3715 AC_RUN_IFELSE([AC_LANG_SOURCE([[
3720 #include <sys/stat.h>
3721 #include <sys/types.h>
3723 /* Don't get link errors because mkdir is redefined to rpl_mkdir. */
3730 /* The extra casts work around common compiler bugs. */
3731 #define TYPE_SIGNED(t) (! ((t) 0 < (t) -1))
3732 /* The outer cast is needed to work around a bug in Cray C 5.0.3.0.
3733 It is necessary at least when t == time_t. */
3734 #define TYPE_MINIMUM(t) ((t) (TYPE_SIGNED (t) \
3735 ? ~ (t) 0 << (sizeof (t) * CHAR_BIT - 1) : (t) 0))
3736 #define TYPE_MAXIMUM(t) ((t) (~ (t) 0 - TYPE_MINIMUM (t)))
3739 # define INT_MAX TYPE_MAXIMUM (int)
3743 /* There might be a better way to handle this case, but note:
3744 - the value shouldn't be anywhere near INT_MAX, and
3745 - the value shouldn't be so big that the local declaration, below,
3747 # define PATH_MAX 40000
3750 /* The length of this name must be 8. */
3751 #define DIR_NAME "confdir3"
3756 /* The '9' comes from strlen (DIR_NAME) + 1. */
3757 #if INT_MAX - 9 <= PATH_MAX
3758 /* FIXME: Assuming there's a system for which this is true -- Hurd?,
3759 this should be done in a compile test. */
3762 char buf[PATH_MAX + 20];
3763 char *cwd = getcwd (buf, PATH_MAX);
3766 size_t n_chdirs = 0;
3771 cwd_len = strlen (cwd);
3778 cwd_len += 1 + strlen (DIR_NAME);
3779 /* If mkdir or chdir fails, be pessimistic and consider that
3780 as a failure, too. */
3781 if (mkdir (DIR_NAME, 0700) < 0 || chdir (DIR_NAME) < 0)
3786 if ((c = getcwd (buf, PATH_MAX)) == NULL)
3788 /* This allows any failure to indicate there is no bug.
3789 FIXME: check errno? */
3792 if ((len = strlen (c)) != cwd_len)
3802 /* Leaving behind such a deep directory is not polite.
3803 So clean up here, right away, even though the driving
3804 shell script would also clean up. */
3808 /* Unlink first, in case the chdir failed. */
3810 for (i = 0; i <= n_chdirs; i++)
3812 if (chdir ("..") < 0)
3822 [gl_cv_func_getcwd_vs_path_max=yes],
3823 [gl_cv_func_getcwd_vs_path_max=no],
3824 [gl_cv_func_getcwd_vs_path_max=no])])
3826 if test $gl_cv_func_getcwd_vs_path_max = yes; then
3828 AC_DEFINE(getcwd, rpl_getcwd,
3829 [Define to rpl_getcwd if the wrapper function should be used.])
3833 # codeset.m4 serial AM1 (gettext-0.10.40)
3834 dnl Copyright (C) 2000-2002 Free Software Foundation, Inc.
3835 dnl This file is free software, distributed under the terms of the GNU
3836 dnl General Public License. As a special exception to the GNU General
3837 dnl Public License, this file may be distributed as part of a program
3838 dnl that contains a configuration script generated by Autoconf, under
3839 dnl the same distribution terms as the rest of that program.
3841 dnl From Bruno Haible.
3843 AC_DEFUN([AM_LANGINFO_CODESET],
3845 AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset,
3846 [AC_TRY_LINK([#include <langinfo.h>],
3847 [char* cs = nl_langinfo(CODESET);],
3848 am_cv_langinfo_codeset=yes,
3849 am_cv_langinfo_codeset=no)
3851 if test $am_cv_langinfo_codeset = yes; then
3852 AC_DEFINE(HAVE_LANGINFO_CODESET, 1,
3853 [Define if you have <langinfo.h> and nl_langinfo(CODESET).])
3857 # glibc21.m4 serial 2 (fileutils-4.1.3, gettext-0.10.40)
3858 dnl Copyright (C) 2000-2002 Free Software Foundation, Inc.
3859 dnl This file is free software, distributed under the terms of the GNU
3860 dnl General Public License. As a special exception to the GNU General
3861 dnl Public License, this file may be distributed as part of a program
3862 dnl that contains a configuration script generated by Autoconf, under
3863 dnl the same distribution terms as the rest of that program.
3865 # Test for the GNU C Library, version 2.1 or newer.
3866 # From Bruno Haible.
3868 AC_DEFUN([jm_GLIBC21],
3870 AC_CACHE_CHECK(whether we are using the GNU C Library 2.1 or newer,
3871 ac_cv_gnu_library_2_1,
3872 [AC_EGREP_CPP([Lucky GNU user],
3874 #include <features.h>
3875 #ifdef __GNU_LIBRARY__
3876 #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2)
3881 ac_cv_gnu_library_2_1=yes,
3882 ac_cv_gnu_library_2_1=no)
3886 GLIBC21="$ac_cv_gnu_library_2_1"
3890 # iconv.m4 serial AM4 (gettext-0.11.3)
3891 dnl Copyright (C) 2000-2002 Free Software Foundation, Inc.
3892 dnl This file is free software, distributed under the terms of the GNU
3893 dnl General Public License. As a special exception to the GNU General
3894 dnl Public License, this file may be distributed as part of a program
3895 dnl that contains a configuration script generated by Autoconf, under
3896 dnl the same distribution terms as the rest of that program.
3898 dnl From Bruno Haible.
3900 AC_DEFUN([AM_ICONV_LINKFLAGS_BODY],
3902 dnl Prerequisites of AC_LIB_LINKFLAGS_BODY.
3903 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
3904 AC_REQUIRE([AC_LIB_RPATH])
3906 dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
3908 AC_LIB_LINKFLAGS_BODY([iconv])
3911 AC_DEFUN([AM_ICONV_LINK],
3913 dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
3914 dnl those with the standalone portable GNU libiconv installed).
3916 dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
3918 AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
3920 dnl Add $INCICONV to CPPFLAGS before performing the following checks,
3921 dnl because if the user has installed libiconv and not disabled its use
3922 dnl via --without-libiconv-prefix, he wants to use it. The first
3923 dnl AC_TRY_LINK will then fail, the second AC_TRY_LINK will succeed.
3924 am_save_CPPFLAGS="$CPPFLAGS"
3925 AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV])
3927 AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [
3928 am_cv_func_iconv="no, consider installing GNU libiconv"
3930 AC_TRY_LINK([#include <stdlib.h>
3931 #include <iconv.h>],
3932 [iconv_t cd = iconv_open("","");
3933 iconv(cd,NULL,NULL,NULL,NULL);
3935 am_cv_func_iconv=yes)
3936 if test "$am_cv_func_iconv" != yes; then
3937 am_save_LIBS="$LIBS"
3938 LIBS="$LIBS $LIBICONV"
3939 AC_TRY_LINK([#include <stdlib.h>
3940 #include <iconv.h>],
3941 [iconv_t cd = iconv_open("","");
3942 iconv(cd,NULL,NULL,NULL,NULL);
3945 am_cv_func_iconv=yes)
3946 LIBS="$am_save_LIBS"
3949 if test "$am_cv_func_iconv" = yes; then
3950 AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.])
3952 if test "$am_cv_lib_iconv" = yes; then
3953 AC_MSG_CHECKING([how to link with libiconv])
3954 AC_MSG_RESULT([$LIBICONV])
3956 dnl If $LIBICONV didn't lead to a usable library, we don't need $INCICONV
3958 CPPFLAGS="$am_save_CPPFLAGS"
3963 AC_SUBST(LTLIBICONV)
3966 AC_DEFUN([AM_ICONV],
3969 if test "$am_cv_func_iconv" = yes; then
3970 AC_MSG_CHECKING([for iconv declaration])
3971 AC_CACHE_VAL(am_cv_proto_iconv, [
3979 #if defined(__STDC__) || defined(__cplusplus)
3980 size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
3984 ], [], am_cv_proto_iconv_arg1="", am_cv_proto_iconv_arg1="const")
3985 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);"])
3986 am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
3987 AC_MSG_RESULT([$]{ac_t:-
3988 }[$]am_cv_proto_iconv)
3989 AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1,
3990 [Define as const if the declaration of iconv() needs const.])
3994 # lib-prefix.m4 serial 1 (gettext-0.11)
3995 dnl Copyright (C) 2001-2002 Free Software Foundation, Inc.
3996 dnl This file is free software, distributed under the terms of the GNU
3997 dnl General Public License. As a special exception to the GNU General
3998 dnl Public License, this file may be distributed as part of a program
3999 dnl that contains a configuration script generated by Autoconf, under
4000 dnl the same distribution terms as the rest of that program.
4002 dnl From Bruno Haible.
4004 dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed
4005 dnl to access previously installed libraries. The basic assumption is that
4006 dnl a user will want packages to use other packages he previously installed
4007 dnl with the same --prefix option.
4008 dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate
4009 dnl libraries, but is otherwise very convenient.
4010 AC_DEFUN([AC_LIB_PREFIX],
4012 AC_BEFORE([$0], [AC_LIB_LINKFLAGS])
4013 AC_REQUIRE([AC_PROG_CC])
4014 AC_REQUIRE([AC_CANONICAL_HOST])
4015 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
4016 dnl By default, look in $includedir and $libdir.
4018 AC_LIB_WITH_FINAL_PREFIX([
4019 eval additional_includedir=\"$includedir\"
4020 eval additional_libdir=\"$libdir\"
4022 AC_ARG_WITH([lib-prefix],
4023 [ --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib
4024 --without-lib-prefix don't search for libraries in includedir and libdir],
4026 if test "X$withval" = "Xno"; then
4029 if test "X$withval" = "X"; then
4030 AC_LIB_WITH_FINAL_PREFIX([
4031 eval additional_includedir=\"$includedir\"
4032 eval additional_libdir=\"$libdir\"
4035 additional_includedir="$withval/include"
4036 additional_libdir="$withval/lib"
4040 if test $use_additional = yes; then
4041 dnl Potentially add $additional_includedir to $CPPFLAGS.
4042 dnl But don't add it
4043 dnl 1. if it's the standard /usr/include,
4044 dnl 2. if it's already present in $CPPFLAGS,
4045 dnl 3. if it's /usr/local/include and we are using GCC on Linux,
4046 dnl 4. if it doesn't exist as a directory.
4047 if test "X$additional_includedir" != "X/usr/include"; then
4049 for x in $CPPFLAGS; do
4050 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
4051 if test "X$x" = "X-I$additional_includedir"; then
4056 if test -z "$haveit"; then
4057 if test "X$additional_includedir" = "X/usr/local/include"; then
4058 if test -n "$GCC"; then
4060 linux*) haveit=yes;;
4064 if test -z "$haveit"; then
4065 if test -d "$additional_includedir"; then
4066 dnl Really add $additional_includedir to $CPPFLAGS.
4067 CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir"
4072 dnl Potentially add $additional_libdir to $LDFLAGS.
4073 dnl But don't add it
4074 dnl 1. if it's the standard /usr/lib,
4075 dnl 2. if it's already present in $LDFLAGS,
4076 dnl 3. if it's /usr/local/lib and we are using GCC on Linux,
4077 dnl 4. if it doesn't exist as a directory.
4078 if test "X$additional_libdir" != "X/usr/lib"; then
4080 for x in $LDFLAGS; do
4081 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
4082 if test "X$x" = "X-L$additional_libdir"; then
4087 if test -z "$haveit"; then
4088 if test "X$additional_libdir" = "X/usr/local/lib"; then
4089 if test -n "$GCC"; then
4091 linux*) haveit=yes;;
4095 if test -z "$haveit"; then
4096 if test -d "$additional_libdir"; then
4097 dnl Really add $additional_libdir to $LDFLAGS.
4098 LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir"
4106 dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix,
4107 dnl acl_final_exec_prefix, containing the values to which $prefix and
4108 dnl $exec_prefix will expand at the end of the configure script.
4109 AC_DEFUN([AC_LIB_PREPARE_PREFIX],
4111 dnl Unfortunately, prefix and exec_prefix get only finally determined
4112 dnl at the end of configure.
4113 if test "X$prefix" = "XNONE"; then
4114 acl_final_prefix="$ac_default_prefix"
4116 acl_final_prefix="$prefix"
4118 if test "X$exec_prefix" = "XNONE"; then
4119 acl_final_exec_prefix='${prefix}'
4121 acl_final_exec_prefix="$exec_prefix"
4123 acl_save_prefix="$prefix"
4124 prefix="$acl_final_prefix"
4125 eval acl_final_exec_prefix=\"$acl_final_exec_prefix\"
4126 prefix="$acl_save_prefix"
4129 dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the
4130 dnl variables prefix and exec_prefix bound to the values they will have
4131 dnl at the end of the configure script.
4132 AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX],
4134 acl_save_prefix="$prefix"
4135 prefix="$acl_final_prefix"
4136 acl_save_exec_prefix="$exec_prefix"
4137 exec_prefix="$acl_final_exec_prefix"
4139 exec_prefix="$acl_save_exec_prefix"
4140 prefix="$acl_save_prefix"
4143 # lib-link.m4 serial 3 (gettext-0.11.3)
4144 dnl Copyright (C) 2001-2002 Free Software Foundation, Inc.
4145 dnl This file is free software, distributed under the terms of the GNU
4146 dnl General Public License. As a special exception to the GNU General
4147 dnl Public License, this file may be distributed as part of a program
4148 dnl that contains a configuration script generated by Autoconf, under
4149 dnl the same distribution terms as the rest of that program.
4151 dnl From Bruno Haible.
4153 dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and
4154 dnl the libraries corresponding to explicit and implicit dependencies.
4155 dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and
4156 dnl augments the CPPFLAGS variable.
4157 AC_DEFUN([AC_LIB_LINKFLAGS],
4159 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
4160 AC_REQUIRE([AC_LIB_RPATH])
4161 define([Name],[translit([$1],[./-], [___])])
4162 define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
4163 [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
4164 AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [
4165 AC_LIB_LINKFLAGS_BODY([$1], [$2])
4166 ac_cv_lib[]Name[]_libs="$LIB[]NAME"
4167 ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME"
4168 ac_cv_lib[]Name[]_cppflags="$INC[]NAME"
4170 LIB[]NAME="$ac_cv_lib[]Name[]_libs"
4171 LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs"
4172 INC[]NAME="$ac_cv_lib[]Name[]_cppflags"
4173 AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
4175 AC_SUBST([LTLIB]NAME)
4176 dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the
4177 dnl results of this search when this library appears as a dependency.
4183 dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode)
4184 dnl searches for libname and the libraries corresponding to explicit and
4185 dnl implicit dependencies, together with the specified include files and
4186 dnl the ability to compile and link the specified testcode. If found, it
4187 dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and
4188 dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and
4189 dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs
4190 dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty.
4191 AC_DEFUN([AC_LIB_HAVE_LINKFLAGS],
4193 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
4194 AC_REQUIRE([AC_LIB_RPATH])
4195 define([Name],[translit([$1],[./-], [___])])
4196 define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
4197 [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
4199 dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME
4201 AC_LIB_LINKFLAGS_BODY([$1], [$2])
4203 dnl Add $INC[]NAME to CPPFLAGS before performing the following checks,
4204 dnl because if the user has installed lib[]Name and not disabled its use
4205 dnl via --without-lib[]Name-prefix, he wants to use it.
4206 ac_save_CPPFLAGS="$CPPFLAGS"
4207 AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
4209 AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [
4210 ac_save_LIBS="$LIBS"
4211 LIBS="$LIBS $LIB[]NAME"
4212 AC_TRY_LINK([$3], [$4], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name=no])
4213 LIBS="$ac_save_LIBS"
4215 if test "$ac_cv_lib[]Name" = yes; then
4217 AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the $1 library.])
4218 AC_MSG_CHECKING([how to link with lib[]$1])
4219 AC_MSG_RESULT([$LIB[]NAME])
4222 dnl If $LIB[]NAME didn't lead to a usable library, we don't need
4223 dnl $INC[]NAME either.
4224 CPPFLAGS="$ac_save_CPPFLAGS"
4228 AC_SUBST([HAVE_LIB]NAME)
4230 AC_SUBST([LTLIB]NAME)
4235 dnl Determine the platform dependent parameters needed to use rpath:
4236 dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator,
4237 dnl hardcode_direct, hardcode_minus_L,
4238 dnl sys_lib_search_path_spec, sys_lib_dlsearch_path_spec.
4239 AC_DEFUN([AC_LIB_RPATH],
4241 AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS
4242 AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld
4243 AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host
4244 AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir
4245 AC_CACHE_CHECK([for shared library run path origin], acl_cv_rpath, [
4246 CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
4247 ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh
4253 libext="$acl_cv_libext"
4254 shlibext="$acl_cv_shlibext"
4255 hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
4256 hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
4257 hardcode_direct="$acl_cv_hardcode_direct"
4258 hardcode_minus_L="$acl_cv_hardcode_minus_L"
4259 sys_lib_search_path_spec="$acl_cv_sys_lib_search_path_spec"
4260 sys_lib_dlsearch_path_spec="$acl_cv_sys_lib_dlsearch_path_spec"
4261 dnl Determine whether the user wants rpath handling at all.
4262 AC_ARG_ENABLE(rpath,
4263 [ --disable-rpath do not hardcode runtime library paths],
4264 :, enable_rpath=yes)
4267 dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and
4268 dnl the libraries corresponding to explicit and implicit dependencies.
4269 dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables.
4270 AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
4272 define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
4273 [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
4274 dnl By default, look in $includedir and $libdir.
4276 AC_LIB_WITH_FINAL_PREFIX([
4277 eval additional_includedir=\"$includedir\"
4278 eval additional_libdir=\"$libdir\"
4280 AC_ARG_WITH([lib$1-prefix],
4281 [ --with-lib$1-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib
4282 --without-lib$1-prefix don't search for lib$1 in includedir and libdir],
4284 if test "X$withval" = "Xno"; then
4287 if test "X$withval" = "X"; then
4288 AC_LIB_WITH_FINAL_PREFIX([
4289 eval additional_includedir=\"$includedir\"
4290 eval additional_libdir=\"$libdir\"
4293 additional_includedir="$withval/include"
4294 additional_libdir="$withval/lib"
4298 dnl Search the library and its dependencies in $additional_libdir and
4299 dnl $LDFLAGS. Using breadth-first-seach.
4305 names_already_handled=
4306 names_next_round='$1 $2'
4307 while test -n "$names_next_round"; do
4308 names_this_round="$names_next_round"
4310 for name in $names_this_round; do
4312 for n in $names_already_handled; do
4313 if test "$n" = "$name"; then
4318 if test -z "$already_handled"; then
4319 names_already_handled="$names_already_handled $name"
4320 dnl See if it was already located by an earlier AC_LIB_LINKFLAGS
4321 dnl or AC_LIB_HAVE_LINKFLAGS call.
4322 uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
4323 eval value=\"\$HAVE_LIB$uppername\"
4324 if test -n "$value"; then
4325 if test "$value" = yes; then
4326 eval value=\"\$LIB$uppername\"
4327 test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value"
4328 eval value=\"\$LTLIB$uppername\"
4329 test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value"
4331 dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined
4332 dnl that this library doesn't exist. So just drop it.
4336 dnl Search the library lib$name in $additional_libdir and $LDFLAGS
4337 dnl and the already constructed $LIBNAME/$LTLIBNAME.
4342 if test $use_additional = yes; then
4343 if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
4344 found_dir="$additional_libdir"
4345 found_so="$additional_libdir/lib$name.$shlibext"
4346 if test -f "$additional_libdir/lib$name.la"; then
4347 found_la="$additional_libdir/lib$name.la"
4350 if test -f "$additional_libdir/lib$name.$libext"; then
4351 found_dir="$additional_libdir"
4352 found_a="$additional_libdir/lib$name.$libext"
4353 if test -f "$additional_libdir/lib$name.la"; then
4354 found_la="$additional_libdir/lib$name.la"
4359 if test "X$found_dir" = "X"; then
4360 for x in $LDFLAGS $LTLIB[]NAME; do
4361 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
4364 dir=`echo "X$x" | sed -e 's/^X-L//'`
4365 if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
4367 found_so="$dir/lib$name.$shlibext"
4368 if test -f "$dir/lib$name.la"; then
4369 found_la="$dir/lib$name.la"
4372 if test -f "$dir/lib$name.$libext"; then
4374 found_a="$dir/lib$name.$libext"
4375 if test -f "$dir/lib$name.la"; then
4376 found_la="$dir/lib$name.la"
4382 if test "X$found_dir" != "X"; then
4387 if test "X$found_dir" != "X"; then
4388 dnl Found the library.
4389 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name"
4390 if test "X$found_so" != "X"; then
4391 dnl Linking with a shared library. We attempt to hardcode its
4392 dnl directory into the executable's runpath, unless it's the
4393 dnl standard /usr/lib.
4394 if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then
4395 dnl No hardcoding is needed.
4396 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
4398 dnl Use an explicit option to hardcode DIR into the resulting
4400 dnl Potentially add DIR to ltrpathdirs.
4401 dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
4403 for x in $ltrpathdirs; do
4404 if test "X$x" = "X$found_dir"; then
4409 if test -z "$haveit"; then
4410 ltrpathdirs="$ltrpathdirs $found_dir"
4412 dnl The hardcoding into $LIBNAME is system dependent.
4413 if test "$hardcode_direct" = yes; then
4414 dnl Using DIR/libNAME.so during linking hardcodes DIR into the
4415 dnl resulting binary.
4416 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
4418 if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
4419 dnl Use an explicit option to hardcode DIR into the resulting
4421 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
4422 dnl Potentially add DIR to rpathdirs.
4423 dnl The rpathdirs will be appended to $LIBNAME at the end.
4425 for x in $rpathdirs; do
4426 if test "X$x" = "X$found_dir"; then
4431 if test -z "$haveit"; then
4432 rpathdirs="$rpathdirs $found_dir"
4435 dnl Rely on "-L$found_dir".
4436 dnl But don't add it if it's already contained in the LDFLAGS
4437 dnl or the already constructed $LIBNAME
4439 for x in $LDFLAGS $LIB[]NAME; do
4440 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
4441 if test "X$x" = "X-L$found_dir"; then
4446 if test -z "$haveit"; then
4447 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir"
4449 if test "$hardcode_minus_L" != no; then
4450 dnl FIXME: Not sure whether we should use
4451 dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
4453 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
4455 dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH
4456 dnl here, because this doesn't fit in flags passed to the
4457 dnl compiler. So give up. No hardcoding. This affects only
4458 dnl very old systems.
4459 dnl FIXME: Not sure whether we should use
4460 dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
4462 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name"
4468 if test "X$found_a" != "X"; then
4469 dnl Linking with a static library.
4470 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a"
4472 dnl We shouldn't come here, but anyway it's good to have a
4474 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name"
4477 dnl Assume the include files are nearby.
4478 additional_includedir=
4479 case "$found_dir" in
4481 basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'`
4482 additional_includedir="$basedir/include"
4485 if test "X$additional_includedir" != "X"; then
4486 dnl Potentially add $additional_includedir to $INCNAME.
4487 dnl But don't add it
4488 dnl 1. if it's the standard /usr/include,
4489 dnl 2. if it's /usr/local/include and we are using GCC on Linux,
4490 dnl 3. if it's already present in $CPPFLAGS or the already
4491 dnl constructed $INCNAME,
4492 dnl 4. if it doesn't exist as a directory.
4493 if test "X$additional_includedir" != "X/usr/include"; then
4495 if test "X$additional_includedir" = "X/usr/local/include"; then
4496 if test -n "$GCC"; then
4498 linux*) haveit=yes;;
4502 if test -z "$haveit"; then
4503 for x in $CPPFLAGS $INC[]NAME; do
4504 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
4505 if test "X$x" = "X-I$additional_includedir"; then
4510 if test -z "$haveit"; then
4511 if test -d "$additional_includedir"; then
4512 dnl Really add $additional_includedir to $INCNAME.
4513 INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir"
4519 dnl Look for dependencies.
4520 if test -n "$found_la"; then
4521 dnl Read the .la file. It defines the variables
4522 dnl dlname, library_names, old_library, dependency_libs, current,
4523 dnl age, revision, installed, dlopen, dlpreopen, libdir.
4524 save_libdir="$libdir"
4526 */* | *\\*) . "$found_la" ;;
4527 *) . "./$found_la" ;;
4529 libdir="$save_libdir"
4530 dnl We use only dependency_libs.
4531 for dep in $dependency_libs; do
4534 additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
4535 dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME.
4536 dnl But don't add it
4537 dnl 1. if it's the standard /usr/lib,
4538 dnl 2. if it's /usr/local/lib and we are using GCC on Linux,
4539 dnl 3. if it's already present in $LDFLAGS or the already
4540 dnl constructed $LIBNAME,
4541 dnl 4. if it doesn't exist as a directory.
4542 if test "X$additional_libdir" != "X/usr/lib"; then
4544 if test "X$additional_libdir" = "X/usr/local/lib"; then
4545 if test -n "$GCC"; then
4547 linux*) haveit=yes;;
4551 if test -z "$haveit"; then
4553 for x in $LDFLAGS $LIB[]NAME; do
4554 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
4555 if test "X$x" = "X-L$additional_libdir"; then
4560 if test -z "$haveit"; then
4561 if test -d "$additional_libdir"; then
4562 dnl Really add $additional_libdir to $LIBNAME.
4563 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir"
4567 for x in $LDFLAGS $LTLIB[]NAME; do
4568 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
4569 if test "X$x" = "X-L$additional_libdir"; then
4574 if test -z "$haveit"; then
4575 if test -d "$additional_libdir"; then
4576 dnl Really add $additional_libdir to $LTLIBNAME.
4577 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir"
4584 dir=`echo "X$dep" | sed -e 's/^X-R//'`
4585 if test "$enable_rpath" != no; then
4586 dnl Potentially add DIR to rpathdirs.
4587 dnl The rpathdirs will be appended to $LIBNAME at the end.
4589 for x in $rpathdirs; do
4590 if test "X$x" = "X$dir"; then
4595 if test -z "$haveit"; then
4596 rpathdirs="$rpathdirs $dir"
4598 dnl Potentially add DIR to ltrpathdirs.
4599 dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
4601 for x in $ltrpathdirs; do
4602 if test "X$x" = "X$dir"; then
4607 if test -z "$haveit"; then
4608 ltrpathdirs="$ltrpathdirs $dir"
4613 dnl Handle this in the next round.
4614 names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
4617 dnl Handle this in the next round. Throw away the .la's
4618 dnl directory; it is already contained in a preceding -L
4620 names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
4623 dnl Most likely an immediate library name.
4624 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep"
4625 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep"
4631 dnl Didn't find the library; assume it is in the system directories
4632 dnl known to the linker and runtime loader. (All the system
4633 dnl directories known to the linker should also be known to the
4634 dnl runtime loader, otherwise the system is severely misconfigured.)
4635 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name"
4636 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name"
4642 if test "X$rpathdirs" != "X"; then
4643 if test -n "$hardcode_libdir_separator"; then
4644 dnl Weird platform: only the last -rpath option counts, the user must
4645 dnl pass all path elements in one option. We can arrange that for a
4646 dnl single library, but not when more than one $LIBNAMEs are used.
4648 for found_dir in $rpathdirs; do
4649 alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
4651 dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl.
4652 acl_save_libdir="$libdir"
4654 eval flag=\"$hardcode_libdir_flag_spec\"
4655 libdir="$acl_save_libdir"
4656 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
4658 dnl The -rpath options are cumulative.
4659 for found_dir in $rpathdirs; do
4660 acl_save_libdir="$libdir"
4662 eval flag=\"$hardcode_libdir_flag_spec\"
4663 libdir="$acl_save_libdir"
4664 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
4668 if test "X$ltrpathdirs" != "X"; then
4669 dnl When using libtool, the option that works for both libraries and
4670 dnl executables is -R. The -R options are cumulative.
4671 for found_dir in $ltrpathdirs; do
4672 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir"
4677 dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR,
4678 dnl unless already present in VAR.
4679 dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes
4680 dnl contains two or three consecutive elements that belong together.
4681 AC_DEFUN([AC_LIB_APPENDTOVAR],
4683 for element in [$2]; do
4686 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
4687 if test "X$x" = "X$element"; then
4692 if test -z "$haveit"; then
4693 [$1]="${[$1]}${[$1]:+ }$element"
4698 # lib-ld.m4 serial 1 (gettext-0.11)
4699 dnl Copyright (C) 1996-2002 Free Software Foundation, Inc.
4700 dnl This file is free software, distributed under the terms of the GNU
4701 dnl General Public License. As a special exception to the GNU General
4702 dnl Public License, this file may be distributed as part of a program
4703 dnl that contains a configuration script generated by Autoconf, under
4704 dnl the same distribution terms as the rest of that program.
4706 dnl Subroutines of libtool.m4,
4707 dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision
4708 dnl with libtool.m4.
4710 dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no.
4711 AC_DEFUN([AC_LIB_PROG_LD_GNU],
4712 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], acl_cv_prog_gnu_ld,
4713 [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
4714 if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
4715 acl_cv_prog_gnu_ld=yes
4717 acl_cv_prog_gnu_ld=no
4719 with_gnu_ld=$acl_cv_prog_gnu_ld
4722 dnl From libtool-1.4. Sets the variable LD.
4723 AC_DEFUN([AC_LIB_PROG_LD],
4724 [AC_ARG_WITH(gnu-ld,
4725 [ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
4726 test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
4727 AC_REQUIRE([AC_PROG_CC])dnl
4728 AC_REQUIRE([AC_CANONICAL_HOST])dnl
4730 if test "$GCC" = yes; then
4731 # Check if gcc -print-prog-name=ld gives a path.
4732 AC_MSG_CHECKING([for ld used by GCC])
4735 # gcc leaves a trailing carriage return which upsets mingw
4736 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
4738 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
4741 # Accept absolute paths.
4742 [[\\/]* | [A-Za-z]:[\\/]*)]
4743 [re_direlt='/[^/][^/]*/\.\./']
4744 # Canonicalize the path of ld
4745 ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
4746 while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
4747 ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
4749 test -z "$LD" && LD="$ac_prog"
4752 # If it fails, then pretend we aren't using GCC.
4756 # If it is relative, then search for the first ld in PATH.
4760 elif test "$with_gnu_ld" = yes; then
4761 AC_MSG_CHECKING([for GNU ld])
4763 AC_MSG_CHECKING([for non-GNU ld])
4765 AC_CACHE_VAL(acl_cv_path_LD,
4766 [if test -z "$LD"; then
4767 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
4768 for ac_dir in $PATH; do
4769 test -z "$ac_dir" && ac_dir=.
4770 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
4771 acl_cv_path_LD="$ac_dir/$ac_prog"
4772 # Check to see if the program is GNU ld. I'd rather use --version,
4773 # but apparently some GNU ld's only accept -v.
4774 # Break only if it was the GNU/non-GNU ld that we prefer.
4775 if "$acl_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
4776 test "$with_gnu_ld" != no && break
4778 test "$with_gnu_ld" != yes && break
4784 acl_cv_path_LD="$LD" # Let the user override the test with a path.
4786 LD="$acl_cv_path_LD"
4787 if test -n "$LD"; then
4792 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
4798 dnl From J. David Anglin.
4800 dnl HPUX and other systems can't unlink shared text that is being executed.
4802 AC_DEFUN([jm_FUNC_UNLINK_BUSY_TEXT],
4804 AC_CACHE_CHECK([whether a running program can be unlinked],
4805 jm_cv_func_unlink_busy_text,
4814 exit (unlink (argv[0]));
4817 jm_cv_func_unlink_busy_text=yes,
4818 jm_cv_func_unlink_busy_text=no,
4819 jm_cv_func_unlink_busy_text=no
4824 if test $jm_cv_func_unlink_busy_text = no; then
4825 INSTALL=$ac_install_sh
4831 dnl From Jim Meyering.
4833 dnl This is not pretty. I've just taken the autoconf code and wrapped
4834 dnl it in an AC_DEFUN.
4837 # jm_LIST_MOUNTED_FILESYSTEMS([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
4838 AC_DEFUN([jm_LIST_MOUNTED_FILESYSTEMS],
4840 AC_CHECK_FUNCS(listmntent getmntinfo)
4841 AC_CHECK_HEADERS(mntent.h sys/param.h sys/ucred.h sys/mount.h sys/fs_types.h)
4842 getfsstat_includes="\
4843 $ac_includes_default
4844 #if HAVE_SYS_PARAM_H
4845 # include <sys/param.h> /* needed by powerpc-apple-darwin1.3.7 */
4847 #if HAVE_SYS_UCRED_H
4848 # include <sys/ucred.h> /* needed by powerpc-apple-darwin1.3.7 */
4850 #if HAVE_SYS_MOUNT_H
4851 # include <sys/mount.h>
4853 #if HAVE_SYS_FS_TYPES_H
4854 # include <sys/fs_types.h> /* needed by powerpc-apple-darwin1.3.7 */
4857 AC_CHECK_MEMBERS([struct fsstat.f_fstypename],,,[$getfsstat_includes])
4859 # Determine how to get the list of mounted filesystems.
4862 # If the getmntent function is available but not in the standard library,
4863 # make sure LIBS contains -lsun (on Irix4) or -lseq (on PTX).
4866 # This test must precede the ones for getmntent because Unicos-9 is
4867 # reported to have the getmntent function, but its support is incompatible
4868 # with other getmntent implementations.
4870 # NOTE: Normally, I wouldn't use a check for system type as I've done for
4871 # `CRAY' below since that goes against the whole autoconf philosophy. But
4872 # I think there is too great a chance that some non-Cray system has a
4873 # function named listmntent to risk the false positive.
4875 if test -z "$ac_list_mounted_fs"; then
4877 AC_MSG_CHECKING([for listmntent of Cray/Unicos-9])
4878 AC_CACHE_VAL(fu_cv_sys_mounted_cray_listmntent,
4879 [fu_cv_sys_mounted_cray_listmntent=no
4884 ], [test $ac_cv_func_listmntent = yes \
4885 && fu_cv_sys_mounted_cray_listmntent=yes]
4889 AC_MSG_RESULT($fu_cv_sys_mounted_cray_listmntent)
4890 if test $fu_cv_sys_mounted_cray_listmntent = yes; then
4891 ac_list_mounted_fs=found
4892 AC_DEFINE(MOUNTED_LISTMNTENT, 1,
4893 [Define if there is a function named listmntent that can be used to
4894 list all mounted filesystems. (UNICOS)])
4898 if test -z "$ac_list_mounted_fs"; then
4900 AC_MSG_CHECKING([for mntctl function and struct vmount])
4901 AC_CACHE_VAL(fu_cv_sys_mounted_vmount,
4902 [AC_TRY_CPP([#include <fshelp.h>],
4903 fu_cv_sys_mounted_vmount=yes,
4904 fu_cv_sys_mounted_vmount=no)])
4905 AC_MSG_RESULT($fu_cv_sys_mounted_vmount)
4906 if test $fu_cv_sys_mounted_vmount = yes; then
4907 ac_list_mounted_fs=found
4908 AC_DEFINE(MOUNTED_VMOUNT, 1,
4909 [Define if there is a function named mntctl that can be used to read
4910 the list of mounted filesystems, and there is a system header file
4911 that declares `struct vmount.' (AIX)])
4915 if test $ac_cv_func_getmntent = yes; then
4917 # This system has the getmntent function.
4918 # Determine whether it's the one-argument variant or the two-argument one.
4920 if test -z "$ac_list_mounted_fs"; then
4921 # 4.3BSD, SunOS, HP-UX, Dynix, Irix
4922 AC_MSG_CHECKING([for one-argument getmntent function])
4923 AC_CACHE_VAL(fu_cv_sys_mounted_getmntent1,
4925 /* SunOS 4.1.x /usr/include/mntent.h needs this for FILE */
4929 #if !defined MOUNTED
4930 # if defined _PATH_MOUNTED /* GNU libc */
4931 # define MOUNTED _PATH_MOUNTED
4933 # if defined MNT_MNTTAB /* HP-UX. */
4934 # define MOUNTED MNT_MNTTAB
4936 # if defined MNTTABNAME /* Dynix. */
4937 # define MOUNTED MNTTABNAME
4941 [ struct mntent *mnt = 0; char *table = MOUNTED; ],
4942 fu_cv_sys_mounted_getmntent1=yes,
4943 fu_cv_sys_mounted_getmntent1=no)])
4944 AC_MSG_RESULT($fu_cv_sys_mounted_getmntent1)
4945 if test $fu_cv_sys_mounted_getmntent1 = yes; then
4946 ac_list_mounted_fs=found
4947 AC_DEFINE(MOUNTED_GETMNTENT1, 1,
4948 [Define if there is a function named getmntent for reading the list
4949 of mounted filesystems, and that function takes a single argument.
4950 (4.3BSD, SunOS, HP-UX, Dynix, Irix)])
4954 if test -z "$ac_list_mounted_fs"; then
4956 AC_MSG_CHECKING([for two-argument getmntent function])
4957 AC_CACHE_VAL(fu_cv_sys_mounted_getmntent2,
4958 [AC_EGREP_HEADER(getmntent, sys/mnttab.h,
4959 fu_cv_sys_mounted_getmntent2=yes,
4960 fu_cv_sys_mounted_getmntent2=no)])
4961 AC_MSG_RESULT($fu_cv_sys_mounted_getmntent2)
4962 if test $fu_cv_sys_mounted_getmntent2 = yes; then
4963 ac_list_mounted_fs=found
4964 AC_DEFINE(MOUNTED_GETMNTENT2, 1,
4965 [Define if there is a function named getmntent for reading the list of
4966 mounted filesystems, and that function takes two arguments. (SVR4)])
4972 if test -z "$ac_list_mounted_fs"; then
4973 # DEC Alpha running OSF/1, and Apple Darwin 1.3.
4974 # powerpc-apple-darwin1.3.7 needs sys/param.h sys/ucred.h sys/fs_types.h
4976 AC_MSG_CHECKING([for getfsstat function])
4977 AC_CACHE_VAL(fu_cv_sys_mounted_getfsstat,
4979 #include <sys/types.h>
4980 #if HAVE_STRUCT_FSSTAT_F_FSTYPENAME
4981 # define FS_TYPE(Ent) ((Ent).f_fstypename)
4983 # define FS_TYPE(Ent) mnt_names[(Ent).f_type]
4985 ]$getfsstat_includes
4987 [struct statfs *stats;
4988 int numsys = getfsstat ((struct statfs *)0, 0L, MNT_WAIT);
4989 char *t = FS_TYPE (*stats); ],
4990 fu_cv_sys_mounted_getfsstat=yes,
4991 fu_cv_sys_mounted_getfsstat=no)])
4992 AC_MSG_RESULT($fu_cv_sys_mounted_getfsstat)
4993 if test $fu_cv_sys_mounted_getfsstat = yes; then
4994 ac_list_mounted_fs=found
4995 AC_DEFINE(MOUNTED_GETFSSTAT, 1,
4996 [Define if there is a function named getfsstat for reading the
4997 list of mounted filesystems. (DEC Alpha running OSF/1)])
5001 if test -z "$ac_list_mounted_fs"; then
5003 AC_MSG_CHECKING([for FIXME existence of three headers])
5004 AC_CACHE_VAL(fu_cv_sys_mounted_fread_fstyp,
5006 #include <sys/statfs.h>
5007 #include <sys/fstyp.h>
5008 #include <mnttab.h>],
5009 fu_cv_sys_mounted_fread_fstyp=yes,
5010 fu_cv_sys_mounted_fread_fstyp=no)])
5011 AC_MSG_RESULT($fu_cv_sys_mounted_fread_fstyp)
5012 if test $fu_cv_sys_mounted_fread_fstyp = yes; then
5013 ac_list_mounted_fs=found
5014 AC_DEFINE(MOUNTED_FREAD_FSTYP, 1,
5015 [Define if (like SVR2) there is no specific function for reading the
5016 list of mounted filesystems, and your system has these header files:
5017 <sys/fstyp.h> and <sys/statfs.h>. (SVR3)])
5021 if test -z "$ac_list_mounted_fs"; then
5022 # 4.4BSD and DEC OSF/1.
5023 AC_MSG_CHECKING([for getmntinfo function])
5024 AC_CACHE_VAL(fu_cv_sys_mounted_getmntinfo,
5026 test "$ac_cv_func_getmntinfo" = yes \
5027 && fu_cv_sys_mounted_getmntinfo=yes \
5028 || fu_cv_sys_mounted_getmntinfo=no
5030 AC_MSG_RESULT($fu_cv_sys_mounted_getmntinfo)
5031 if test $fu_cv_sys_mounted_getmntinfo = yes; then
5032 ac_list_mounted_fs=found
5033 AC_DEFINE(MOUNTED_GETMNTINFO, 1,
5034 [Define if there is a function named getmntinfo for reading the
5035 list of mounted filesystems. (4.4BSD, Darwin)])
5039 if test -z "$ac_list_mounted_fs"; then
5041 AC_MSG_CHECKING([for getmnt function])
5042 AC_CACHE_VAL(fu_cv_sys_mounted_getmnt,
5044 #include <sys/fs_types.h>
5045 #include <sys/mount.h>],
5046 fu_cv_sys_mounted_getmnt=yes,
5047 fu_cv_sys_mounted_getmnt=no)])
5048 AC_MSG_RESULT($fu_cv_sys_mounted_getmnt)
5049 if test $fu_cv_sys_mounted_getmnt = yes; then
5050 ac_list_mounted_fs=found
5051 AC_DEFINE(MOUNTED_GETMNT, 1,
5052 [Define if there is a function named getmnt for reading the list of
5053 mounted filesystems. (Ultrix)])
5057 if test -z "$ac_list_mounted_fs"; then
5059 AC_CHECK_FUNCS(next_dev fs_stat_dev)
5060 AC_CHECK_HEADERS(fs_info.h)
5061 AC_MSG_CHECKING([for BEOS mounted file system support functions])
5062 if test $ac_cv_header_fs_info_h = yes \
5063 && test $ac_cv_func_next_dev = yes \
5064 && test $ac_cv_func_fs_stat_dev = yes; then
5069 AC_MSG_RESULT($fu_result)
5070 if test $fu_result = yes; then
5071 ac_list_mounted_fs=found
5072 AC_DEFINE(MOUNTED_FS_STAT_DEV, 1,
5073 [Define if there are functions named next_dev and fs_stat_dev for
5074 reading the list of mounted filesystems. (BeOS)])
5078 if test -z "$ac_list_mounted_fs"; then
5080 AC_MSG_CHECKING([whether it is possible to resort to fread on /etc/mnttab])
5081 AC_CACHE_VAL(fu_cv_sys_mounted_fread,
5082 [AC_TRY_CPP([#include <mnttab.h>],
5083 fu_cv_sys_mounted_fread=yes,
5084 fu_cv_sys_mounted_fread=no)])
5085 AC_MSG_RESULT($fu_cv_sys_mounted_fread)
5086 if test $fu_cv_sys_mounted_fread = yes; then
5087 ac_list_mounted_fs=found
5088 AC_DEFINE(MOUNTED_FREAD, 1,
5089 [Define if there is no specific function for reading the list of
5090 mounted filesystems. fread will be used to read /etc/mnttab. (SVR2) ])
5094 if test -z "$ac_list_mounted_fs"; then
5095 AC_MSG_ERROR([could not determine how to read list of mounted filesystems])
5096 # FIXME -- no need to abort building the whole package
5097 # Can't build mountlist.c or anything that needs its functions
5100 AS_IF([test $ac_list_mounted_fs = found], [$1], [$2])
5106 dnl From Jim Meyering.
5108 dnl See if struct statfs has the f_fstypename member.
5109 dnl If so, define HAVE_F_FSTYPENAME_IN_STATFS.
5112 AC_DEFUN([jm_FSTYPENAME],
5114 AC_CACHE_CHECK([for f_fstypename in struct statfs],
5115 fu_cv_sys_f_fstypename_in_statfs,
5119 #include <sys/param.h>
5120 #include <sys/types.h>
5121 #include <sys/mount.h>
5123 [struct statfs s; int i = sizeof s.f_fstypename;],
5124 fu_cv_sys_f_fstypename_in_statfs=yes,
5125 fu_cv_sys_f_fstypename_in_statfs=no
5130 if test $fu_cv_sys_f_fstypename_in_statfs = yes; then
5131 AC_DEFINE(HAVE_F_FSTYPENAME_IN_STATFS, 1,
5132 [Define if struct statfs has the f_fstypename member.])
5139 # From fileutils/configure.in
5141 # Try to determine how a program can obtain filesystem usage information.
5142 # If successful, define the appropriate symbol (see fsusage.c) and
5143 # execute ACTION-IF-FOUND. Otherwise, execute ACTION-IF-NOT-FOUND.
5145 # jm_FILE_SYSTEM_USAGE([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
5147 AC_DEFUN([jm_FILE_SYSTEM_USAGE],
5150 echo "checking how to get filesystem space usage..."
5153 # Perform only the link test since it seems there are no variants of the
5154 # statvfs function. This check is more than just AC_CHECK_FUNCS(statvfs)
5155 # because that got a false positive on SCO OSR5. Adding the declaration
5156 # of a `struct statvfs' causes this test to fail (as it should) on such
5157 # systems. That system is reported to work fine with STAT_STATFS4 which
5158 # is what it gets when this test fails.
5159 if test $ac_fsusage_space = no; then
5161 AC_CACHE_CHECK([for statvfs function (SVR4)], fu_cv_sys_stat_statvfs,
5162 [AC_TRY_LINK([#include <sys/types.h>
5164 Do not use statvfs on systems with GNU libc, because that function stats
5165 all preceding entries in /proc/mounts, and that makes df hang if even
5166 one of the corresponding file systems is hard-mounted, but not available.
5168 #include <sys/statvfs.h>],
5169 [struct statvfs fsd; statvfs (0, &fsd);],
5170 fu_cv_sys_stat_statvfs=yes,
5171 fu_cv_sys_stat_statvfs=no)])
5172 if test $fu_cv_sys_stat_statvfs = yes; then
5173 ac_fsusage_space=yes
5174 AC_DEFINE(STAT_STATVFS, 1,
5175 [ Define if there is a function named statvfs. (SVR4)])
5179 if test $ac_fsusage_space = no; then
5180 # DEC Alpha running OSF/1
5181 AC_MSG_CHECKING([for 3-argument statfs function (DEC OSF/1)])
5182 AC_CACHE_VAL(fu_cv_sys_stat_statfs3_osf1,
5184 #include <sys/param.h>
5185 #include <sys/types.h>
5186 #include <sys/mount.h>
5191 exit (statfs (".", &fsd, sizeof (struct statfs)));
5193 fu_cv_sys_stat_statfs3_osf1=yes,
5194 fu_cv_sys_stat_statfs3_osf1=no,
5195 fu_cv_sys_stat_statfs3_osf1=no)])
5196 AC_MSG_RESULT($fu_cv_sys_stat_statfs3_osf1)
5197 if test $fu_cv_sys_stat_statfs3_osf1 = yes; then
5198 ac_fsusage_space=yes
5199 AC_DEFINE(STAT_STATFS3_OSF1, 1,
5200 [ Define if statfs takes 3 args. (DEC Alpha running OSF/1)])
5204 if test $ac_fsusage_space = no; then
5206 AC_MSG_CHECKING([for two-argument statfs with statfs.bsize dnl
5207 member (AIX, 4.3BSD)])
5208 AC_CACHE_VAL(fu_cv_sys_stat_statfs2_bsize,
5210 #ifdef HAVE_SYS_PARAM_H
5211 #include <sys/param.h>
5213 #ifdef HAVE_SYS_MOUNT_H
5214 #include <sys/mount.h>
5216 #ifdef HAVE_SYS_VFS_H
5217 #include <sys/vfs.h>
5223 exit (statfs (".", &fsd));
5225 fu_cv_sys_stat_statfs2_bsize=yes,
5226 fu_cv_sys_stat_statfs2_bsize=no,
5227 fu_cv_sys_stat_statfs2_bsize=no)])
5228 AC_MSG_RESULT($fu_cv_sys_stat_statfs2_bsize)
5229 if test $fu_cv_sys_stat_statfs2_bsize = yes; then
5230 ac_fsusage_space=yes
5231 AC_DEFINE(STAT_STATFS2_BSIZE, 1,
5232 [ Define if statfs takes 2 args and struct statfs has a field named f_bsize.
5233 (4.3BSD, SunOS 4, HP-UX, AIX PS/2)])
5237 if test $ac_fsusage_space = no; then
5239 AC_MSG_CHECKING([for four-argument statfs (AIX-3.2.5, SVR3)])
5240 AC_CACHE_VAL(fu_cv_sys_stat_statfs4,
5241 [AC_TRY_RUN([#include <sys/types.h>
5242 #include <sys/statfs.h>
5246 exit (statfs (".", &fsd, sizeof fsd, 0));
5248 fu_cv_sys_stat_statfs4=yes,
5249 fu_cv_sys_stat_statfs4=no,
5250 fu_cv_sys_stat_statfs4=no)])
5251 AC_MSG_RESULT($fu_cv_sys_stat_statfs4)
5252 if test $fu_cv_sys_stat_statfs4 = yes; then
5253 ac_fsusage_space=yes
5254 AC_DEFINE(STAT_STATFS4, 1,
5255 [ Define if statfs takes 4 args. (SVR3, Dynix, Irix, Dolphin)])
5259 if test $ac_fsusage_space = no; then
5261 AC_MSG_CHECKING([for two-argument statfs with statfs.fsize dnl
5262 member (4.4BSD and NetBSD)])
5263 AC_CACHE_VAL(fu_cv_sys_stat_statfs2_fsize,
5264 [AC_TRY_RUN([#include <sys/types.h>
5265 #ifdef HAVE_SYS_PARAM_H
5266 #include <sys/param.h>
5268 #ifdef HAVE_SYS_MOUNT_H
5269 #include <sys/mount.h>
5275 exit (statfs (".", &fsd));
5277 fu_cv_sys_stat_statfs2_fsize=yes,
5278 fu_cv_sys_stat_statfs2_fsize=no,
5279 fu_cv_sys_stat_statfs2_fsize=no)])
5280 AC_MSG_RESULT($fu_cv_sys_stat_statfs2_fsize)
5281 if test $fu_cv_sys_stat_statfs2_fsize = yes; then
5282 ac_fsusage_space=yes
5283 AC_DEFINE(STAT_STATFS2_FSIZE, 1,
5284 [ Define if statfs takes 2 args and struct statfs has a field named f_fsize.
5289 if test $ac_fsusage_space = no; then
5291 AC_MSG_CHECKING([for two-argument statfs with struct fs_data (Ultrix)])
5292 AC_CACHE_VAL(fu_cv_sys_stat_fs_data,
5293 [AC_TRY_RUN([#include <sys/types.h>
5294 #ifdef HAVE_SYS_PARAM_H
5295 #include <sys/param.h>
5297 #ifdef HAVE_SYS_MOUNT_H
5298 #include <sys/mount.h>
5300 #ifdef HAVE_SYS_FS_TYPES_H
5301 #include <sys/fs_types.h>
5306 /* Ultrix's statfs returns 1 for success,
5307 0 for not mounted, -1 for failure. */
5308 exit (statfs (".", &fsd) != 1);
5310 fu_cv_sys_stat_fs_data=yes,
5311 fu_cv_sys_stat_fs_data=no,
5312 fu_cv_sys_stat_fs_data=no)])
5313 AC_MSG_RESULT($fu_cv_sys_stat_fs_data)
5314 if test $fu_cv_sys_stat_fs_data = yes; then
5315 ac_fsusage_space=yes
5316 AC_DEFINE(STAT_STATFS2_FS_DATA, 1,
5317 [ Define if statfs takes 2 args and the second argument has
5318 type struct fs_data. (Ultrix)])
5322 if test $ac_fsusage_space = no; then
5324 AC_TRY_CPP([#include <sys/filsys.h>
5326 AC_DEFINE(STAT_READ_FILSYS, 1,
5327 [Define if there is no specific function for reading filesystems usage
5328 information and you have the <sys/filsys.h> header file. (SVR2)])
5329 ac_fsusage_space=yes)
5332 AS_IF([test $ac_fsusage_space = yes], [$1], [$2])
5338 # Define some macros required for proper operation of code in lib/*.c
5339 # on MSDOS/Windows systems.
5341 # From Jim Meyering.
5343 AC_DEFUN([jm_AC_DOS],
5345 AC_CACHE_CHECK([whether system is Windows or MSDOS], [ac_cv_win_or_dos],
5348 [#if !defined _WIN32 && !defined __WIN32__ && !defined __MSDOS__
5349 neither MSDOS nor Windows
5351 [ac_cv_win_or_dos=yes],
5352 [ac_cv_win_or_dos=no])
5355 if test x"$ac_cv_win_or_dos" = xyes; then
5356 ac_fs_accepts_drive_letter_prefix=1
5357 ac_fs_backslash_is_file_name_separator=1
5359 ac_fs_accepts_drive_letter_prefix=0
5360 ac_fs_backslash_is_file_name_separator=0
5363 AH_VERBATIM(FILESYSTEM_PREFIX_LEN,
5364 [#if FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX
5365 # define FILESYSTEM_PREFIX_LEN(Filename) \
5366 ((Filename)[0] && (Filename)[1] == ':' ? 2 : 0)
5368 # define FILESYSTEM_PREFIX_LEN(Filename) 0
5371 AC_DEFINE_UNQUOTED([FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX],
5372 $ac_fs_accepts_drive_letter_prefix,
5373 [Define on systems for which file names may have a so-called
5374 `drive letter' prefix, define this to compute the length of that
5375 prefix, including the colon.])
5377 AH_VERBATIM(ISSLASH,
5378 [#if FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR
5379 # define ISSLASH(C) ((C) == '/' || (C) == '\\')
5381 # define ISSLASH(C) ((C) == '/')
5384 AC_DEFINE_UNQUOTED([FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR],
5385 $ac_fs_backslash_is_file_name_separator,
5386 [Define if the backslash character may also serve as a file name
5387 component separator.])
5391 AC_DEFUN([AC_FUNC_CANONICALIZE_FILE_NAME],
5393 AC_REQUIRE([AC_HEADER_STDC])
5394 AC_CHECK_HEADERS(string.h sys/param.h stddef.h)
5395 AC_CHECK_FUNCS(resolvepath)
5396 AC_REQUIRE([AC_HEADER_STAT])
5398 # This would simply be AC_REPLACE_FUNC([canonicalize_file_name])
5399 # if the function name weren't so long. Besides, I would rather
5400 # not have underscores in file names.
5401 AC_CHECK_FUNC([canonicalize_file_name], , [AC_LIBOBJ(canonicalize)])
5406 dnl From Paul Eggert.
5408 # Define ST_MTIM_NSEC to be the nanoseconds member of struct stat's st_mtim,
5411 AC_DEFUN([AC_STRUCT_ST_MTIM_NSEC],
5412 [AC_CACHE_CHECK([for nanoseconds member of struct stat.st_mtim],
5413 ac_cv_struct_st_mtim_nsec,
5414 [ac_save_CPPFLAGS="$CPPFLAGS"
5415 ac_cv_struct_st_mtim_nsec=no
5416 # tv_nsec -- the usual case
5417 # _tv_nsec -- Solaris 2.6, if
5418 # (defined _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED == 1
5419 # && !defined __EXTENSIONS__)
5420 # st__tim.tv_nsec -- UnixWare 2.1.2
5421 for ac_val in tv_nsec _tv_nsec st__tim.tv_nsec; do
5422 CPPFLAGS="$ac_save_CPPFLAGS -DST_MTIM_NSEC=$ac_val"
5423 AC_TRY_COMPILE([#include <sys/types.h>
5424 #include <sys/stat.h>], [struct stat s; s.st_mtim.ST_MTIM_NSEC;],
5425 [ac_cv_struct_st_mtim_nsec=$ac_val; break])
5427 CPPFLAGS="$ac_save_CPPFLAGS"])
5429 if test $ac_cv_struct_st_mtim_nsec != no; then
5430 AC_DEFINE_UNQUOTED(ST_MTIM_NSEC, $ac_cv_struct_st_mtim_nsec,
5431 [Define to be the nanoseconds member of struct stat's st_mtim,
5439 # Define HAVE_ST_DM_MODE if struct stat has an st_dm_mode member.
5441 AC_DEFUN([AC_STRUCT_ST_DM_MODE],
5442 [AC_CACHE_CHECK([for st_dm_mode in struct stat], ac_cv_struct_st_dm_mode,
5443 [AC_TRY_COMPILE([#include <sys/types.h>
5444 #include <sys/stat.h>], [struct stat s; s.st_dm_mode;],
5445 ac_cv_struct_st_dm_mode=yes,
5446 ac_cv_struct_st_dm_mode=no)])
5448 if test $ac_cv_struct_st_dm_mode = yes; then
5449 AC_DEFINE(HAVE_ST_DM_MODE, 1,
5450 [Define if struct stat has an st_dm_mode member. ])
5457 dnl From Jim Meyering
5459 dnl Define HAVE_STRUCT_TIMESPEC if `struct timespec' is declared
5460 dnl in time.h or sys/time.h.
5462 AC_DEFUN([jm_CHECK_TYPE_STRUCT_TIMESPEC],
5464 AC_REQUIRE([AC_HEADER_TIME])
5465 AC_CACHE_CHECK([for struct timespec], fu_cv_sys_struct_timespec,
5468 # if TIME_WITH_SYS_TIME
5469 # include <sys/time.h>
5472 # if HAVE_SYS_TIME_H
5473 # include <sys/time.h>
5479 [static struct timespec x; x.tv_sec = x.tv_nsec;],
5480 fu_cv_sys_struct_timespec=yes,
5481 fu_cv_sys_struct_timespec=no)
5484 if test $fu_cv_sys_struct_timespec = yes; then
5485 AC_DEFINE(HAVE_STRUCT_TIMESPEC, 1,
5486 [Define if struct timespec is declared in <time.h>. ])
5491 dnl From Jim Meyering and Paul Eggert.
5492 AC_DEFUN([jm_HEADER_TIOCGWINSZ_IN_TERMIOS_H],
5493 [AC_REQUIRE([AC_SYS_POSIX_TERMIOS])
5494 AC_CACHE_CHECK([whether use of TIOCGWINSZ requires termios.h],
5495 jm_cv_sys_tiocgwinsz_needs_termios_h,
5496 [jm_cv_sys_tiocgwinsz_needs_termios_h=no
5498 if test $ac_cv_sys_posix_termios = yes; then
5500 [#include <sys/types.h>
5501 # include <termios.h>
5505 ], jm_cv_sys_tiocgwinsz_needs_termios_h=yes)
5510 AC_DEFUN([jm_WINSIZE_IN_PTEM],
5511 [AC_REQUIRE([AC_SYS_POSIX_TERMIOS])
5512 AC_CACHE_CHECK([whether use of struct winsize requires sys/ptem.h],
5513 jm_cv_sys_struct_winsize_needs_sys_ptem_h,
5514 [jm_cv_sys_struct_winsize_needs_sys_ptem_h=yes
5515 if test $ac_cv_sys_posix_termios = yes; then
5516 AC_TRY_COMPILE([#include <termios.h>]
5517 [struct winsize x;],
5518 [jm_cv_sys_struct_winsize_needs_sys_ptem_h=no])
5520 if test $jm_cv_sys_struct_winsize_needs_sys_ptem_h = yes; then
5521 AC_TRY_COMPILE([#include <sys/ptem.h>],
5522 [struct winsize x;],
5523 [], [jm_cv_sys_struct_winsize_needs_sys_ptem_h=no])
5525 if test $jm_cv_sys_struct_winsize_needs_sys_ptem_h = yes; then
5526 AC_DEFINE([WINSIZE_IN_PTEM], 1,
5527 [Define if sys/ptem.h is required for struct winsize.])
5530 # Determine whether this system has infrastructure for obtaining the boot time.
5532 # GNULIB_BOOT_TIME([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
5533 * ----------------------------------------------------------
5534 AC_DEFUN([GNULIB_BOOT_TIME],
5536 AC_CHECK_FUNCS(sysctl)
5537 AC_CHECK_HEADERS(sys/sysctl.h)
5539 [whether we can get the system boot time],
5540 [gnulib_cv_have_boot_time],
5544 [AC_INCLUDES_DEFAULT
5545 #if HAVE_SYSCTL && HAVE_SYS_SYSCTL_H
5546 # include <sys/param.h> /* needed for OpenBSD 3.0 */
5547 # include <sys/sysctl.h>
5556 #if defined BOOT_TIME || (defined CTL_KERN && defined KERN_BOOTTIME)
5557 /* your system *does* have the infrastructure to determine boot time */
5559 please_tell_us_how_to_determine_boot_time_on_your_system
5562 gnulib_cv_have_boot_time=yes,
5563 gnulib_cv_have_boot_time=no)
5565 AS_IF([test $gnulib_cv_have_boot_time = yes], [$1], [$2])
5570 AC_DEFUN([jm_HEADER_TIOCGWINSZ_NEEDS_SYS_IOCTL],
5571 [AC_REQUIRE([jm_HEADER_TIOCGWINSZ_IN_TERMIOS_H])
5572 AC_CACHE_CHECK([whether use of TIOCGWINSZ requires sys/ioctl.h],
5573 jm_cv_sys_tiocgwinsz_needs_sys_ioctl_h,
5574 [jm_cv_sys_tiocgwinsz_needs_sys_ioctl_h=no
5576 if test $jm_cv_sys_tiocgwinsz_needs_termios_h = no; then
5578 [#include <sys/types.h>
5579 # include <sys/ioctl.h>
5583 ], jm_cv_sys_tiocgwinsz_needs_sys_ioctl_h=yes)
5586 if test $jm_cv_sys_tiocgwinsz_needs_sys_ioctl_h = yes; then
5587 AC_DEFINE(GWINSZ_IN_SYS_IOCTL, 1,
5588 [Define if your system defines TIOCGWINSZ in sys/ioctl.h.])
5594 dnl Misc lib-related macros for fileutils, sh-utils, textutils.
5596 AC_DEFUN([jm_LIB_CHECK],
5599 # Check for libypsec.a on Dolphin M88K machines.
5600 AC_CHECK_LIB(ypsec, main)
5602 # m88k running dgux 5.4 needs this
5603 AC_CHECK_LIB(ldgc, main)
5605 # Some programs need to link with -lm. printf does if it uses
5606 # lib/strtod.c which uses pow. And seq uses the math functions,
5607 # floor, modf, rint. And factor uses sqrt. And sleep uses fesetround.
5609 # Save a copy of $LIBS and add $FLOOR_LIBM before these tests
5610 # Check for these math functions used by seq.
5611 ac_su_saved_lib="$LIBS"
5613 AC_CHECK_FUNCS(floor modf rint)
5614 LIBS="$ac_su_saved_lib"
5617 AC_CHECK_FUNCS(sqrt)
5618 if test $ac_cv_func_sqrt = no; then
5619 AC_CHECK_LIB(m, sqrt, [SQRT_LIBM=-lm])
5622 AC_SUBST(FESETROUND_LIBM)
5623 AC_CHECK_FUNCS(fesetround)
5624 if test $ac_cv_func_fesetround = no; then
5625 AC_CHECK_LIB(m, fesetround, [FESETROUND_LIBM=-lm])
5628 # The -lsun library is required for YP support on Irix-4.0.5 systems.
5629 # m88k/svr3 DolphinOS systems using YP need -lypsec for id.
5630 AC_SEARCH_LIBS(yp_match, [sun ypsec])
5632 # SysV needs -lsec, older versions of Linux need -lshadow for
5633 # shadow passwords. UnixWare 7 needs -lgen.
5634 AC_SEARCH_LIBS(getspnam, [shadow sec gen])
5636 AC_CHECK_HEADERS(shadow.h)
5638 # Requirements for su.c.
5640 $ac_includes_default
5642 # include <shadow.h>
5645 AC_CHECK_MEMBERS([struct spwd.sp_pwdp],,,[$shadow_includes])
5646 AC_CHECK_FUNCS(getspnam)
5648 # SCO-ODT-3.0 is reported to need -lufc for crypt.
5649 # NetBSD needs -lcrypt for crypt.
5650 ac_su_saved_lib="$LIBS"
5651 AC_SEARCH_LIBS(crypt, [ufc crypt], [LIB_CRYPT="$ac_cv_search_crypt"])
5652 LIBS="$ac_su_saved_lib"
5656 # gettext.m4 serial 17 (gettext-0.11.5)
5657 dnl Copyright (C) 1995-2002 Free Software Foundation, Inc.
5658 dnl This file is free software, distributed under the terms of the GNU
5659 dnl General Public License. As a special exception to the GNU General
5660 dnl Public License, this file may be distributed as part of a program
5661 dnl that contains a configuration script generated by Autoconf, under
5662 dnl the same distribution terms as the rest of that program.
5664 dnl This file can can be used in projects which are not available under
5665 dnl the GNU General Public License or the GNU Library General Public
5666 dnl License but which still want to provide support for the GNU gettext
5668 dnl Please note that the actual code of the GNU gettext library is covered
5669 dnl by the GNU Library General Public License, and the rest of the GNU
5670 dnl gettext package package is covered by the GNU General Public License.
5671 dnl They are *not* in the public domain.
5674 dnl Ulrich Drepper <drepper@cygnus.com>, 1995-2000.
5675 dnl Bruno Haible <haible@clisp.cons.org>, 2000-2002.
5677 dnl Macro to add for using GNU gettext.
5679 dnl Usage: AM_GNU_GETTEXT([INTLSYMBOL], [NEEDSYMBOL], [INTLDIR]).
5680 dnl INTLSYMBOL can be one of 'external', 'no-libtool', 'use-libtool'. The
5681 dnl default (if it is not specified or empty) is 'no-libtool'.
5682 dnl INTLSYMBOL should be 'external' for packages with no intl directory,
5683 dnl and 'no-libtool' or 'use-libtool' for packages with an intl directory.
5684 dnl If INTLSYMBOL is 'use-libtool', then a libtool library
5685 dnl $(top_builddir)/intl/libintl.la will be created (shared and/or static,
5686 dnl depending on --{enable,disable}-{shared,static} and on the presence of
5687 dnl AM-DISABLE-SHARED). If INTLSYMBOL is 'no-libtool', a static library
5688 dnl $(top_builddir)/intl/libintl.a will be created.
5689 dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext
5690 dnl implementations (in libc or libintl) without the ngettext() function
5691 dnl will be ignored. If NEEDSYMBOL is specified and is
5692 dnl 'need-formatstring-macros', then GNU gettext implementations that don't
5693 dnl support the ISO C 99 <inttypes.h> formatstring macros will be ignored.
5694 dnl INTLDIR is used to find the intl libraries. If empty,
5695 dnl the value `$(top_builddir)/intl/' is used.
5697 dnl The result of the configuration is one of three cases:
5698 dnl 1) GNU gettext, as included in the intl subdirectory, will be compiled
5700 dnl Catalog format: GNU --> install in $(datadir)
5701 dnl Catalog extension: .mo after installation, .gmo in source tree
5702 dnl 2) GNU gettext has been found in the system's C library.
5703 dnl Catalog format: GNU --> install in $(datadir)
5704 dnl Catalog extension: .mo after installation, .gmo in source tree
5705 dnl 3) No internationalization, always use English msgid.
5706 dnl Catalog format: none
5707 dnl Catalog extension: none
5708 dnl If INTLSYMBOL is 'external', only cases 2 and 3 can occur.
5709 dnl The use of .gmo is historical (it was needed to avoid overwriting the
5710 dnl GNU format catalogs when building on a platform with an X/Open gettext),
5711 dnl but we keep it in order not to force irrelevant filename changes on the
5714 AC_DEFUN([AM_GNU_GETTEXT],
5716 dnl Argument checking.
5717 ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [no-libtool], , [ifelse([$1], [use-libtool], ,
5718 [errprint([ERROR: invalid first argument to AM_GNU_GETTEXT
5720 ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], ,
5721 [errprint([ERROR: invalid second argument to AM_GNU_GETTEXT
5723 define(gt_included_intl, ifelse([$1], [external], [no], [yes]))
5724 define(gt_libtool_suffix_prefix, ifelse([$1], [use-libtool], [l], []))
5726 AC_REQUIRE([AM_PO_SUBDIRS])dnl
5727 ifelse(gt_included_intl, yes, [
5728 AC_REQUIRE([AM_INTL_SUBDIR])dnl
5731 dnl Prerequisites of AC_LIB_LINKFLAGS_BODY.
5732 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
5733 AC_REQUIRE([AC_LIB_RPATH])
5735 dnl Sometimes libintl requires libiconv, so first search for libiconv.
5736 dnl Ideally we would do this search only after the
5737 dnl if test "$USE_NLS" = "yes"; then
5738 dnl if test "$gt_cv_func_gnugettext_libc" != "yes"; then
5739 dnl tests. But if configure.in invokes AM_ICONV after AM_GNU_GETTEXT
5740 dnl the configure script would need to contain the same shell code
5741 dnl again, outside any 'if'. There are two solutions:
5742 dnl - Invoke AM_ICONV_LINKFLAGS_BODY here, outside any 'if'.
5743 dnl - Control the expansions in more detail using AC_PROVIDE_IFELSE.
5744 dnl Since AC_PROVIDE_IFELSE is only in autoconf >= 2.52 and not
5745 dnl documented, we avoid it.
5746 ifelse(gt_included_intl, yes, , [
5747 AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
5750 AC_MSG_CHECKING([whether NLS is requested])
5751 dnl Default is enabled NLS
5753 [ --disable-nls do not use Native Language Support],
5754 USE_NLS=$enableval, USE_NLS=yes)
5755 AC_MSG_RESULT($USE_NLS)
5758 ifelse(gt_included_intl, yes, [
5759 BUILD_INCLUDED_LIBINTL=no
5760 USE_INCLUDED_LIBINTL=no
5766 dnl If we use NLS figure out what method
5767 if test "$USE_NLS" = "yes"; then
5768 gt_use_preinstalled_gnugettext=no
5769 ifelse(gt_included_intl, yes, [
5770 AC_MSG_CHECKING([whether included gettext is requested])
5771 AC_ARG_WITH(included-gettext,
5772 [ --with-included-gettext use the GNU gettext library included here],
5773 nls_cv_force_use_gnu_gettext=$withval,
5774 nls_cv_force_use_gnu_gettext=no)
5775 AC_MSG_RESULT($nls_cv_force_use_gnu_gettext)
5777 nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
5778 if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
5780 dnl User does not insist on using GNU NLS library. Figure out what
5781 dnl to use. If GNU gettext is available we use this. Else we have
5782 dnl to fall back to GNU NLS library.
5784 dnl Add a version number to the cache macros.
5785 define([gt_api_version], ifelse([$2], [need-formatstring-macros], 3, ifelse([$2], [need-ngettext], 2, 1)))
5786 define([gt_cv_func_gnugettext_libc], [gt_cv_func_gnugettext]gt_api_version[_libc])
5787 define([gt_cv_func_gnugettext_libintl], [gt_cv_func_gnugettext]gt_api_version[_libintl])
5789 AC_CACHE_CHECK([for GNU gettext in libc], gt_cv_func_gnugettext_libc,
5790 [AC_TRY_LINK([#include <libintl.h>
5791 ]ifelse([$2], [need-formatstring-macros],
5792 [#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
5793 #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
5796 typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
5798 ], [])[extern int _nl_msg_cat_cntr;
5799 extern int *_nl_domain_bindings;],
5800 [bindtextdomain ("", "");
5801 return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_domain_bindings],
5802 gt_cv_func_gnugettext_libc=yes,
5803 gt_cv_func_gnugettext_libc=no)])
5805 if test "$gt_cv_func_gnugettext_libc" != "yes"; then
5806 dnl Sometimes libintl requires libiconv, so first search for libiconv.
5807 ifelse(gt_included_intl, yes, , [
5810 dnl Search for libintl and define LIBINTL, LTLIBINTL and INCINTL
5811 dnl accordingly. Don't use AC_LIB_LINKFLAGS_BODY([intl],[iconv])
5812 dnl because that would add "-liconv" to LIBINTL and LTLIBINTL
5813 dnl even if libiconv doesn't exist.
5814 AC_LIB_LINKFLAGS_BODY([intl])
5815 AC_CACHE_CHECK([for GNU gettext in libintl],
5816 gt_cv_func_gnugettext_libintl,
5817 [gt_save_CPPFLAGS="$CPPFLAGS"
5818 CPPFLAGS="$CPPFLAGS $INCINTL"
5819 gt_save_LIBS="$LIBS"
5820 LIBS="$LIBS $LIBINTL"
5821 dnl Now see whether libintl exists and does not depend on libiconv.
5822 AC_TRY_LINK([#include <libintl.h>
5823 ]ifelse([$2], [need-formatstring-macros],
5824 [#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
5825 #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
5828 typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
5830 ], [])[extern int _nl_msg_cat_cntr;
5835 const char *_nl_expand_alias ();],
5836 [bindtextdomain ("", "");
5837 return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)],
5838 gt_cv_func_gnugettext_libintl=yes,
5839 gt_cv_func_gnugettext_libintl=no)
5840 dnl Now see whether libintl exists and depends on libiconv.
5841 if test "$gt_cv_func_gnugettext_libintl" != yes && test -n "$LIBICONV"; then
5842 LIBS="$LIBS $LIBICONV"
5843 AC_TRY_LINK([#include <libintl.h>
5844 ]ifelse([$2], [need-formatstring-macros],
5845 [#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
5846 #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
5849 typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
5851 ], [])[extern int _nl_msg_cat_cntr;
5856 const char *_nl_expand_alias ();],
5857 [bindtextdomain ("", "");
5858 return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)],
5859 [LIBINTL="$LIBINTL $LIBICONV"
5860 LTLIBINTL="$LTLIBINTL $LTLIBICONV"
5861 gt_cv_func_gnugettext_libintl=yes
5864 CPPFLAGS="$gt_save_CPPFLAGS"
5865 LIBS="$gt_save_LIBS"])
5868 dnl If an already present or preinstalled GNU gettext() is found,
5869 dnl use it. But if this macro is used in GNU gettext, and GNU
5870 dnl gettext is already preinstalled in libintl, we update this
5871 dnl libintl. (Cf. the install rule in intl/Makefile.in.)
5872 if test "$gt_cv_func_gnugettext_libc" = "yes" \
5873 || { test "$gt_cv_func_gnugettext_libintl" = "yes" \
5874 && test "$PACKAGE" != gettext; }; then
5875 gt_use_preinstalled_gnugettext=yes
5877 dnl Reset the values set by searching for libintl.
5883 ifelse(gt_included_intl, yes, [
5884 if test "$gt_use_preinstalled_gnugettext" != "yes"; then
5885 dnl GNU gettext is not found in the C library.
5886 dnl Fall back on included GNU gettext library.
5887 nls_cv_use_gnu_gettext=yes
5891 if test "$nls_cv_use_gnu_gettext" = "yes"; then
5892 dnl Mark actions used to generate GNU NLS library.
5893 INTLOBJS="\$(GETTOBJS)"
5894 BUILD_INCLUDED_LIBINTL=yes
5895 USE_INCLUDED_LIBINTL=yes
5896 LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LIBICONV"
5897 LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LTLIBICONV"
5898 LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'`
5901 if test "$gt_use_preinstalled_gnugettext" = "yes" \
5902 || test "$nls_cv_use_gnu_gettext" = "yes"; then
5903 dnl Mark actions to use GNU gettext tools.
5908 if test "$gt_use_preinstalled_gnugettext" = "yes" \
5909 || test "$nls_cv_use_gnu_gettext" = "yes"; then
5910 AC_DEFINE(ENABLE_NLS, 1,
5911 [Define to 1 if translation of program messages to the user's native language
5918 if test "$USE_NLS" = "yes"; then
5920 if test "$gt_use_preinstalled_gnugettext" = "yes"; then
5921 if test "$gt_cv_func_gnugettext_libintl" = "yes"; then
5922 AC_MSG_CHECKING([how to link with libintl])
5923 AC_MSG_RESULT([$LIBINTL])
5924 AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCINTL])
5927 dnl For backward compatibility. Some packages may be using this.
5928 AC_DEFINE(HAVE_GETTEXT, 1,
5929 [Define if the GNU gettext() function is already present or preinstalled.])
5930 AC_DEFINE(HAVE_DCGETTEXT, 1,
5931 [Define if the GNU dcgettext() function is already present or preinstalled.])
5934 dnl We need to process the po/ directory.
5938 ifelse(gt_included_intl, yes, [
5939 dnl If this is used in GNU gettext we have to set BUILD_INCLUDED_LIBINTL
5940 dnl to 'yes' because some of the testsuite requires it.
5941 if test "$PACKAGE" = gettext; then
5942 BUILD_INCLUDED_LIBINTL=yes
5945 dnl Make all variables we use known to autoconf.
5946 AC_SUBST(BUILD_INCLUDED_LIBINTL)
5947 AC_SUBST(USE_INCLUDED_LIBINTL)
5951 dnl For backward compatibility. Some configure.ins may be using this.
5953 nls_cv_header_libgt=
5955 dnl For backward compatibility. Some Makefiles may be using this.
5957 AC_SUBST(DATADIRNAME)
5959 dnl For backward compatibility. Some Makefiles may be using this.
5961 AC_SUBST(INSTOBJEXT)
5963 dnl For backward compatibility. Some Makefiles may be using this.
5967 dnl Enable libtool support if the surrounding package wishes it.
5968 INTL_LIBTOOL_SUFFIX_PREFIX=gt_libtool_suffix_prefix
5969 AC_SUBST(INTL_LIBTOOL_SUFFIX_PREFIX)
5972 dnl For backward compatibility. Some Makefiles may be using this.
5976 dnl Make all documented variables known to autoconf.
5983 dnl Checks for all prerequisites of the po subdirectory,
5984 dnl except for USE_NLS.
5985 AC_DEFUN([AM_PO_SUBDIRS],
5987 AC_REQUIRE([AC_PROG_MAKE_SET])dnl
5988 AC_REQUIRE([AC_PROG_INSTALL])dnl
5989 AC_REQUIRE([AM_MKINSTALLDIRS])dnl
5991 dnl Perform the following tests also if --disable-nls has been given,
5992 dnl because they are needed for "make dist" to work.
5994 dnl Search for GNU msgfmt in the PATH.
5995 dnl The first test excludes Solaris msgfmt and early GNU msgfmt versions.
5996 dnl The second test excludes FreeBSD msgfmt.
5997 AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
5998 [$ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 &&
5999 (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)],
6001 AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
6003 dnl Search for GNU xgettext 0.11 or newer in the PATH.
6004 dnl The first test excludes Solaris xgettext and early GNU xgettext versions.
6005 dnl The second test excludes FreeBSD xgettext.
6006 AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
6007 [$ac_dir/$ac_word --omit-header --copyright-holder= /dev/null >/dev/null 2>&1 &&
6008 (if $ac_dir/$ac_word --omit-header --copyright-holder= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)],
6010 dnl Remove leftover from FreeBSD xgettext call.
6013 dnl Search for GNU msgmerge 0.11 or newer in the PATH.
6014 AM_PATH_PROG_WITH_TEST(MSGMERGE, msgmerge,
6015 [$ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1], :)
6017 dnl This could go away some day; the PATH_PROG_WITH_TEST already does it.
6018 dnl Test whether we really found GNU msgfmt.
6019 if test "$GMSGFMT" != ":"; then
6020 dnl If it is no GNU msgfmt we define it as : so that the
6021 dnl Makefiles still can work.
6022 if $GMSGFMT --statistics /dev/null >/dev/null 2>&1 &&
6023 (if $GMSGFMT --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
6026 GMSGFMT=`echo "$GMSGFMT" | sed -e 's,^.*/,,'`
6028 [found $GMSGFMT program is not GNU msgfmt; ignore it])
6033 dnl This could go away some day; the PATH_PROG_WITH_TEST already does it.
6034 dnl Test whether we really found GNU xgettext.
6035 if test "$XGETTEXT" != ":"; then
6036 dnl If it is no GNU xgettext we define it as : so that the
6037 dnl Makefiles still can work.
6038 if $XGETTEXT --omit-header --copyright-holder= /dev/null >/dev/null 2>&1 &&
6039 (if $XGETTEXT --omit-header --copyright-holder= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
6043 [found xgettext program is not GNU xgettext; ignore it])
6046 dnl Remove leftover from FreeBSD xgettext call.
6050 AC_OUTPUT_COMMANDS([
6051 for ac_file in $CONFIG_FILES; do
6052 # Support "outfile[:infile[:infile...]]"
6054 *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
6056 # PO directories have a Makefile.in generated from Makefile.in.in.
6057 case "$ac_file" in */Makefile.in)
6058 # Adjust a relative srcdir.
6059 ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
6060 ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`"
6061 ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
6062 # In autoconf-2.13 it is called $ac_given_srcdir.
6063 # In autoconf-2.50 it is called $srcdir.
6064 test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir"
6065 case "$ac_given_srcdir" in
6066 .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;;
6067 /*) top_srcdir="$ac_given_srcdir" ;;
6068 *) top_srcdir="$ac_dots$ac_given_srcdir" ;;
6070 if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then
6071 rm -f "$ac_dir/POTFILES"
6072 test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES"
6073 cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ]*\$/d" -e "s,.*, $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES"
6074 # ALL_LINGUAS, POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES depend
6075 # on $ac_dir but don't depend on user-specified configuration
6077 if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then
6078 # The LINGUAS file contains the set of available languages.
6079 if test -n "$ALL_LINGUAS"; then
6080 test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete"
6082 ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"`
6083 # Hide the ALL_LINGUAS assigment from automake.
6084 eval 'ALL_LINGUAS''=$ALL_LINGUAS_'
6086 case "$ac_given_srcdir" in
6088 *) srcdirpre='$(srcdir)/' ;;
6094 for lang in $ALL_LINGUAS; do
6095 POFILES="$POFILES $srcdirpre$lang.po"
6096 GMOFILES="$GMOFILES $srcdirpre$lang.gmo"
6097 UPDATEPOFILES="$UPDATEPOFILES $lang.po-update"
6098 DUMMYPOFILES="$DUMMYPOFILES $lang.nop"
6100 # CATALOGS depends on both $ac_dir and the user's LINGUAS
6101 # environment variable.
6103 if test -n "$ALL_LINGUAS"; then
6104 for presentlang in $ALL_LINGUAS; do
6106 if test "%UNSET%" != "$LINGUAS"; then
6107 desiredlanguages="$LINGUAS"
6109 desiredlanguages="$ALL_LINGUAS"
6111 for desiredlang in $desiredlanguages; do
6112 # Use the presentlang catalog if desiredlang is
6113 # a. equal to presentlang, or
6114 # b. a variant of presentlang (because in this case,
6115 # presentlang can be used as a fallback for messages
6116 # which are not translated in the desiredlang catalog).
6117 case "$desiredlang" in
6118 "$presentlang"*) useit=yes;;
6121 if test $useit = yes; then
6122 INST_LINGUAS="$INST_LINGUAS $presentlang"
6127 if test -n "$INST_LINGUAS"; then
6128 for lang in $INST_LINGUAS; do
6129 CATALOGS="$CATALOGS $lang.gmo"
6132 test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile"
6133 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" "$ac_dir/Makefile.in" > "$ac_dir/Makefile"
6134 for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do
6135 if test -f "$f"; then
6137 *.orig | *.bak | *~) ;;
6138 *) cat "$f" >> "$ac_dir/Makefile" ;;
6146 [# Capture the value of obsolete ALL_LINGUAS because we need it to compute
6147 # POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES, CATALOGS. But hide it
6149 eval 'ALL_LINGUAS''="$ALL_LINGUAS"'
6150 # Capture the value of LINGUAS because we need it to compute CATALOGS.
6151 LINGUAS="${LINGUAS-%UNSET%}"
6156 dnl Checks for all prerequisites of the intl subdirectory,
6157 dnl except for INTL_LIBTOOL_SUFFIX_PREFIX (and possibly LIBTOOL), INTLOBJS,
6158 dnl USE_INCLUDED_LIBINTL, BUILD_INCLUDED_LIBINTL.
6159 AC_DEFUN([AM_INTL_SUBDIR],
6161 AC_REQUIRE([AC_PROG_INSTALL])dnl
6162 AC_REQUIRE([AM_MKINSTALLDIRS])dnl
6163 AC_REQUIRE([AC_PROG_CC])dnl
6164 AC_REQUIRE([AC_CANONICAL_HOST])dnl
6165 AC_REQUIRE([AC_PROG_RANLIB])dnl
6166 AC_REQUIRE([AC_ISC_POSIX])dnl
6167 AC_REQUIRE([AC_HEADER_STDC])dnl
6168 AC_REQUIRE([AC_C_CONST])dnl
6169 AC_REQUIRE([AC_C_INLINE])dnl
6170 AC_REQUIRE([AC_TYPE_OFF_T])dnl
6171 AC_REQUIRE([AC_TYPE_SIZE_T])dnl
6172 AC_REQUIRE([AC_FUNC_ALLOCA])dnl
6173 AC_REQUIRE([AC_FUNC_MMAP])dnl
6174 AC_REQUIRE([jm_GLIBC21])dnl
6175 AC_REQUIRE([gt_INTDIV0])dnl
6176 AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])dnl
6177 AC_REQUIRE([gt_INTTYPES_PRI])dnl
6179 AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h stddef.h \
6180 stdlib.h string.h unistd.h sys/param.h])
6181 AC_CHECK_FUNCS([feof_unlocked fgets_unlocked getc_unlocked getcwd getegid \
6182 geteuid getgid getuid mempcpy munmap putenv setenv setlocale stpcpy \
6183 strcasecmp strdup strtoul tsearch __argz_count __argz_stringify __argz_next])
6187 if test $ac_cv_header_locale_h = yes; then
6191 dnl intl/plural.c is generated from intl/plural.y. It requires bison,
6192 dnl because plural.y uses bison specific features. It requires at least
6193 dnl bison-1.26 because earlier versions generate a plural.c that doesn't
6195 dnl bison is only needed for the maintainer (who touches plural.y). But in
6196 dnl order to avoid separate Makefiles or --enable-maintainer-mode, we put
6197 dnl the rule in general Makefile. Now, some people carelessly touch the
6198 dnl files or have a broken "make" program, hence the plural.c rule will
6199 dnl sometimes fire. To avoid an error, defines BISON to ":" if it is not
6200 dnl present or too old.
6201 AC_CHECK_PROGS([INTLBISON], [bison])
6202 if test -z "$INTLBISON"; then
6205 dnl Found it, now check the version.
6206 AC_MSG_CHECKING([version of bison])
6207 changequote(<<,>>)dnl
6208 ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
6209 case $ac_prog_version in
6210 '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
6211 1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*)
6213 ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
6214 *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
6216 AC_MSG_RESULT([$ac_prog_version])
6218 if test $ac_verc_fail = yes; then
6224 AC_DEFUN([AM_MKINSTALLDIRS],
6226 dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
6227 dnl find the mkinstalldirs script in another subdir but $(top_srcdir).
6228 dnl Try to locate is.
6230 if test -n "$ac_aux_dir"; then
6231 MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
6233 if test -z "$MKINSTALLDIRS"; then
6234 MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
6236 AC_SUBST(MKINSTALLDIRS)
6240 dnl Usage: AM_GNU_GETTEXT_VERSION([gettext-version])
6241 AC_DEFUN([AM_GNU_GETTEXT_VERSION], [])
6243 # progtest.m4 serial 2 (gettext-0.10.40)
6244 dnl Copyright (C) 1996-2002 Free Software Foundation, Inc.
6245 dnl This file is free software, distributed under the terms of the GNU
6246 dnl General Public License. As a special exception to the GNU General
6247 dnl Public License, this file may be distributed as part of a program
6248 dnl that contains a configuration script generated by Autoconf, under
6249 dnl the same distribution terms as the rest of that program.
6251 dnl This file can can be used in projects which are not available under
6252 dnl the GNU General Public License or the GNU Library General Public
6253 dnl License but which still want to provide support for the GNU gettext
6255 dnl Please note that the actual code of the GNU gettext library is covered
6256 dnl by the GNU Library General Public License, and the rest of the GNU
6257 dnl gettext package package is covered by the GNU General Public License.
6258 dnl They are *not* in the public domain.
6261 dnl Ulrich Drepper <drepper@cygnus.com>, 1996.
6263 # Search path for a program which passes the given test.
6265 dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
6266 dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
6267 AC_DEFUN([AM_PATH_PROG_WITH_TEST],
6268 [# Extract the first word of "$2", so it can be a program name with args.
6269 set dummy $2; ac_word=[$]2
6270 AC_MSG_CHECKING([for $ac_word])
6271 AC_CACHE_VAL(ac_cv_path_$1,
6274 ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
6277 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
6278 for ac_dir in ifelse([$5], , $PATH, [$5]); do
6279 test -z "$ac_dir" && ac_dir=.
6280 if test -f $ac_dir/$ac_word; then
6282 ac_cv_path_$1="$ac_dir/$ac_word"
6288 dnl If no 4th arg is given, leave the cache variable unset,
6289 dnl so AC_PATH_PROGS will keep looking.
6290 ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
6295 if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then
6296 AC_MSG_RESULT([$]$1)
6303 # intdiv0.m4 serial 1 (gettext-0.11.3)
6304 dnl Copyright (C) 2002 Free Software Foundation, Inc.
6305 dnl This file is free software, distributed under the terms of the GNU
6306 dnl General Public License. As a special exception to the GNU General
6307 dnl Public License, this file may be distributed as part of a program
6308 dnl that contains a configuration script generated by Autoconf, under
6309 dnl the same distribution terms as the rest of that program.
6311 dnl From Bruno Haible.
6313 AC_DEFUN([gt_INTDIV0],
6315 AC_REQUIRE([AC_PROG_CC])dnl
6316 AC_REQUIRE([AC_CANONICAL_HOST])dnl
6318 AC_CACHE_CHECK([whether integer division by zero raises SIGFPE],
6319 gt_cv_int_divbyzero_sigfpe,
6327 sigfpe_handler (int sig)
6329 sigfpe_handler (sig) int sig;
6332 /* Exit with code 0 if SIGFPE, with code 1 if any other signal. */
6333 exit (sig != SIGFPE);
6343 signal (SIGFPE, sigfpe_handler);
6344 /* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP. */
6345 #if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP)
6346 signal (SIGTRAP, sigfpe_handler);
6348 /* Linux/SPARC yields signal SIGILL. */
6349 #if defined (__sparc__) && defined (__linux__)
6350 signal (SIGILL, sigfpe_handler);
6357 ], gt_cv_int_divbyzero_sigfpe=yes, gt_cv_int_divbyzero_sigfpe=no,
6359 # Guess based on the CPU.
6361 alpha* | i[34567]86 | m68k | s390*)
6362 gt_cv_int_divbyzero_sigfpe="guessing yes";;
6364 gt_cv_int_divbyzero_sigfpe="guessing no";;
6368 case "$gt_cv_int_divbyzero_sigfpe" in
6372 AC_DEFINE_UNQUOTED(INTDIV0_RAISES_SIGFPE, $value,
6373 [Define if integer division by zero raises signal SIGFPE.])
6376 # lcmessage.m4 serial 3 (gettext-0.11.3)
6377 dnl Copyright (C) 1995-2002 Free Software Foundation, Inc.
6378 dnl This file is free software, distributed under the terms of the GNU
6379 dnl General Public License. As a special exception to the GNU General
6380 dnl Public License, this file may be distributed as part of a program
6381 dnl that contains a configuration script generated by Autoconf, under
6382 dnl the same distribution terms as the rest of that program.
6384 dnl This file can can be used in projects which are not available under
6385 dnl the GNU General Public License or the GNU Library General Public
6386 dnl License but which still want to provide support for the GNU gettext
6388 dnl Please note that the actual code of the GNU gettext library is covered
6389 dnl by the GNU Library General Public License, and the rest of the GNU
6390 dnl gettext package package is covered by the GNU General Public License.
6391 dnl They are *not* in the public domain.
6394 dnl Ulrich Drepper <drepper@cygnus.com>, 1995.
6396 # Check whether LC_MESSAGES is available in <locale.h>.
6398 AC_DEFUN([AM_LC_MESSAGES],
6400 AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
6401 [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
6402 am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
6403 if test $am_cv_val_LC_MESSAGES = yes; then
6404 AC_DEFINE(HAVE_LC_MESSAGES, 1,
6405 [Define if your <locale.h> file defines LC_MESSAGES.])