# generated automatically by aclocal 1.9.6 -*- Autoconf -*-

# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
# 2005  Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.

m4_include([../config/codeset.m4])
m4_include([../config/gettext.m4])
m4_include([../config/glibc21.m4])
m4_include([../config/iconv.m4])
m4_include([../config/intdiv0.m4])
m4_include([../config/inttypes-pri.m4])
m4_include([../config/inttypes.m4])
m4_include([../config/inttypes_h.m4])
m4_include([../config/lcmessage.m4])
m4_include([../config/lib-ld.m4])
m4_include([../config/lib-link.m4])
m4_include([../config/lib-prefix.m4])
m4_include([../config/nls.m4])
m4_include([../config/override.m4])
m4_include([../config/po.m4])
m4_include([../config/proginstall.m4])
m4_include([../config/progtest.m4])
m4_include([../config/stdint_h.m4])
m4_include([../config/uintmax_t.m4])
m4_include([../config/ulonglong.m4])
