Build dlopenable modules with `-module'.
[bpt/guile.git] / lib / locale.in.h
CommitLineData
414e4441 1/* A POSIX <locale.h>.
61cd9dc9 2 Copyright (C) 2007-2010 Free Software Foundation, Inc.
414e4441
LC
3
4 This program is free software: you can redistribute it and/or modify
5 it under the terms of the GNU Lesser General Public License as published by
6 the Free Software Foundation; either version 3 of the License, or
7 (at your option) any later version.
8
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU Lesser General Public License for more details.
13
14 You should have received a copy of the GNU Lesser General Public License
15 along with this program. If not, see <http://www.gnu.org/licenses/>. */
16
17#ifndef _GL_LOCALE_H
18
19#if __GNUC__ >= 3
20@PRAGMA_SYSTEM_HEADER@
21#endif
22
23/* The include_next requires a split double-inclusion guard. */
24#@INCLUDE_NEXT@ @NEXT_LOCALE_H@
25
26#ifndef _GL_LOCALE_H
27#define _GL_LOCALE_H
28
29/* NetBSD 5.0 mis-defines NULL. */
30#include <stddef.h>
31
32/* MacOS X 10.5 defines the locale_t type in <xlocale.h>. */
33#if @HAVE_XLOCALE_H@
34# include <xlocale.h>
35#endif
36
f4c79b3c
LC
37/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */
38
1cd4fffc
LC
39/* The definition of _GL_ARG_NONNULL is copied here. */
40
61cd9dc9
LC
41/* The definition of _GL_WARN_ON_USE is copied here. */
42
414e4441
LC
43/* The LC_MESSAGES locale category is specified in POSIX, but not in ISO C.
44 On systems that don't define it, use the same value as GNU libintl. */
45#if !defined LC_MESSAGES
46# define LC_MESSAGES 1729
47#endif
48
49#if @GNULIB_DUPLOCALE@
50# if @REPLACE_DUPLOCALE@
f4c79b3c
LC
51# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
52# undef duplocale
53# define duplocale rpl_duplocale
54# endif
55_GL_FUNCDECL_RPL (duplocale, locale_t, (locale_t locale) _GL_ARG_NONNULL ((1)));
56_GL_CXXALIAS_RPL (duplocale, locale_t, (locale_t locale));
57# else
58# if @HAVE_DUPLOCALE@
59_GL_CXXALIAS_SYS (duplocale, locale_t, (locale_t locale));
60# endif
414e4441 61# endif
a927b6c1 62# if @HAVE_DUPLOCALE@
f4c79b3c 63_GL_CXXALIASWARN (duplocale);
a927b6c1 64# endif
414e4441
LC
65#elif defined GNULIB_POSIXCHECK
66# undef duplocale
61cd9dc9
LC
67# if HAVE_RAW_DECL_DUPLOCALE
68_GL_WARN_ON_USE (duplocale, "duplocale is buggy on some glibc systems - "
69 "use gnulib module duplocale for portability");
70# endif
414e4441
LC
71#endif
72
73#endif /* _GL_LOCALE_H */
74#endif /* _GL_LOCALE_H */