# @configure_input@
# From $Id$.
# Don't edit this file.  Put configuration parameters in configparms instead.

version = @VERSION@
release = @RELEASE@

# Installation prefixes.
install_root =
prefix = @prefix@
exec_prefix = @exec_prefix@
slibdir = @libc_cv_slibdir@
sysconfdir = @libc_cv_sysconfdir@
libexecdir = @libexecdir@
rootsbindir = @libc_cv_rootsbindir@

# If ldconfig exists.  This will go away as soon as `ldconfig' is available
# in GNU libc.
has-ldconfig = @has_ldconfig@

# Maybe the `ldd' script must be rewritten.
ldd-rewrite-script = @ldd_rewrite_script@

# System configuration.
config-machine = @host_cpu@
base-machine = @base_machine@
config-vendor = @host_vendor@
config-os = @host_os@
config-sysdirs = @sysnames@

defines = @DEFINES@
sysincludes = @SYSINCLUDES@

elf = @elf@
have-initfini = @libc_cv_have_initfini@
need-nopic-initfini = @nopic_initfini@
with-cvs = @with_cvs@
old-glibc-headers = @old_glibc_headers@

versioning = @VERSIONING@
no-whole-archive = @no_whole_archive@
exceptions = @exceptions@

have-bash2 = @libc_cv_have_bash2@
have-ksh = @libc_cv_have_ksh@

# Configuration options.
gnu-as = @gnu_as@
gnu-ld = @gnu_ld@
build-static = @static@
build-shared = @shared@
build-pic-default= @pic_default@
build-profile = @profile@
build-omitfp = @omitfp@
build-bounded = @bounded@
build-static-nss = @static_nss@
stdio = @stdio@
add-ons = @subdirs@
cross-compiling = @cross_compiling@
force-install = @force_install@

# Build tools.
CC = @CC@
BUILD_CC = @BUILD_CC@
CFLAGS = @CFLAGS@
AR = @AR@
RANLIB = @RANLIB@
MAKEINFO = @MAKEINFO@
AS = $(CC) -c
MIG = @MIG@

# Installation tools.
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
LN_S = @LN_S@
MSGFMT = @MSGFMT@

# Script execution tools.
BASH = @BASH@
KSH = @KSH@
AWK = @AWK@
PERL = @PERL@

# More variables may be inserted below by configure.
