Detection of IPv6 clueful functions by Configure (part 1)
H.Merijn Brand [Wed, 25 Mar 2009 16:43:22 +0000 (17:43 +0100)]
Other OS parts will follow

From: Steve Peters <steve@fisharerojo.org>
Date: Wed, 25 Mar 2009 10:54:51 -0500
Message-ID: <fd7a59d30903250854q53311f48o6744df7cbfa1d03d@mail.gmail.com>

Configure
Porting/Glossary
Porting/config.sh
config_h.SH
handy.h

index 47ca217..ed36e69 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -25,7 +25,7 @@
 
 # $Id: Head.U 6 2006-08-25 22:21:46Z rmanfredi $
 #
-# Generated on Tue Feb 10 17:34:27 CET 2009 [metaconfig 3.5 PL0]
+# Generated on Wed Mar 25 17:28:24 CET 2009 [metaconfig 3.5 PL0]
 # (with additional metaconfig patches by perlbug@perl.org)
 
 cat >c1$$ <<EOF
@@ -467,6 +467,7 @@ d_ftime=''
 d_gettimeod=''
 d_futimes=''
 d_Gconvert=''
+d_getaddrinfo=''
 d_getcwd=''
 d_getespwnam=''
 d_getfsstat=''
@@ -498,6 +499,7 @@ d_getlogin_r=''
 getlogin_r_proto=''
 d_getmnt=''
 d_getmntent=''
+d_getnameinfo=''
 d_getnbyaddr=''
 d_getnbyname=''
 d_getnent=''
@@ -554,6 +556,8 @@ d_hasmntopt=''
 d_htonl=''
 d_ilogbl=''
 d_inetaton=''
+d_inetntop=''
+d_inetpton=''
 d_int64_t=''
 d_isascii=''
 d_isfinite=''
@@ -13394,6 +13398,10 @@ eval $ndbm_hdr_protochk
 set gdbm_ndbm gdbm-ndbm.h
 eval $ndbm_hdr_protochk
 
+: see if getaddrinfo exists
+set getaddrinfo d_getaddrinfo
+eval $inlibc
+
 : see if getcwd exists
 set getcwd d_getcwd
 eval $inlibc
@@ -13943,6 +13951,10 @@ eval $inlibc
 set getmntent d_getmntent
 eval $inlibc
 
+: see if getnameinfo exists
+set getnameinfo d_getnameinfo
+eval $inlibc
+
 : see if getnetbyaddr exists
 set getnetbyaddr d_getnbyaddr
 eval $inlibc
@@ -14886,6 +14898,14 @@ set d_index; eval $setvar
 set inet_aton d_inetaton
 eval $inlibc
 
+: see if inet_ntop exists
+set inet_ntop d_inetntop
+eval $inlibc
+
+: see if inet_pton exists
+set inet_pton d_inetpton
+eval $inlibc
+
 : Look for isascii
 echo " "
 $cat >isascii.c <<EOCP
@@ -22299,6 +22319,7 @@ d_ftime='$d_ftime'
 d_futimes='$d_futimes'
 d_gdbm_ndbm_h_uses_prototypes='$d_gdbm_ndbm_h_uses_prototypes'
 d_gdbmndbm_h_uses_prototypes='$d_gdbmndbm_h_uses_prototypes'
+d_getaddrinfo='$d_getaddrinfo'
 d_getcwd='$d_getcwd'
 d_getespwnam='$d_getespwnam'
 d_getfsstat='$d_getfsstat'
@@ -22320,6 +22341,7 @@ d_getlogin='$d_getlogin'
 d_getlogin_r='$d_getlogin_r'
 d_getmnt='$d_getmnt'
 d_getmntent='$d_getmntent'
+d_getnameinfo='$d_getnameinfo'
 d_getnbyaddr='$d_getnbyaddr'
 d_getnbyname='$d_getnbyname'
 d_getnent='$d_getnent'
@@ -22365,6 +22387,8 @@ d_ilogbl='$d_ilogbl'
 d_inc_version_list='$d_inc_version_list'
 d_index='$d_index'
 d_inetaton='$d_inetaton'
+d_inetntop='$d_inetntop'
+d_inetpton='$d_inetpton'
 d_int64_t='$d_int64_t'
 d_isascii='$d_isascii'
 d_isfinite='$d_isfinite'
index 53a44c4..5e1c51a 100644 (file)
@@ -899,6 +899,11 @@ d_gdbmndbm_h_uses_prototypes (i_ndbm.U):
        undefined. Consult the different d_*ndbm_h_uses_prototypes variables
        to get the same information for alternative ndbm.h include files.
 
+d_getaddrinfo (d_getaddrinfo.U):
+       This variable conditionally defines the HAS_GETADDRINFO symbol,
+       which indicates to the C program that the getaddrinfo() function
+       is available.
+
 d_getcwd (d_getcwd.U):
        This variable conditionally defines the HAS_GETCWD symbol, which
        indicates to the C program that the getcwd() routine is available
@@ -1001,6 +1006,11 @@ d_getmntent (d_getmntent.U):
        indicates to the C program that the getmntent() routine is available
        to iterate through mounted files to get their mount info.
 
+d_getnameinfo (d_getnameinfo.U):
+       This variable conditionally defines the HAS_GETNAMEINFO symbol,
+       which indicates to the C program that the getnameinfo() function
+       is available.
+
 d_getnbyaddr (d_getnbyad.U):
        This variable conditionally defines the HAS_GETNETBYADDR symbol, which
        indicates to the C program that the getnetbyaddr() routine is available
@@ -1218,6 +1228,16 @@ d_inetaton (d_inetaton.U):
        indicates to the C program that the inet_aton() function is available
        to parse IP address "dotted-quad" strings.
 
+d_inetntop (d_inetntop.U):
+       This variable conditionally defines the HAS_INETNTOP symbol,
+       which indicates to the C program that the inet_ntop() function
+       is available.
+
+d_inetpton (d_inetpton.U):
+       This variable conditionally defines the HAS_INETPTON symbol,
+       which indicates to the C program that the inet_pton() function
+       is available.
+
 d_int64_t (d_int64_t.U):
        This symbol will be defined if the C compiler supports int64_t.
 
index 06f70bd..0069482 100644 (file)
@@ -225,6 +225,7 @@ d_ftime='undef'
 d_futimes='define'
 d_gdbm_ndbm_h_uses_prototypes='undef'
 d_gdbmndbm_h_uses_prototypes='undef'
+d_getaddrinfo='define'
 d_getcwd='define'
 d_getespwnam='undef'
 d_getfsstat='undef'
@@ -246,6 +247,7 @@ d_getlogin='define'
 d_getlogin_r='undef'
 d_getmnt='undef'
 d_getmntent='define'
+d_getnameinfo='define'
 d_getnbyaddr='define'
 d_getnbyname='define'
 d_getnent='define'
@@ -291,6 +293,8 @@ d_ilogbl='define'
 d_inc_version_list='undef'
 d_index='undef'
 d_inetaton='define'
+d_inetntop='define'
+d_inetpton='define'
 d_int64_t='define'
 d_isascii='define'
 d_isfinite='undef'
index 11808fc..ccb7f10 100755 (executable)
@@ -3574,6 +3574,12 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
  */
 #$d_futimes HAS_FUTIMES                /**/
 
+/* HAS_GETADDRINFO:
+ *     This symbol, if defined, indicates that the getaddrinfo() function
+ *     is available for use.
+ */
+#$d_getaddrinfo HAS_GETADDRINFO                /**/
+
 /* HAS_GETCWD:
  *     This symbol, if defined, indicates that the getcwd routine is
  *     available to get the current working directory.
@@ -3610,6 +3616,12 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
  */
 #$d_getmntent HAS_GETMNTENT            /**/
 
+/* HAS_GETNAMEINFO:
+ *     This symbol, if defined, indicates that the getnameinfo() function
+ *     is available for use.
+ */
+#$d_getnameinfo HAS_GETNAMEINFO                /**/
+
 /* HAS_GETPRPWNAM:
  *     This symbol, if defined, indicates that the getprpwnam system call is
  *     available to retrieve protected (shadow) password entries by name.
@@ -3634,6 +3646,18 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
  */
 #$d_ilogbl HAS_ILOGBL          /**/
 
+/* HAS_INETNTOP:
+ *     This symbol, if defined, indicates that the inet_ntop() function
+ *     is available to parse IPv4 and IPv6 strings.
+ */
+#$d_inetntop HAS_INETNTOP              /**/
+
+/* HAS_INETPTON:
+ *     This symbol, if defined, indicates that the inet_pton() function
+ *     is available to parse IPv4 and IPv6 strings.
+ */
+#$d_inetpton HAS_INETPTON              /**/
+
 /* HAS_INT64_T:
  *     This symbol will defined if the C compiler supports int64_t.
  *     Usually the <inttypes.h> needs to be included, but sometimes
diff --git a/handy.h b/handy.h
index 75080cb..26a41a5 100644 (file)
--- a/handy.h
+++ b/handy.h
@@ -188,18 +188,15 @@ typedef U64TYPE U64;
 #   endif
 #endif
 
-/* HMB H.Merijn Brand - a placeholder for preparing Configure patches */
-#if defined(HAS_PSEUDOFORK) && defined(USE_DTRACE)
-#if defined(LOCALTIME_R_NEEDS_TZSET) && defined(HAS_TIMEGM)
-#if defined(GMTIME_MAX) && defined(GMTIME_MIN) && defined(LOCALTIME_MAX) && defined(LOCALTIME_MIN)
-#if defined(HAS_CTIME64) && defined(HAS_LOCALTIME64) && defined(HAS_GMTIME64)
-#if defined(HAS_MKTIME64) && defined(HAS_DIFFTIME64) && defined(HAS_ASCTIME64)
-/* Not (yet) used at top level, but mention them for metaconfig */
-#endif
-#endif
-#endif
-#endif
-#endif
+/* HMB H.Merijn Brand - a placeholder for preparing Configure patches:
+ * 
+ * USE_DTRACE  HAS_PSEUDOFORK  HAS_TIMEGM      LOCALTIME_R_NEEDS_TZSET 
+ * GMTIME_MAX  GMTIME_MIN      LOCALTIME_MAX   LOCALTIME_MIN
+ * HAS_CTIME64 HAS_LOCALTIME64 HAS_GMTIME64    HAS_DIFFTIME64
+ * HAS_MKTIME64        HAS_ASCTIME64   HAS_GETADDRINFO HAS_GETNAMEINFO
+ * HAS_INETNTOP        HAS_INETPTON
+ * Not (yet) used at top level, but mention them for metaconfig
+ */
 
 /* Mention I8SIZE, U8SIZE, I16SIZE, U16SIZE, I32SIZE, U32SIZE,
    I64SIZE, and U64SIZE here so that metaconfig pulls them in. */