annotate m4/iconv.m4 @ 358:70075730e187 trunk

[svn] Checking path for NULL wont work in the for() loop, so we have to check elsewhere. It'd be nice if file managers would all obey the same standard.
author nenolod
date Fri, 30 Dec 2005 14:17:35 -0800
parents cb178e5ad177
children 2df5e83c9bf4
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
1 # iconv.m4 serial AM4 (gettext-0.11.3)
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
2 dnl Copyright (C) 2000-2002 Free Software Foundation, Inc.
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
3 dnl This file is free software, distributed under the terms of the GNU
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
4 dnl General Public License. As a special exception to the GNU General
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
5 dnl Public License, this file may be distributed as part of a program
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
6 dnl that contains a configuration script generated by Autoconf, under
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
7 dnl the same distribution terms as the rest of that program.
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
8
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
9 dnl From Bruno Haible.
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
10
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
11 AC_DEFUN([AM_ICONV_LINKFLAGS_BODY],
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
12 [
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
13 dnl Prerequisites of AC_LIB_LINKFLAGS_BODY.
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
14 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
15 AC_REQUIRE([AC_LIB_RPATH])
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
16
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
17 dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
18 dnl accordingly.
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
19 AC_LIB_LINKFLAGS_BODY([iconv])
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
20 ])
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
21
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
22 AC_DEFUN([AM_ICONV_LINK],
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
23 [
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
24 dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
25 dnl those with the standalone portable GNU libiconv installed).
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
26
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
27 dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
28 dnl accordingly.
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
29 AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
30
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
31 dnl Add $INCICONV to CPPFLAGS before performing the following checks,
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
32 dnl because if the user has installed libiconv and not disabled its use
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
33 dnl via --without-libiconv-prefix, he wants to use it. The first
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
34 dnl AC_TRY_LINK will then fail, the second AC_TRY_LINK will succeed.
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
35 am_save_CPPFLAGS="$CPPFLAGS"
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
36 AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV])
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
37
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
38 AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
39 am_cv_func_iconv="no, consider installing GNU libiconv"
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
40 am_cv_lib_iconv=no
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
41 AC_TRY_LINK([#include <stdlib.h>
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
42 #include <iconv.h>],
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
43 [iconv_t cd = iconv_open("","");
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
44 iconv(cd,NULL,NULL,NULL,NULL);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
45 iconv_close(cd);],
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
46 am_cv_func_iconv=yes)
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
47 if test "$am_cv_func_iconv" != yes; then
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
48 am_save_LIBS="$LIBS"
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
49 LIBS="$LIBS $LIBICONV"
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
50 AC_TRY_LINK([#include <stdlib.h>
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
51 #include <iconv.h>],
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
52 [iconv_t cd = iconv_open("","");
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
53 iconv(cd,NULL,NULL,NULL,NULL);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
54 iconv_close(cd);],
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
55 am_cv_lib_iconv=yes
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
56 am_cv_func_iconv=yes)
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
57 LIBS="$am_save_LIBS"
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
58 fi
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
59 ])
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
60 if test "$am_cv_func_iconv" = yes; then
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
61 AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.])
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
62 fi
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
63 if test "$am_cv_lib_iconv" = yes; then
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
64 AC_MSG_CHECKING([how to link with libiconv])
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
65 AC_MSG_RESULT([$LIBICONV])
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
66 else
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
67 dnl If $LIBICONV didn't lead to a usable library, we don't need $INCICONV
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
68 dnl either.
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
69 CPPFLAGS="$am_save_CPPFLAGS"
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
70 LIBICONV=
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
71 LTLIBICONV=
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
72 fi
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
73 AC_SUBST(LIBICONV)
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
74 AC_SUBST(LTLIBICONV)
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
75 ])
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
76
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
77 AC_DEFUN([AM_ICONV],
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
78 [
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
79 AM_ICONV_LINK
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
80 if test "$am_cv_func_iconv" = yes; then
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
81 AC_MSG_CHECKING([for iconv declaration])
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
82 AC_CACHE_VAL(am_cv_proto_iconv, [
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
83 AC_TRY_COMPILE([
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
84 #include <stdlib.h>
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
85 #include <iconv.h>
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
86 extern
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
87 #ifdef __cplusplus
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
88 "C"
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
89 #endif
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
90 #if defined(__STDC__) || defined(__cplusplus)
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
91 size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
92 #else
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
93 size_t iconv();
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
94 #endif
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
95 ], [], am_cv_proto_iconv_arg1="", am_cv_proto_iconv_arg1="const")
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
96 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);"])
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
97 am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
98 AC_MSG_RESULT([$]{ac_t:-
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
99 }[$]am_cv_proto_iconv)
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
100 AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1,
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
101 [Define as const if the declaration of iconv() needs const.])
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
102 fi
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
103 ])