Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / third_party / talloc / libreplace / system / iconv.h
blob3c8a71f2f7ba09fffa3ba7e007283bdf2a1c6013
1 #ifndef _system_iconv_h
2 #define _system_iconv_h
3 /*
4 Unix SMB/CIFS implementation.
6 iconv memory system include wrappers
8 Copyright (C) Andrew Tridgell 2004
10 ** NOTE! The following LGPL license applies to the replace
11 ** library. This does NOT imply that all of Samba is released
12 ** under the LGPL
14 This library is free software; you can redistribute it and/or
15 modify it under the terms of the GNU Lesser General Public
16 License as published by the Free Software Foundation; either
17 version 3 of the License, or (at your option) any later version.
19 This library is distributed in the hope that it will be useful,
20 but WITHOUT ANY WARRANTY; without even the implied warranty of
21 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22 Lesser General Public License for more details.
24 You should have received a copy of the GNU Lesser General Public
25 License along with this library; if not, see <http://www.gnu.org/licenses/>.
29 #if !defined(HAVE_ICONV) && defined(HAVE_ICONV_H)
30 #define HAVE_ICONV
31 #endif
33 #if !defined(HAVE_GICONV) && defined(HAVE_GICONV_H)
34 #define HAVE_GICONV
35 #endif
37 #if !defined(HAVE_BICONV) && defined(HAVE_BICONV_H)
38 #define HAVE_BICONV
39 #endif
41 #ifdef HAVE_NATIVE_ICONV
42 #if defined(HAVE_ICONV)
43 #include <iconv.h>
44 #elif defined(HAVE_GICONV)
45 #include <giconv.h>
46 #elif defined(HAVE_BICONV)
47 #include <biconv.h>
48 #endif
49 #endif /* HAVE_NATIVE_ICONV */
51 /* needed for some systems without iconv. Doesn't really matter
52 what error code we use */
53 #ifndef EILSEQ
54 #define EILSEQ EIO
55 #endif
57 #endif