etc/services - sync with NetBSD-8
[minix.git] / external / bsd / bind / dist / contrib / idn / idnkit-1.0-src / configure.in
blob0b6c2a4aa2f25a6a719aee253e0d02312dd3852a
1 dnl Id: configure.in,v 1.1 2003/06/04 00:25:25 marka Exp 
2 dnl Process this file with autoconf to produce a configure script.
3 dnl
4 dnl Copyright (c) 2000 Japan Network Information Center.  All rights reserved.
5 dnl  
6 dnl By using this file, you agree to the terms and conditions set forth bellow.
7 dnl 
8 dnl                     LICENSE TERMS AND CONDITIONS 
9 dnl 
10 dnl The following License Terms and Conditions apply, unless a different
11 dnl license is obtained from Japan Network Information Center ("JPNIC"),
12 dnl a Japanese association, Kokusai-Kougyou-Kanda Bldg 6F, 2-3-4 Uchi-Kanda,
13 dnl Chiyoda-ku, Tokyo 101-0047, Japan.
14 dnl 
15 dnl 1. Use, Modification and Redistribution (including distribution of any
16 dnl    modified or derived work) in source and/or binary forms is permitted
17 dnl    under this License Terms and Conditions.
18 dnl 
19 dnl 2. Redistribution of source code must retain the copyright notices as they
20 dnl    appear in each source code file, this License Terms and Conditions.
21 dnl 
22 dnl 3. Redistribution in binary form must reproduce the Copyright Notice,
23 dnl    this License Terms and Conditions, in the documentation and/or other
24 dnl    materials provided with the distribution.  For the purposes of binary
25 dnl    distribution the "Copyright Notice" refers to the following language:
26 dnl    "Copyright (c) 2000-2002 Japan Network Information Center.  All rights reserved."
27 dnl 
28 dnl 4. The name of JPNIC may not be used to endorse or promote products
29 dnl    derived from this Software without specific prior written approval of
30 dnl    JPNIC.
31 dnl 
32 dnl 5. Disclaimer/Limitation of Liability: THIS SOFTWARE IS PROVIDED BY JPNIC
33 dnl    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
34 dnl    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
35 dnl    PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL JPNIC BE LIABLE
36 dnl    FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
37 dnl    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
38 dnl    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
39 dnl    BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
40 dnl    WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
41 dnl    OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
42 dnl    ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
44 AC_INIT(include/idn/converter.h)
46 AC_CANONICAL_HOST
48 debug=no
49 AC_ARG_ENABLE(debug,
50 [  --enable-debug          enable debug codes [default=no]],
51         debug=$enableval)
52 case "$debug" in
53 yes)
54     CFLAGS="$CFLAGS -DDEBUG"
55     ;;
56 esac
58 mdnkit_compat=no
59 COMPAT_TRUE="#"
60 COMPAT_FALSE=
61 AC_ARG_ENABLE(mdnkit-compat,
62 [  --enable-mdnkit-compat  enable mDNkit compatibility mode [default=no]],
63         mdnkit_compat=$enableval)
64 case "$mdnkit_compat" in
65 yes)
66     COMPAT_TRUE=
67     COMPAT_FALSE="#"
68     AC_DEFINE(ENABLE_MDNKIT_COMPAT, 1,
69         [Define if --enable-mdnkit-compat is specified])
70     ;;
71 no)
72     ;;
74     AC_MSG_ERROR([You must specify yes or no to --enable-runidn option.])
75     ;;
76 esac
77 AC_SUBST(COMPAT_TRUE)
78 AC_SUBST(COMPAT_FALSE)
80 extraace=no
81 AC_ARG_ENABLE(extra-ace,
82 [  --enable-extra-ace      enable additional ACE converters. [default=no]],
83         extraace=$enableval)
84 case "$extraace" in
85 no)
86     ;;
87 yes)
88     AC_DEFINE(IDN_EXTRA_ACE, 1,
89         [Define if you want additional ACE converters compiled in.])
90     ;;
92     AC_MSG_ERROR([You must specify yes or no to --enable-extra-ace option.])
93     ;;
94 esac
96 UTF8_NAME=no
97 AC_ARG_WITH(utf8,
98 [  --with-utf8=NAME        codeset name for UTF-8 encoding [UTF-8]],
99         UTF8_NAME=$withval)
100 case "$UTF8_NAME" in
102     UTF8_NAME=UTF-8
103     ;;
104 yes)
105     AC_MSG_ERROR([You must specify NAME to --with-utf8 option.])
106     ;;
108     AC_DEFINE_UNQUOTED(IDN_UTF8_ENCODING_NAME, "$UTF8_NAME",
109         [Define if your iconv() does not accept "UTF-8" as the codeset name for utf-8.])
110     ;;
111 esac
112 AC_SUBST(UTF8_NAME)
114 liteonly=no
115 LITEONLY_TRUE="#"
116 LITEONLY_FALSE=
117 AC_ARG_ENABLE(liteonly,
118 [  --enable-liteonly       compile and install lite library only [default=no]],
119         liteonly=$enableval)
120 case "$liteonly" in
122     ;;
123 yes)
124     if test "$install_runidn" = yes ; then
125         AC_MSG_ERROR([you can't set value \"yes\" to --enable-runidn and --enable-liteonly simultaneously, because runidn requires iconv support of generic libidnkit.])
126     fi
127     LITEONLY_TRUE=
128     LITEONLY_FALSE="#"
129     ;;
131     AC_MSG_ERROR([You must specify yes or no to --enable-liteonly option.])
132     ;;
133 esac
134 AC_SUBST(LITEONLY_TRUE)
135 AC_SUBST(LITEONLY_FALSE)
137 install_runidn=no
138 RUNIDN_TRUE="#"
139 RUNIDN_FALSE=
140 AC_ARG_ENABLE(runidn,
141 [  --enable-runidn         compile and install runidn [default=no]],
142         install_runidn=$enableval)
143 case "$install_runidn" in
145     ;;
146 yes)
147     if test "$liteonly" = yes ; then
148         AC_MSG_ERROR([you can't set value \"yes\" to --enable-runidn and --enable-liteonly simultaneously, because runidn requires iconv support of generic libidnkit.])
149     fi
150     RUNIDN_TRUE=
151     RUNIDN_FALSE="#"
152     ;;
154     AC_MSG_ERROR([You must specify yes or no to --enable-runidn option.])
155     ;;
156 esac
157 AC_SUBST(RUNIDN_TRUE)
158 AC_SUBST(RUNIDN_FALSE)
160 ICONVINC=
161 ICONVLIB=
163 libiconv=unspec
164 AC_ARG_WITH(libiconv,
165 [  --with-libiconv=IPREFIX  GNU libiconv are installed in IPREFIX [PREFIX]],
166         libiconv=$withval)
167 case "$libiconv" in
168 unspec)
169     ;;
171     ICONVINC=
172     ICONVLIB=
173     ;;
174 yes)
175     if test "$liteonly" = yes ; then
176         AC_MSG_ERROR([you can't set iconv options at all when you set value \"yes\" to --enable-liteonly, because lite library does not have iconv support.])
177     fi
178     if test X$prefix = XNONE ; then
179         libiconv=$ac_default_prefix
180     else
181         libiconv=$prefix
182     fi
183     ICONVINC="-I$libiconv/include"
184     ICONVLIB="-L$libiconv/lib -R$libiconv/lib -liconv"
185     ;;
187     if test "$liteonly" = yes ; then
188         AC_MSG_ERROR([you can't set iconv options at all when you set value \"yes\" to --enable-liteonly, because lite library does not have iconv support.])
189     fi
190     ICONVINC="-I$libiconv/include"
191     ICONVLIB="-L$libiconv/lib -R$libiconv/lib -liconv"
192     ;;
193 esac
195 iconv_include=unspec
196 AC_ARG_WITH(iconv-include,
197 [  --with-iconv-include=DIR  iconv include files are in DIR []],
198         iconv_include=$withval)
199 case "$iconv_include" in
200 unspec)
201     ;;
203     ICONVINC=
204     ;;
205 yes)
206     if test "$liteonly" = yes ; then
207         AC_MSG_ERROR([you can't set iconv options at all when you set value \"yes\" to --enable-liteonly, because lite library does not have iconv support.])
208     fi
209     AC_MSG_WARN([You must supply DIR to --with-iconv-include option.
210   Ignored.])
211     ICONVINC=
212     ;;
214     if test "$liteonly" = yes ; then
215         AC_MSG_ERROR([you can't set iconv options at all when you set value \"yes\" to --enable-liteonly, because lite library does not have iconv support.])
216     fi
217     ICONVINC="-I$iconv_include"
218     ;;
219 esac
221 if test "X$ICONVINC" != X ; then
222     iconv_include="`echo X$ICONVINC | sed -e 's/^X-I//'`"
223     if test ! -f "$iconv_include/iconv.h" ; then
224         AC_MSG_ERROR([iconv.h doesn't exist in $iconv_include])
225     fi
228 AC_SUBST(ICONVINC)
230 iconv=unspec
231 AC_ARG_WITH(iconv,
232 [  --with-iconv=LIB        special library for iconv []],
233         iconv=$withval)
234 case "$iconv" in
235 unspec)
236     ;;
238     ICONVLIB=
239     ;;
240 yes)
241     if test "$liteonly" = yes ; then
242         AC_MSG_ERROR([you can't set iconv options at all when you set value \"yes\" to --enable-liteonly, because lite library does not have iconv support.])
243     fi
244     AC_MSG_WARN([You must supply LIB to --with-iconv option.
245   -liconv is assumed.])
246     ICONVLIB=-liconv
247     ;;
249     if test "$liteonly" = yes ; then
250         AC_MSG_ERROR([you can't set iconv options at all when you set value \"yes\" to --enable-liteonly, because lite library does not have iconv support.])
251     fi
252     ICONVLIB=$iconv
253     ;;
254 esac
255 AC_SUBST(ICONVLIB)
257 AC_ARG_WITH(iconv-sofile,
258 [  --with-iconv-sofile=PATH  shared library file for libiconv []],
259         iconv_file=$withval, iconv_file=guess)
260 ICONVSOFILE=
261 case "$iconv_file" in
263     ICONVSOFILE=none
264     ;;
265 yes)
266     if test "$liteonly" = yes ; then
267         AC_MSG_ERROR([you can't set iconv options at all when you set value \"yes\" to --enable-liteonly, because lite library does not have iconv support.])
268     fi
269     AC_MSG_ERROR([You must supply PATH to --with-iconv-sofile option.])
270     ;;
271 guess)
272     if test "$liteonly" != yes ; then
273         if test "$ICONVLIB" = ""; then
274             ICONVSOFILE=none
275         else
276             AC_MSG_CHECKING(pathname of iconv shared library)
277             ic_libdir=
278             ic_libname=
279             case "$host" in
280             *-hpux*)
281                 SO=sl
282                 ;;
283             *)
284                 SO=so
285                 ;;
286             esac
287             for arg in $ICONVLIB; do
288                 case "$arg" in
289                 -L*) ic_libdir="$ic_libdir `echo $arg | sed s/-L//`" ;;
290                 -l*) ic_libname=`echo $arg | sed s/-l//` ;;
291                 /*.$SO*) ICONVSOFILE=$arg ;;
292                 esac
293             done
294             if test "$ICONVSOFILE" = ""; then
295                 if test "$ic_libname" = ""; then
296                     AC_MSG_RESULT(unknown)
297                     AC_MSG_WARN([use --with-iconv-sofile for specifying iconv shared library file])
298                     ICONVSOFILE=none
299                 else
300                     if test "$ic_libdir" = ""; then
301                         # Standard (and semi-standard) library directories
302                         ic_libdir="/lib /usr/lib /usr/local/lib"
303                     fi
304                     for dir in $ic_libdir; do
305                         ICONVSOFILE=`ls -r $dir/lib$ic_libname.$SO* 2>/dev/null | head -1`
306                         if test "$ICONVSOFILE" != ""; then
307                             break
308                         fi
309                     done
310                     if test "$ICONVSOFILE" != ""; then
311                         AC_MSG_RESULT($ICONVSOFILE)
312                     else
313                         AC_MSG_RESULT(unknown)
314                         AC_MSG_WARN([use --with-iconv-sofile for specifying iconv shared library file])
315                         ICONVSOFILE=none
316                     fi
317                 fi
318             fi
319         fi
320     else
321         ICONVSOFILE=none
322     fi
323     ;;
325     if test "$liteonly" = yes ; then
326         AC_MSG_ERROR([you can't set iconv options at all when you set value \"yes\" to --enable-liteonly, because lite library does not have iconv support.])
327     fi
328     ICONVSOFILE=$iconv_file
329     ;;
330 esac
331 AC_SUBST(ICONVSOFILE)
333 dnl Figure out preload stuff.
334 PRELOAD_VAR="LD_PRELOAD"
335 PRELOAD_SEP=":"
336 PRELOAD_LAST=""
337 case "$host" in
338 *-solaris*)
339     PRELOAD_SEP=" "
340     ;;
341 *-linux*)
342     PRELOAD_SEP=" "
343     ;;
344 *-osf*)
345     PRELOAD_VAR="_RLD_LIST"
346     PRELOAD_LAST=":DEFAULT"
347     ;;
348 *-netbsd*)
349     if test -x /usr/bin/file -a -x /usr/bin/grep ; then
350         case "`/usr/bin/file /usr/bin/grep`" in
351         *ELF*)
352             PRELOAD_SEP=" "
353             ;;
354         esac
355     fi
356     ;;
357 esac
359 AC_SUBST(PRELOAD_VAR)
360 AC_SUBST(PRELOAD_SEP)
361 AC_SUBST(PRELOAD_LAST)
363 dnl Checks for standard tools.
364 AC_PROG_CC
365 AC_PROG_INSTALL
366 AM_PROG_LIBTOOL
368 AC_PATH_PROGS(PERL, perl, perl)
370 dnl Checks for header files.
371 AC_CHECK_HEADERS(unistd.h locale.h langinfo.h pwd.h)
372 if test "$install_runidn" = yes ; then
373     AC_CHECK_HEADERS(dlfcn.h)
376 saved_CPPFLAGS=$CPPFLAGS
377 CPPFLAGS="$CPPFLAGS $ICONVINC"
378 if test "$liteonly" != yes ; then
379     AC_CHECK_HEADER(iconv.h, , [AC_MSG_ERROR([iconv.h doesn't exist])])
381 CPPFLAGS=$saved_CPPFLAGS
383 dnl Checks for data types.
384 AC_TYPE_UID_T
385 dnl for dnsproxy.
386 AC_CHECK_TYPE(BOOL, int)
388 dnl Checks for libraries.
389 if test "$install_runidn" = yes ; then
390     AC_CHECK_LIB(socket, socket)
391     AC_CHECK_LIB(nsl, inet_addr)
392     AC_CHECK_LIB(dl, dlopen, [
393         LIBS="-ldl $LIBS"
394         LIBDL="-ldl"
395         AC_DEFINE(HAVE_LIBDL, 1, [Define if you have the dl library (-ldl).])
396         AC_SUBST(LIBDL)
397     ])
400 dnl Checks for library functions.
401 AC_CHECK_FUNCS(vsnprintf setvbuf setlocale nl_langinfo memmove bcopy setenv \
402     unsetenv)
403 if test "$install_runidn" = yes ; then
404     AC_CHECK_FUNCS(gethostbyname gethostbyname2 gethostbyaddr)
405     AC_CHECK_FUNCS(gethostbyname_r gethostbyname2_r gethostbyaddr_r, find_gethost_r=yes)
406     AC_CHECK_FUNCS(getipnodebyname getipnodebyaddr freehostent)
407     AC_CHECK_FUNCS(getaddrinfo freeaddrinfo getnameinfo)
408     AC_CHECK_FUNCS(dlopen dlsym)
411 if test "$install_runidn" = yes ; then
412 dnl Checks the flavor of gethostbyaddr* functions.
413     AC_CACHE_CHECK(flavor of gethostbyaddr, ac_cv_flavor_gethostbyaddr,
414     [ac_cv_flavor_gethostbyaddr=unknown
415     AC_TRY_RUN(
416     [
417     #include <stddef.h>
418     #include <sys/types.h>
419     #include <sys/socket.h>
420     #include <netdb.h>
421     struct hostent *gethostbyaddr(const void *addr, socklen_t len, int type) {
422         return NULL;
423     }
424     int main() {
425         (void)gethostbyaddr(NULL, 0, 0);
426         return 0;
427     }
428     ], ac_cv_flavor_gethostbyaddr=glibc2_2,,
429        ac_cv_flavor_gethostbyaddr=unknown)
430     AC_TRY_RUN(
431     [
432     #include <stddef.h>
433     #include <sys/types.h>
434     #include <sys/socket.h>
435     #include <netdb.h>
436     struct hostent *gethostbyaddr(const char *addr, size_t len, int type) {
437         return NULL;
438     }
439     int main() {
440         (void)gethostbyaddr(NULL, 0, 0);
441         return 0;
442     }
443     ], ac_cv_flavor_gethostbyaddr=glibc,,
444        ac_cv_flavor_gethostbyaddr=unknown)
445     AC_TRY_RUN(
446     [
447     #include <stddef.h>
448     #include <sys/types.h>
449     #include <sys/socket.h>
450     #include <netdb.h>
451     struct hostent *gethostbyaddr(const char *addr, int len, int type) {
452         return NULL;
453     }
454     int main() {
455         (void)gethostbyaddr(NULL, 0, 0);
456         return 0;
457     }
458     ], ac_cv_flavor_gethostbyaddr=traditional,,
459        ac_cv_flavor_gethostbyaddr=unknown)
460     if test "$ac_cv_func_gethostbyaddr" = no ; then
461         ac_cv_flavor_gethostbyaddr=none
462     fi])
464     case "$ac_cv_flavor_gethostbyaddr" in
465     glibc2_2)
466         ac_cv_type_ghba_addr_t='const void *'
467         ac_cv_type_ghba_addrlen_t='socklen_t'
468         ;;
469     glibc)
470         ac_cv_type_ghba_addr_t='const char *'
471         ac_cv_type_ghba_addrlen_t='size_t'
472         ;;
473     traditional | none)
474         ac_cv_type_ghba_addr_t='const char *'
475         ac_cv_type_ghba_addrlen_t='int'
476         ;;
477     *)
478         AC_MSG_ERROR([can't build runidn, since parameter type list of gethostbyaddr() is unknown to configure.])
479         ;;
480     esac
481     AC_DEFINE_UNQUOTED(GHBA_ADDR_T, $ac_cv_type_ghba_addr_t,
482         [Define as the type of the 1st argument of gethostbyaddr.])
483     AC_DEFINE_UNQUOTED(GHBA_ADDRLEN_T, $ac_cv_type_ghba_addrlen_t,
484         [Define as the type of the 2nd argument of gethostbyaddr.])
486 dnl Checks the flavor of getnameinfo functions.
487     AC_CACHE_CHECK(flavor of getnameinfo, ac_cv_flavor_getnameinfo,
488     [ac_cv_flavor_getnameinfo=unknown
489     AC_TRY_RUN(
490     [
491     #include <stddef.h>
492     #include <sys/types.h>
493     #include <sys/socket.h>
494     #include <netdb.h>
495     int getnameinfo(const struct sockaddr *sa, socklen_t salen, char *host,
496                     socklen_t hostlen, char *serv, socklen_t servlen,
497                     unsigned int flags) {
498         return NULL;
499     }
500     int main() {
501         (void)getnameinfo(NULL, 0, NULL, 0, NULL, 0, 0);
502         return 0;
503     }
504     ], ac_cv_flavor_getnameinfo=glibc2_2_2,,
505        ac_cv_flavor_getnameinfo=unknown)
506     AC_TRY_RUN(
507     [
508     #include <stddef.h>
509     #include <sys/types.h>
510     #include <sys/socket.h>
511     #include <netdb.h>
512     int getnameinfo(const struct sockaddr *sa, socklen_t salen, char *host,
513                     socklen_t hostlen, char *serv, socklen_t servlen,
514                     int flags) {
515         return NULL;
516     }
517     int main() {
518         (void)getnameinfo(NULL, 0, NULL, 0, NULL, 0, 0);
519         return 0;
520     }
521     ], ac_cv_flavor_getnameinfo=rfc2553bis_03,,
522        ac_cv_flavor_getnameinfo=unknown)
523     AC_TRY_RUN(
524     [
525     #include <stddef.h>
526     #include <sys/types.h>
527     #include <sys/socket.h>
528     #include <netdb.h>
529     int getnameinfo(const struct sockaddr *sa, socklen_t salen, char *host,
530                     size_t hostlen, char *serv, size_t servlen, int flags) {
531         return NULL;
532     }
533     int main() {
534         (void)getnameinfo(NULL, 0, NULL, 0, NULL, 0, 0);
535         return 0;
536     }
537     ], ac_cv_flavor_getnameinfo=rfc2553,,
538        ac_cv_flavor_getnameinfo=unknown)
539     AC_TRY_RUN(
540     [
541     #include <stddef.h>
542     #include <sys/types.h>
543     #include <sys/socket.h>
544     #include <netdb.h>
545     int getnameinfo(const struct sockaddr *sa, size_t salen, char *host,
546                     size_t hostlen, char *serv, size_t servlen, int flags) {
547         return NULL;
548     }
549     int main() {
550         (void)getnameinfo(NULL, 0, NULL, 0, NULL, 0, 0);
551         return 0;
552     }
553     ], ac_cv_flavor_getnameinfo=rfc2133,,
554        ac_cv_flavor_getnameinfo=unknown)
555     if test "$ac_cv_func_getnameinfo" = no ; then
556         ac_cv_flavor_getnameinfo=none
557     fi])
559     case "$ac_cv_flavor_getnameinfo" in
560     glibc2_2_2)
561         ac_cv_type_gni_salen_t='socklen_t'
562         ac_cv_type_gni_hostlen_t='socklen_t'
563         ac_cv_type_gni_servlen_t='socklen_t'
564         ac_cv_type_gni_flags_t='unsigned int'
565         ;;
566     rfc2553bis_03)
567         ac_cv_type_gni_salen_t='socklen_t'
568         ac_cv_type_gni_hostlen_t='socklen_t'
569         ac_cv_type_gni_servlen_t='socklen_t'
570         ac_cv_type_gni_flags_t='int'
571         ;;
572     rfc2553)
573         ac_cv_type_gni_salen_t='socklen_t'
574         ac_cv_type_gni_hostlen_t='size_t'
575         ac_cv_type_gni_servlen_t='size_t'
576         ac_cv_type_gni_flags_t='int'
577         ;;
578     rfc2133 | none)
579         ac_cv_type_gni_salen_t='size_t'
580         ac_cv_type_gni_hostlen_t='size_t'
581         ac_cv_type_gni_servlen_t='size_t'
582         ac_cv_type_gni_flags_t='int'
583         ;;
584     *)
585         AC_MSG_ERROR([can't build runidn, since parameter type list of getnameinfo() is unknown to configure.])
586     esac
587     AC_DEFINE_UNQUOTED(GNI_SALEN_T, $ac_cv_type_gni_salen_t,
588         [Define as the type of the 2nd argument of getnameinfo.])
589     AC_DEFINE_UNQUOTED(GNI_HOSTLEN_T, $ac_cv_type_gni_hostlen_t,
590         [Define as the type of the 4th argument of getnameinfo.])
591     AC_DEFINE_UNQUOTED(GNI_SERVLEN_T, $ac_cv_type_gni_servlen_t,
592         [Define as the type of the 6th argument of getnameinfo.])
593     AC_DEFINE_UNQUOTED(GNI_FLAGS_T, $ac_cv_type_gni_flags_t,
594         [Define as the type of the 7th argument of getnameinfo.])
597 dnl resume here.
598 dnl Checks the flavor of gethost*_r functions.
599 if test "$find_gethost_r" = yes; then
600     AC_CACHE_CHECK(flavor of gethostbyname_r, ac_cv_flavor_gethost_r,
601     [AC_TRY_RUN(
602 changequote(<<, >>)dnl
604 #include <stddef.h>
605 #include <sys/types.h>
606 #include <sys/socket.h>
607 #include <netdb.h>
608 #include <stdio.h>
609 int main()
611     int err = 0;
612     struct hostent hebuf, *hp;
613     char buf[10];
614     /* Try resolving a invalid name using glibc flavor. */
615     (void)gethostbyname_r("@#!", &hebuf, buf, sizeof(buf), &hp, &err);
616     if (err != 0)
617         return 0;       /* glibc flavor */
618     else
619         return 1;       /* Sun flavor */
622 changequote([, ])dnl
623         ac_cv_flavor_gethost_r=glibc,
624         ac_cv_flavor_gethost_r=sun,
625         ac_cv_flavor_gethost_r=sun)])
626     if test "$ac_cv_flavor_gethost_r" = "glibc"; then
627         AC_DEFINE(GETHOST_R_GLIBC_FLAVOR, 1,
628             [Define if the prototype of gethost*_r is glibc flavor.])
629     fi
632 dnl Find system shared object paths.
633 AC_FIND_SYSTEM_SHOBJ(libc)
634 if test "$install_runidn" = yes ; then
635     AC_FIND_SYSTEM_SHOBJ(libnsl)
638 dnl Checks for iconv library.
639 if test "$liteonly" != yes ; then
640     AC_MSG_CHECKING(for iconv)
641     saved_CPPFLAGS=$CPPFLAGS
642     saved_LIBS=$LIBS
643     CPPFLAGS="$CPPFLAGS $ICONVINC"
644     LIBS="$LIBS $ICONVLIB"
645     AC_TRY_LINK([
646     #include <iconv.h>
647     ], [
648         iconv_t i;
649         i = iconv_open("ISO-8859-1", "UTF-8");
650     ], [iconv_try_link=yes], [iconv_try_link=no])
651     LIBS=$saved_LIBS
652     CPPFLAGS=$saved_CPPFLAGS
653     AC_MSG_RESULT($iconv_try_link)
654     if test "$iconv_try_link" = no ; then
655         AC_MSG_ERROR(iconv function not available)
656     fi
659 dnl Check for codeset name for UTF-8.
660 if test "$liteonly" != yes ; then
661     AC_MSG_CHECKING([for codeset name $UTF8_NAME])
662     saved_CPPFLAGS=$CPPFLAGS
663     saved_LIBS=$LIBS
664     CPPFLAGS="$CPPFLAGS $ICONVINC"
665     LIBS="$LIBS $ICONVLIB"
666     AC_TRY_RUN([
667     #include <stddef.h>
668     #include <stdlib.h>
669     #include <iconv.h>
670     #define UTF8_NAME "$UTF8_NAME"
671     #define ICONV_FAIL ((iconv_t)(-1))
672     /* Check if the codeset name UTF8_NAME is valid by performing iconv_open(). */
673     int main() {
674         int i;
675         /* list of codeset names likely to exist */
676         static char *codeset[] = {
677             "ASCII", "ISO-8859-1", "ISO8859-1", "iso8859_1", "8859-1",
678             "Shift_JIS", "SJIS", "sjis", NULL,
679         };
681         /* First try null conversion. */
682         if (iconv_open(UTF8_NAME, UTF8_NAME) != ICONV_FAIL) return 0;
684         /* Unfortunately, above check fails on certain systems, such as Solaris. */
685         for (i = 0; codeset[i] != NULL; i++) {
686             if (iconv_open(UTF8_NAME, codeset[i]) != ICONV_FAIL) return 0;
687         }
688         return 1;
689     }
690     ], utf8_name_valid=yes, utf8_name_valid=no, utf8_name_valid=unknown)
691     LIBS=$saved_LIBS
692     CPPFLAGS=$saved_CPPFLAGS
693     AC_MSG_RESULT($utf8_name_valid)
696 dnl Output.
697 AC_CONFIG_HEADER(include/config.h)
698 AC_OUTPUT(
699         Makefile
700         include/Makefile
701         include/idn/Makefile
702         include/mdn/Makefile
703         lib/Makefile
704         man/Makefile
705         tools/Makefile
706         tools/idnconv/Makefile
707         tools/runidn/Makefile
708         tools/runidn/runidn
709         map/Makefile
710         lib/tests/Makefile