7fdb7fd693
- enabled IDN support by default and don't distribute IDN libraries (#169546) - specfile cleanup - add dynamic directory to /var/named. This directory will be primarily used for dynamic DNS zones. ENABLE_ZONE_WRITE and SELinux's named_write_master_zones no longer exist
835 lines
23 KiB
Diff
835 lines
23 KiB
Diff
--- idnkit-1.0-src/map/Makefile.am.autotools 2007-04-16 13:40:22.000000000 +0200
|
|
+++ idnkit-1.0-src/map/Makefile.am 2007-04-16 12:51:15.000000000 +0200
|
|
@@ -0,0 +1,2 @@
|
|
+map_DATA = \
|
|
+ jp.map
|
|
--- idnkit-1.0-src/Makefile.am.autotools 2007-04-16 13:39:09.000000000 +0200
|
|
+++ idnkit-1.0-src/Makefile.am 2007-04-15 17:24:51.000000000 +0200
|
|
@@ -0,0 +1,6 @@
|
|
+SUBDIRS = \
|
|
+ include \
|
|
+ lib \
|
|
+ man \
|
|
+ tools \
|
|
+ map
|
|
--- idnkit-1.0-src/tools/Makefile.am.autotools 2007-04-16 13:40:02.000000000 +0200
|
|
+++ idnkit-1.0-src/tools/Makefile.am 2007-04-16 12:03:20.000000000 +0200
|
|
@@ -0,0 +1,3 @@
|
|
+SUBDIRS = \
|
|
+ idnconv \
|
|
+ runidn
|
|
--- idnkit-1.0-src/tools/runidn/Makefile.am.autotools 2007-04-16 13:40:05.000000000 +0200
|
|
+++ idnkit-1.0-src/tools/runidn/Makefile.am 2007-04-16 13:17:17.000000000 +0200
|
|
@@ -0,0 +1,35 @@
|
|
+if RUNIDN
|
|
+bin_SCRIPTS =
|
|
+man1_MANS =
|
|
+noinst_LTLIBRARIES = libidnkitres.la
|
|
+
|
|
+libidnkitres_la_SOURCES = \
|
|
+ resolver.lo stub.lo
|
|
+
|
|
+AM_CPPFLAGS = \
|
|
+ -DFOR_RUNIDN \
|
|
+ -I$(top_srcdir)/include \
|
|
+ $(ICONVINC)
|
|
+
|
|
+libidnkitres_la_LIBADD = \
|
|
+ $(top_srcdir)/lib/libidnkit.la \
|
|
+ $(LIBDL)
|
|
+
|
|
+AM_LDFLAGS = \
|
|
+ -version-number 1:0:1
|
|
+
|
|
+if COMPAT
|
|
+bin_SCRIPTS += runmdn
|
|
+man1_MANS += runmdn.1
|
|
+else
|
|
+bin_SCRIPTS += runidn
|
|
+man1_MANS += runidn.1
|
|
+endif
|
|
+
|
|
+runmdn: runidn
|
|
+ cp -f runidn runmdn
|
|
+
|
|
+runmdn.1: runidn.1
|
|
+ cp -f runidn.1 runmdn.1
|
|
+
|
|
+endif
|
|
--- idnkit-1.0-src/tools/idnconv/Makefile.am.autotools 2007-04-16 13:40:08.000000000 +0200
|
|
+++ idnkit-1.0-src/tools/idnconv/Makefile.am 2007-04-16 13:35:51.000000000 +0200
|
|
@@ -0,0 +1,29 @@
|
|
+if ! LITEONLY
|
|
+bin_PROGRAMS =
|
|
+man1_MANS =
|
|
+if COMPAT
|
|
+bin_PROGRAMS += mdnconva
|
|
+man1_MANS += mdnconv.1
|
|
+else
|
|
+bin_PROGRAMS += idnconv
|
|
+man1_MANS += idnconv.1
|
|
+endif
|
|
+
|
|
+idnconv_SOURCES = \
|
|
+ idnconv.c \
|
|
+ util.c \
|
|
+ selectiveencode.c
|
|
+
|
|
+AM_CPPFLAGS = \
|
|
+ -I$(top_srcdir)/include \
|
|
+ $(ICONVINC)
|
|
+
|
|
+idnconv_LDADD = \
|
|
+ $(top_srcdir)/lib/libidnkit.la
|
|
+
|
|
+mdnconv: idnconv
|
|
+ cp -f idnconv$(EXEEXT) mdnconv$(EXEEXT)
|
|
+
|
|
+mdnconv.1: idnconv.1
|
|
+ cp -f idnconv.1 mdnconv.1
|
|
+endif
|
|
--- idnkit-1.0-src/lib/Makefile.am.autotools 2007-04-16 13:39:47.000000000 +0200
|
|
+++ idnkit-1.0-src/lib/Makefile.am 2007-04-16 13:11:02.000000000 +0200
|
|
@@ -0,0 +1,85 @@
|
|
+noinst_LTLIBRARIES = libidnkitlite.la
|
|
+if ! LITEONLY
|
|
+noinst_LTLIBRARIES += libidnkit.la
|
|
+endif
|
|
+
|
|
+AM_CPPFLAGS = \
|
|
+ -I$(top_srcdir)/include \
|
|
+ $(ICONVINC) \
|
|
+ -DIDN_RESCONF_DIR="\"$(sysconfdir)\""
|
|
+
|
|
+AM_LDFLAGS = \
|
|
+ -version-number 1:0:2
|
|
+
|
|
+libidnkitlite_la_SOURCES = \
|
|
+ aliaslist.c \
|
|
+ api.c \
|
|
+ checker.c \
|
|
+ converter.c \
|
|
+ debug.c \
|
|
+ delimitermap.c \
|
|
+ filechecker.c \
|
|
+ filemapper.c \
|
|
+ log.c \
|
|
+ mapper.c \
|
|
+ mapselector.c \
|
|
+ nameprep.c \
|
|
+ normalizer.c \
|
|
+ punycode.c \
|
|
+ race.c \
|
|
+ res.c \
|
|
+ resconf.c \
|
|
+ result.c \
|
|
+ strhash.c \
|
|
+ ucsmap.c \
|
|
+ ucsset.c \
|
|
+ unicode.c \
|
|
+ unormalize.c \
|
|
+ ucs4.c \
|
|
+ utf8.c \
|
|
+ util.c \
|
|
+ version.c
|
|
+
|
|
+libidnkitlite_la_CPPFLAGS = \
|
|
+ -DWITHOUT_ICONV
|
|
+
|
|
+if ! LITEONLY
|
|
+libidnkit_la_SOURCES = \
|
|
+ aliaslist.c \
|
|
+ api.c \
|
|
+ checker.c \
|
|
+ converter.c \
|
|
+ debug.c \
|
|
+ delimitermap.c \
|
|
+ filechecker.c \
|
|
+ filemapper.c \
|
|
+ localencoding.c \
|
|
+ log.c \
|
|
+ mapper.c \
|
|
+ mapselector.c \
|
|
+ nameprep.c \
|
|
+ normalizer.c \
|
|
+ punycode.c \
|
|
+ race.c \
|
|
+ res.c \
|
|
+ resconf.c \
|
|
+ result.c \
|
|
+ strhash.c \
|
|
+ ucs4.c \
|
|
+ ucsmap.c \
|
|
+ ucsset.c \
|
|
+ unicode.c \
|
|
+ unormalize.c \
|
|
+ utf8.c \
|
|
+ util.c \
|
|
+ version.c
|
|
+endif
|
|
+
|
|
+sys_DATA = idn.conf idnalias.conf
|
|
+
|
|
+idn.conf: idn.conf.sample.in
|
|
+ sed -e 's%[@]mapdir[@]%$(datadir)/idnkit%' < idn.conf.sample.in > $@
|
|
+
|
|
+idnalias.conf: Makefile
|
|
+ $(SHELL) aliaslist.sh $(build) $(UTF8_NAME) > $@
|
|
+
|
|
--- idnkit-1.0-src/include/Makefile.am.autotools 2007-04-16 13:39:19.000000000 +0200
|
|
+++ idnkit-1.0-src/include/Makefile.am 2007-04-15 17:25:36.000000000 +0200
|
|
@@ -0,0 +1,3 @@
|
|
+SUBDIRS = \
|
|
+ idn \
|
|
+ mdn
|
|
--- idnkit-1.0-src/include/mdn/Makefile.am.autotools 2007-04-16 13:39:35.000000000 +0200
|
|
+++ idnkit-1.0-src/include/mdn/Makefile.am 2007-04-15 17:28:26.000000000 +0200
|
|
@@ -0,0 +1,10 @@
|
|
+if COMPAT
|
|
+mdn_HEADERS = \
|
|
+ api.h \
|
|
+ log.h \
|
|
+ res.h \
|
|
+ resconf.h \
|
|
+ result.h \
|
|
+ utf8.h \
|
|
+ version.h
|
|
+endif
|
|
--- idnkit-1.0-src/include/idn/Makefile.am.autotools 2007-04-16 13:39:24.000000000 +0200
|
|
+++ idnkit-1.0-src/include/idn/Makefile.am 2007-04-15 17:27:12.000000000 +0200
|
|
@@ -0,0 +1,32 @@
|
|
+idn_HEADERS = \
|
|
+ api.h \
|
|
+ assert.h \
|
|
+ checker.h \
|
|
+ converter.h \
|
|
+ debug.h \
|
|
+ delimitermap.h \
|
|
+ export.h \
|
|
+ filechecker.h \
|
|
+ filemapper.h \
|
|
+ localencoding.h \
|
|
+ log.h \
|
|
+ logmacro.h \
|
|
+ mapper.h \
|
|
+ mapselector.h \
|
|
+ nameprep.h \
|
|
+ normalizer.h \
|
|
+ punycode.h \
|
|
+ race.h \
|
|
+ res.h \
|
|
+ resconf.h \
|
|
+ result.h \
|
|
+ strhash.h \
|
|
+ ucsmap.h \
|
|
+ ucsset.h \
|
|
+ unicode.h \
|
|
+ unormalize.h \
|
|
+ ucs4.h \
|
|
+ utf8.h \
|
|
+ util.h \
|
|
+ version.h
|
|
+
|
|
--- idnkit-1.0-src/configure.ac.autotools 2007-04-16 13:39:01.000000000 +0200
|
|
+++ idnkit-1.0-src/configure.ac 2007-04-16 13:32:59.000000000 +0200
|
|
@@ -0,0 +1,553 @@
|
|
+dnl $Id: configure.in,v 1.1.1.1 2003/06/04 00:25:25 marka Exp $
|
|
+dnl Process this file with autoconf to produce a configure script.
|
|
+dnl
|
|
+dnl Copyright (c) 2000 Japan Network Information Center. All rights reserved.
|
|
+dnl
|
|
+dnl By using this file, you agree to the terms and conditions set forth bellow.
|
|
+dnl
|
|
+dnl LICENSE TERMS AND CONDITIONS
|
|
+dnl
|
|
+dnl The following License Terms and Conditions apply, unless a different
|
|
+dnl license is obtained from Japan Network Information Center ("JPNIC"),
|
|
+dnl a Japanese association, Kokusai-Kougyou-Kanda Bldg 6F, 2-3-4 Uchi-Kanda,
|
|
+dnl Chiyoda-ku, Tokyo 101-0047, Japan.
|
|
+dnl
|
|
+dnl 1. Use, Modification and Redistribution (including distribution of any
|
|
+dnl modified or derived work) in source and/or binary forms is permitted
|
|
+dnl under this License Terms and Conditions.
|
|
+dnl
|
|
+dnl 2. Redistribution of source code must retain the copyright notices as they
|
|
+dnl appear in each source code file, this License Terms and Conditions.
|
|
+dnl
|
|
+dnl 3. Redistribution in binary form must reproduce the Copyright Notice,
|
|
+dnl this License Terms and Conditions, in the documentation and/or other
|
|
+dnl materials provided with the distribution. For the purposes of binary
|
|
+dnl distribution the "Copyright Notice" refers to the following language:
|
|
+dnl "Copyright (c) 2000-2002 Japan Network Information Center. All rights reserved."
|
|
+dnl
|
|
+dnl 4. The name of JPNIC may not be used to endorse or promote products
|
|
+dnl derived from this Software without specific prior written approval of
|
|
+dnl JPNIC.
|
|
+dnl
|
|
+dnl 5. Disclaimer/Limitation of Liability: THIS SOFTWARE IS PROVIDED BY JPNIC
|
|
+dnl "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
+dnl LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
|
|
+dnl PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL JPNIC BE LIABLE
|
|
+dnl FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
|
+dnl CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
|
+dnl SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
|
|
+dnl BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
|
+dnl WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
|
+dnl OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
|
+dnl ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
|
|
+
|
|
+AC_PREREQ(2.59)
|
|
+AC_INIT([idnkit], [1.0], [bind9-bugs@isc.org])
|
|
+AM_INIT_AUTOMAKE([foreign -Wall -Werror])
|
|
+
|
|
+idndir="$includedir/idn"
|
|
+mdndir="$includedir/mdn"
|
|
+sysdir="$sysconfdir"
|
|
+mapdir="$datadir/idnkit"
|
|
+AC_SUBST(idndir)
|
|
+AC_SUBST(mdndir)
|
|
+AC_SUBST(sysdir)
|
|
+AC_SUBST(mapdir)
|
|
+
|
|
+AC_ARG_ENABLE([debug],
|
|
+ AS_HELP_STRING([--enable-debug], [enable debug codes [default=no]]),
|
|
+ [debug=$enableval], [debug=no])
|
|
+if test "$debug" = "yes"; then
|
|
+ CFLAGS="$CFLAGS -DDEBUG"
|
|
+fi
|
|
+
|
|
+AC_ARG_ENABLE([mdnkit-compat],
|
|
+ AS_HELP_STRING([--enable-mdnkit-compat], [enable mDNkit compatibility mode [default=no]]),
|
|
+ [mdnkit_compat=$enableval], [mdnkit_compat=no])
|
|
+if test "$mdnkit_compat" = "yes"; then
|
|
+ AC_DEFINE(ENABLE_MDNKIT_COMPAT, 1, [--enable-mdnkit-compat is specified])
|
|
+fi
|
|
+AM_CONDITIONAL(COMPAT, [test "$mdnkit_compat" = "yes"])
|
|
+
|
|
+AC_ARG_ENABLE([extra-ace],
|
|
+ AS_HELP_STRING([--enable-extra-ace], [enable additional ACE converters. [default=no]]),
|
|
+ [extraace=$enableval], [extraace=no])
|
|
+if test "$mdnkit_compat" = "yes"; then
|
|
+ AC_DEFINE(IDN_EXTRA_ACE, 1, [additional ACE converters compiled in.])
|
|
+fi
|
|
+
|
|
+AC_ARG_WITH([utf8],
|
|
+ AS_HELP_STRING([--with-utf8=NAME], [codeset name for UTF-8 encoding [UTF-8]]),
|
|
+ [UTF8_NAME="$withval"], [UTF8_NAME="UTF-8"])
|
|
+AC_DEFINE_UNQUOTED(IDN_UTF8_ENCODING_NAME, "$UTF8_NAME", [Define your iconv codeset name for utf-8.])
|
|
+AC_SUBST(UTF8_NAME)
|
|
+
|
|
+AC_ARG_ENABLE([liteonly],
|
|
+ AS_HELP_STRING([--enable-liteonly], [compile and install lite library only [default=no]]),
|
|
+ [liteonly=$enableval], [liteonly=no])
|
|
+AM_CONDITIONAL(LITEONLY, [test "$liteonly" = "yes"])
|
|
+
|
|
+AC_ARG_ENABLE([runidn],
|
|
+ AS_HELP_STRING([--enable-runidn], [compile and install runidn [default=no]]),
|
|
+ [install_runidn=$enableval], [install_runidn=no])
|
|
+if test "$install_runidn" = "yes"; then
|
|
+ if test "$liteonly" = "yes"; then
|
|
+ AC_MSG_ERROR([you can't set --enable-runidn and --enable-liteonly simultaneously])
|
|
+ fi
|
|
+fi
|
|
+AM_CONDITIONAL(RUNIDN, [test "$install_runidn" = "yes"])
|
|
+
|
|
+AC_ARG_WITH([iconv-include],
|
|
+ AS_HELP_STRING([--with-iconv-include=DIR], [iconv include files are in DIR []]),
|
|
+ [iconv_include="$withval"], [iconv_include="$includedir"])
|
|
+ICONVINC="-I$iconv_include"
|
|
+AC_SUBST(ICONVINC)
|
|
+
|
|
+AC_ARG_WITH([iconv],
|
|
+ AS_HELP_STRING([--with-iconv=LIB], [library for iconv []]),
|
|
+ [iconv="$withval"], [iconv="-lc"])
|
|
+ICONVLIB=$iconv
|
|
+AC_SUBST(ICONVLIB)
|
|
+
|
|
+AC_ARG_WITH([iconv-sofile],
|
|
+ AS_HELP_STRING([--with-iconv-sofile=PATH], [shared library file for libiconv]),
|
|
+ [ICONVSOFILE=$withval], [ICONVSOFILE=guess])
|
|
+if test "$ICONVSOFILE" = guess; then
|
|
+ if test "$liteonly" != yes ; then
|
|
+ if test "$ICONVLIB" = ""; then
|
|
+ ICONVSOFILE=none
|
|
+ else
|
|
+ AC_MSG_CHECKING(pathname of iconv shared library)
|
|
+ ic_libdir=
|
|
+ ic_libname=
|
|
+ case "$host" in
|
|
+ *-hpux*)
|
|
+ SO=sl
|
|
+ ;;
|
|
+ *)
|
|
+ SO=so
|
|
+ ;;
|
|
+ esac
|
|
+ for arg in $ICONVLIB; do
|
|
+ case "$arg" in
|
|
+ -L*) ic_libdir="$ic_libdir `echo $arg | sed s/-L//`" ;;
|
|
+ -l*) ic_libname=`echo $arg | sed s/-l//` ;;
|
|
+ /*.$SO*) ICONVSOFILE=$arg ;;
|
|
+ esac
|
|
+ done
|
|
+ if test "$ICONVSOFILE" = guess; then
|
|
+ if test "$ic_libname" = ""; then
|
|
+ AC_MSG_RESULT(unknown)
|
|
+ AC_MSG_WARN([use --with-iconv-sofile for specifying iconv shared library file])
|
|
+ ICONVSOFILE=none
|
|
+ else
|
|
+ if test "$ic_libdir" = ""; then
|
|
+ # Standard (and semi-standard) library directories
|
|
+ ic_libdir="/lib /usr/lib /usr/local/lib"
|
|
+ fi
|
|
+ for dir in $ic_libdir; do
|
|
+ ICONVSOFILE=`ls -r $dir/lib$ic_libname.$SO* 2>/dev/null | head -1`
|
|
+ if test "$ICONVSOFILE" != ""; then
|
|
+ break
|
|
+ fi
|
|
+ done
|
|
+ if test "$ICONVSOFILE" != ""; then
|
|
+ AC_MSG_RESULT($ICONVSOFILE)
|
|
+ else
|
|
+ AC_MSG_RESULT(unknown)
|
|
+ AC_MSG_WARN([use --with-iconv-sofile for specifying iconv shared library file])
|
|
+ ICONVSOFILE=none
|
|
+ fi
|
|
+ fi
|
|
+ fi
|
|
+ fi
|
|
+ fi
|
|
+fi
|
|
+AC_SUBST(ICONVSOFILE)
|
|
+
|
|
+dnl Figure out preload stuff.
|
|
+PRELOAD_VAR="LD_PRELOAD"
|
|
+PRELOAD_SEP=":"
|
|
+PRELOAD_LAST=""
|
|
+case "$host" in
|
|
+*-solaris*)
|
|
+ PRELOAD_SEP=" "
|
|
+ ;;
|
|
+*-linux*)
|
|
+ PRELOAD_SEP=" "
|
|
+ ;;
|
|
+*-osf*)
|
|
+ PRELOAD_VAR="_RLD_LIST"
|
|
+ PRELOAD_LAST=":DEFAULT"
|
|
+ ;;
|
|
+*-netbsd*)
|
|
+ if test -x /usr/bin/file -a -x /usr/bin/grep ; then
|
|
+ case "`/usr/bin/file /usr/bin/grep`" in
|
|
+ *ELF*)
|
|
+ PRELOAD_SEP=" "
|
|
+ ;;
|
|
+ esac
|
|
+ fi
|
|
+ ;;
|
|
+esac
|
|
+
|
|
+AC_SUBST(PRELOAD_VAR)
|
|
+AC_SUBST(PRELOAD_SEP)
|
|
+AC_SUBST(PRELOAD_LAST)
|
|
+
|
|
+dnl Checks for standard tools.
|
|
+AC_PROG_CC
|
|
+AC_PROG_CPP
|
|
+AC_PROG_CXX
|
|
+AC_PROG_LN_S
|
|
+AC_PROG_MAKE_SET
|
|
+AC_PROG_INSTALL
|
|
+AM_PROG_LIBTOOL
|
|
+
|
|
+AC_PATH_PROGS(PERL, perl, perl)
|
|
+
|
|
+dnl Checks for header files.
|
|
+AC_CHECK_HEADERS(pwd.h langinfo.h locale.h netdb.h stddef.h stdlib.h string.h sys/socket.h unistd.h)
|
|
+if test "$install_runidn" = "yes"; then
|
|
+ AC_CHECK_HEADERS(dlfcn.h)
|
|
+fi
|
|
+
|
|
+saved_CPPFLAGS=$CPPFLAGS
|
|
+CPPFLAGS="$CPPFLAGS $ICONVINC"
|
|
+if test "$liteonly" != "yes"; then
|
|
+ AC_CHECK_HEADERS(iconv.h)
|
|
+fi
|
|
+CPPFLAGS=$saved_CPPFLAGS
|
|
+
|
|
+dnl Checks for data types.
|
|
+AC_C_CONST
|
|
+AC_TYPE_SIZE_T
|
|
+AC_HEADER_TIME
|
|
+AC_TYPE_UID_T
|
|
+AC_CHECK_TYPES([ptrdiff_t])
|
|
+
|
|
+dnl for dnsproxy.
|
|
+AC_CHECK_TYPE(BOOL, int)
|
|
+
|
|
+dnl Checks for libraries.
|
|
+if test "$install_runidn" = yes ; then
|
|
+ AC_CHECK_LIB(socket, socket)
|
|
+ AC_CHECK_LIB(nsl, inet_addr)
|
|
+ AC_CHECK_LIB(dl, dlopen, [
|
|
+ LIBS="-ldl $LIBS"
|
|
+ LIBDL="-ldl"
|
|
+ AC_DEFINE(HAVE_LIBDL, 1, [Define if you have the dl library (-ldl).])
|
|
+ AC_SUBST(LIBDL)
|
|
+ ])
|
|
+fi
|
|
+
|
|
+dnl Checks for library functions.
|
|
+AC_FUNC_MALLOC
|
|
+AC_FUNC_MEMCMP
|
|
+AC_FUNC_REALLOC
|
|
+AC_FUNC_SELECT_ARGTYPES
|
|
+AC_FUNC_VPRINTF
|
|
+AC_CHECK_FUNCS(vsnprintf setvbuf setlocale nl_langinfo memmove bcopy setenv unsetenv inet_ntoa socket gethostname isascii memset putenv select sethostname strchr strerror strpbrk strrchr strtoul)
|
|
+if test "$install_runidn" = yes ; then
|
|
+ AC_CHECK_FUNCS(gethostbyname gethostbyname2 gethostbyaddr)
|
|
+ AC_CHECK_FUNCS(gethostbyname_r gethostbyname2_r gethostbyaddr_r, find_gethost_r=yes)
|
|
+ AC_CHECK_FUNCS(getipnodebyname getipnodebyaddr freehostent)
|
|
+ AC_CHECK_FUNCS(getaddrinfo freeaddrinfo getnameinfo)
|
|
+ AC_CHECK_FUNCS(dlopen dlsym)
|
|
+fi
|
|
+
|
|
+if test "$install_runidn" = yes ; then
|
|
+dnl Checks the flavor of gethostbyaddr* functions.
|
|
+ AC_CACHE_CHECK(flavor of gethostbyaddr, ac_cv_flavor_gethostbyaddr,
|
|
+ [ac_cv_flavor_gethostbyaddr=unknown
|
|
+ AC_TRY_RUN(
|
|
+ [
|
|
+ #include <stddef.h>
|
|
+ #include <sys/types.h>
|
|
+ #include <sys/socket.h>
|
|
+ #include <netdb.h>
|
|
+ struct hostent *gethostbyaddr(const void *addr, socklen_t len, int type) {
|
|
+ return NULL;
|
|
+ }
|
|
+ int main() {
|
|
+ (void)gethostbyaddr(NULL, 0, 0);
|
|
+ return 0;
|
|
+ }
|
|
+ ], ac_cv_flavor_gethostbyaddr=glibc2_2,,
|
|
+ ac_cv_flavor_gethostbyaddr=unknown)
|
|
+ AC_TRY_RUN(
|
|
+ [
|
|
+ #include <stddef.h>
|
|
+ #include <sys/types.h>
|
|
+ #include <sys/socket.h>
|
|
+ #include <netdb.h>
|
|
+ struct hostent *gethostbyaddr(const char *addr, size_t len, int type) {
|
|
+ return NULL;
|
|
+ }
|
|
+ int main() {
|
|
+ (void)gethostbyaddr(NULL, 0, 0);
|
|
+ return 0;
|
|
+ }
|
|
+ ], ac_cv_flavor_gethostbyaddr=glibc,,
|
|
+ ac_cv_flavor_gethostbyaddr=unknown)
|
|
+ AC_TRY_RUN(
|
|
+ [
|
|
+ #include <stddef.h>
|
|
+ #include <sys/types.h>
|
|
+ #include <sys/socket.h>
|
|
+ #include <netdb.h>
|
|
+ struct hostent *gethostbyaddr(const char *addr, int len, int type) {
|
|
+ return NULL;
|
|
+ }
|
|
+ int main() {
|
|
+ (void)gethostbyaddr(NULL, 0, 0);
|
|
+ return 0;
|
|
+ }
|
|
+ ], ac_cv_flavor_gethostbyaddr=traditional,,
|
|
+ ac_cv_flavor_gethostbyaddr=unknown)
|
|
+ if test "$ac_cv_func_gethostbyaddr" = no ; then
|
|
+ ac_cv_flavor_gethostbyaddr=none
|
|
+ fi])
|
|
+
|
|
+ case "$ac_cv_flavor_gethostbyaddr" in
|
|
+ glibc2_2)
|
|
+ ac_cv_type_ghba_addr_t='const void *'
|
|
+ ac_cv_type_ghba_addrlen_t='socklen_t'
|
|
+ ;;
|
|
+ glibc)
|
|
+ ac_cv_type_ghba_addr_t='const char *'
|
|
+ ac_cv_type_ghba_addrlen_t='size_t'
|
|
+ ;;
|
|
+ traditional | none)
|
|
+ ac_cv_type_ghba_addr_t='const char *'
|
|
+ ac_cv_type_ghba_addrlen_t='int'
|
|
+ ;;
|
|
+ *)
|
|
+ AC_MSG_ERROR([can't build runidn, since parameter type list of gethostbyaddr() is unknown to configure.])
|
|
+ ;;
|
|
+ esac
|
|
+ AC_DEFINE_UNQUOTED(GHBA_ADDR_T, $ac_cv_type_ghba_addr_t,
|
|
+ [Define as the type of the 1st argument of gethostbyaddr.])
|
|
+ AC_DEFINE_UNQUOTED(GHBA_ADDRLEN_T, $ac_cv_type_ghba_addrlen_t,
|
|
+ [Define as the type of the 2nd argument of gethostbyaddr.])
|
|
+
|
|
+dnl Checks the flavor of getnameinfo functions.
|
|
+ AC_CACHE_CHECK(flavor of getnameinfo, ac_cv_flavor_getnameinfo,
|
|
+ [ac_cv_flavor_getnameinfo=unknown
|
|
+ AC_TRY_RUN(
|
|
+ [
|
|
+ #include <stddef.h>
|
|
+ #include <sys/types.h>
|
|
+ #include <sys/socket.h>
|
|
+ #include <netdb.h>
|
|
+ int getnameinfo(const struct sockaddr *sa, socklen_t salen, char *host,
|
|
+ socklen_t hostlen, char *serv, socklen_t servlen,
|
|
+ unsigned int flags) {
|
|
+ return NULL;
|
|
+ }
|
|
+ int main() {
|
|
+ (void)getnameinfo(NULL, 0, NULL, 0, NULL, 0, 0);
|
|
+ return 0;
|
|
+ }
|
|
+ ], ac_cv_flavor_getnameinfo=glibc2_2_2,,
|
|
+ ac_cv_flavor_getnameinfo=unknown)
|
|
+ AC_TRY_RUN(
|
|
+ [
|
|
+ #include <stddef.h>
|
|
+ #include <sys/types.h>
|
|
+ #include <sys/socket.h>
|
|
+ #include <netdb.h>
|
|
+ int getnameinfo(const struct sockaddr *sa, socklen_t salen, char *host,
|
|
+ socklen_t hostlen, char *serv, socklen_t servlen,
|
|
+ int flags) {
|
|
+ return NULL;
|
|
+ }
|
|
+ int main() {
|
|
+ (void)getnameinfo(NULL, 0, NULL, 0, NULL, 0, 0);
|
|
+ return 0;
|
|
+ }
|
|
+ ], ac_cv_flavor_getnameinfo=rfc2553bis_03,,
|
|
+ ac_cv_flavor_getnameinfo=unknown)
|
|
+ AC_TRY_RUN(
|
|
+ [
|
|
+ #include <stddef.h>
|
|
+ #include <sys/types.h>
|
|
+ #include <sys/socket.h>
|
|
+ #include <netdb.h>
|
|
+ int getnameinfo(const struct sockaddr *sa, socklen_t salen, char *host,
|
|
+ size_t hostlen, char *serv, size_t servlen, int flags) {
|
|
+ return NULL;
|
|
+ }
|
|
+ int main() {
|
|
+ (void)getnameinfo(NULL, 0, NULL, 0, NULL, 0, 0);
|
|
+ return 0;
|
|
+ }
|
|
+ ], ac_cv_flavor_getnameinfo=rfc2553,,
|
|
+ ac_cv_flavor_getnameinfo=unknown)
|
|
+ AC_TRY_RUN(
|
|
+ [
|
|
+ #include <stddef.h>
|
|
+ #include <sys/types.h>
|
|
+ #include <sys/socket.h>
|
|
+ #include <netdb.h>
|
|
+ int getnameinfo(const struct sockaddr *sa, size_t salen, char *host,
|
|
+ size_t hostlen, char *serv, size_t servlen, int flags) {
|
|
+ return NULL;
|
|
+ }
|
|
+ int main() {
|
|
+ (void)getnameinfo(NULL, 0, NULL, 0, NULL, 0, 0);
|
|
+ return 0;
|
|
+ }
|
|
+ ], ac_cv_flavor_getnameinfo=rfc2133,,
|
|
+ ac_cv_flavor_getnameinfo=unknown)
|
|
+ if test "$ac_cv_func_getnameinfo" = no ; then
|
|
+ ac_cv_flavor_getnameinfo=none
|
|
+ fi])
|
|
+
|
|
+ case "$ac_cv_flavor_getnameinfo" in
|
|
+ glibc2_2_2)
|
|
+ ac_cv_type_gni_salen_t='socklen_t'
|
|
+ ac_cv_type_gni_hostlen_t='socklen_t'
|
|
+ ac_cv_type_gni_servlen_t='socklen_t'
|
|
+ ac_cv_type_gni_flags_t='unsigned int'
|
|
+ ;;
|
|
+ rfc2553bis_03)
|
|
+ ac_cv_type_gni_salen_t='socklen_t'
|
|
+ ac_cv_type_gni_hostlen_t='socklen_t'
|
|
+ ac_cv_type_gni_servlen_t='socklen_t'
|
|
+ ac_cv_type_gni_flags_t='int'
|
|
+ ;;
|
|
+ rfc2553)
|
|
+ ac_cv_type_gni_salen_t='socklen_t'
|
|
+ ac_cv_type_gni_hostlen_t='size_t'
|
|
+ ac_cv_type_gni_servlen_t='size_t'
|
|
+ ac_cv_type_gni_flags_t='int'
|
|
+ ;;
|
|
+ rfc2133 | none)
|
|
+ ac_cv_type_gni_salen_t='size_t'
|
|
+ ac_cv_type_gni_hostlen_t='size_t'
|
|
+ ac_cv_type_gni_servlen_t='size_t'
|
|
+ ac_cv_type_gni_flags_t='int'
|
|
+ ;;
|
|
+ *)
|
|
+ AC_MSG_ERROR([can't build runidn, since parameter type list of getnameinfo() is unknown to configure.])
|
|
+ esac
|
|
+ AC_DEFINE_UNQUOTED(GNI_SALEN_T, $ac_cv_type_gni_salen_t,
|
|
+ [Define as the type of the 2nd argument of getnameinfo.])
|
|
+ AC_DEFINE_UNQUOTED(GNI_HOSTLEN_T, $ac_cv_type_gni_hostlen_t,
|
|
+ [Define as the type of the 4th argument of getnameinfo.])
|
|
+ AC_DEFINE_UNQUOTED(GNI_SERVLEN_T, $ac_cv_type_gni_servlen_t,
|
|
+ [Define as the type of the 6th argument of getnameinfo.])
|
|
+ AC_DEFINE_UNQUOTED(GNI_FLAGS_T, $ac_cv_type_gni_flags_t,
|
|
+ [Define as the type of the 7th argument of getnameinfo.])
|
|
+fi
|
|
+
|
|
+dnl resume here.
|
|
+dnl Checks the flavor of gethost*_r functions.
|
|
+if test "$find_gethost_r" = yes; then
|
|
+ AC_CACHE_CHECK(flavor of gethostbyname_r, ac_cv_flavor_gethost_r,
|
|
+ [AC_TRY_RUN(
|
|
+changequote(<<, >>)dnl
|
|
+<<
|
|
+#include <stddef.h>
|
|
+#include <sys/types.h>
|
|
+#include <sys/socket.h>
|
|
+#include <netdb.h>
|
|
+#include <stdio.h>
|
|
+int main()
|
|
+{
|
|
+ int err = 0;
|
|
+ struct hostent hebuf, *hp;
|
|
+ char buf[10];
|
|
+ /* Try resolving a invalid name using glibc flavor. */
|
|
+ (void)gethostbyname_r("@#!", &hebuf, buf, sizeof(buf), &hp, &err);
|
|
+ if (err != 0)
|
|
+ return 0; /* glibc flavor */
|
|
+ else
|
|
+ return 1; /* Sun flavor */
|
|
+}
|
|
+>>,
|
|
+changequote([, ])dnl
|
|
+ ac_cv_flavor_gethost_r=glibc,
|
|
+ ac_cv_flavor_gethost_r=sun,
|
|
+ ac_cv_flavor_gethost_r=sun)])
|
|
+ if test "$ac_cv_flavor_gethost_r" = "glibc"; then
|
|
+ AC_DEFINE(GETHOST_R_GLIBC_FLAVOR, 1,
|
|
+ [Define if the prototype of gethost*_r is glibc flavor.])
|
|
+ fi
|
|
+fi
|
|
+
|
|
+dnl Checks for iconv library.
|
|
+if test "$liteonly" != yes ; then
|
|
+ AC_MSG_CHECKING(for iconv)
|
|
+ saved_CPPFLAGS=$CPPFLAGS
|
|
+ saved_LIBS=$LIBS
|
|
+ CPPFLAGS="$CPPFLAGS $ICONVINC"
|
|
+ LIBS="$LIBS $ICONVLIB"
|
|
+ AC_TRY_LINK([
|
|
+ #include <iconv.h>
|
|
+ ], [
|
|
+ iconv_t i;
|
|
+ i = iconv_open("ISO-8859-1", "UTF-8");
|
|
+ ], [iconv_try_link=yes], [iconv_try_link=no])
|
|
+ LIBS=$saved_LIBS
|
|
+ CPPFLAGS=$saved_CPPFLAGS
|
|
+ AC_MSG_RESULT($iconv_try_link)
|
|
+ if test "$iconv_try_link" = no ; then
|
|
+ AC_MSG_ERROR(iconv function not available)
|
|
+ fi
|
|
+fi
|
|
+
|
|
+dnl Check for codeset name for UTF-8.
|
|
+if test "$liteonly" != yes ; then
|
|
+ AC_MSG_CHECKING([for codeset name $UTF8_NAME])
|
|
+ saved_CPPFLAGS=$CPPFLAGS
|
|
+ saved_LIBS=$LIBS
|
|
+ CPPFLAGS="$CPPFLAGS $ICONVINC"
|
|
+ LIBS="$LIBS $ICONVLIB"
|
|
+ AC_TRY_RUN([
|
|
+ #include <stddef.h>
|
|
+ #include <stdlib.h>
|
|
+ #include <iconv.h>
|
|
+ #define UTF8_NAME "$UTF8_NAME"
|
|
+ #define ICONV_FAIL ((iconv_t)(-1))
|
|
+ /* Check if the codeset name UTF8_NAME is valid by performing iconv_open(). */
|
|
+ int main() {
|
|
+ int i;
|
|
+ /* list of codeset names likely to exist */
|
|
+ static char *codeset[] = {
|
|
+ "ASCII", "ISO-8859-1", "ISO8859-1", "iso8859_1", "8859-1",
|
|
+ "Shift_JIS", "SJIS", "sjis", NULL,
|
|
+ };
|
|
+
|
|
+ /* First try null conversion. */
|
|
+ if (iconv_open(UTF8_NAME, UTF8_NAME) != ICONV_FAIL) return 0;
|
|
+
|
|
+ /* Unfortunately, above check fails on certain systems, such as Solaris. */
|
|
+ for (i = 0; codeset[i] != NULL; i++) {
|
|
+ if (iconv_open(UTF8_NAME, codeset[i]) != ICONV_FAIL) return 0;
|
|
+ }
|
|
+ return 1;
|
|
+ }
|
|
+ ], utf8_name_valid=yes, utf8_name_valid=no, utf8_name_valid=unknown)
|
|
+ LIBS=$saved_LIBS
|
|
+ CPPFLAGS=$saved_CPPFLAGS
|
|
+ AC_MSG_RESULT($utf8_name_valid)
|
|
+fi
|
|
+
|
|
+dnl Output.
|
|
+AC_CONFIG_HEADER(include/config.h)
|
|
+AC_OUTPUT(
|
|
+ Makefile
|
|
+ include/Makefile
|
|
+ include/idn/Makefile
|
|
+ include/mdn/Makefile
|
|
+ lib/Makefile
|
|
+ man/Makefile
|
|
+ tools/Makefile
|
|
+ tools/idnconv/Makefile
|
|
+ tools/runidn/Makefile
|
|
+ tools/runidn/runidn
|
|
+ map/Makefile
|
|
+ lib/tests/Makefile
|
|
+)
|
|
--- idnkit-1.0-src/man/Makefile.am.autotools 2007-04-16 13:39:57.000000000 +0200
|
|
+++ idnkit-1.0-src/man/Makefile.am 2007-04-16 14:02:24.000000000 +0200
|
|
@@ -0,0 +1,43 @@
|
|
+man3_MANS =
|
|
+man5_MANS = idnrc.5 idnalias.conf.5
|
|
+if LITEONLY
|
|
+if COMPAT
|
|
+man3_MANS += libmdnlite.3
|
|
+man5_MANS += mdn.conf.5
|
|
+else
|
|
+man3_MANS += libidnkitlite.3
|
|
+man5_MANS += idn.conf.5
|
|
+endif
|
|
+else
|
|
+if COMPAT
|
|
+man3_MANS += libmdn.3 libmdnlite.3
|
|
+man5_MANS += mdn.conf.5
|
|
+else
|
|
+man3_MANS += libidnkit.3 libidnkitlite.3
|
|
+man5_MANS += idn.conf.5
|
|
+endif
|
|
+endif
|
|
+
|
|
+idnrc.5: idn.conf.5.in
|
|
+ cp -f idn.conf.5.in idnrc.5
|
|
+
|
|
+idnalias.conf.5: idn.conf.5.in
|
|
+ cp -f idn.conf.5.in idnalias.conf.5
|
|
+
|
|
+libidnkit.3: libidnkit.3.in
|
|
+ cp -f libidnkit.3.in libidnkit.3
|
|
+
|
|
+libidnkitlite.3: libidnkit.3
|
|
+ cp -f libidnkit.3 libidnkitlite.3
|
|
+
|
|
+libmdnlite.3: libidnkit.3
|
|
+ cp -f libidnkit.3 libmdnlite.3
|
|
+
|
|
+libmdn.3: libidnkit.3
|
|
+ cp -f libidnkit.3 libmdn.3
|
|
+
|
|
+idn.conf.5: idn.conf.5.in
|
|
+ sed 's%[@]sysconfdir[@]%$(sysdir)%' < idn.conf.5.in > $@
|
|
+
|
|
+mdn.conf.5: idn.conf.5
|
|
+ cp -f idn.conf.5 mdn.conf.5
|