This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Add sin6_scope_id probe (LeoNerd)
authorH.Merijn Brand <h.m.brand@xs4all.nl>
Mon, 20 Dec 2010 16:13:46 +0000 (17:13 +0100)
committerH.Merijn Brand <h.m.brand@xs4all.nl>
Mon, 20 Dec 2010 16:13:46 +0000 (17:13 +0100)
19 files changed:
Configure
Cross/config.sh-arm-linux
NetWare/config.wc
Porting/Glossary
Porting/config.sh
config_h.SH
configure.com
epoc/config.sh
handy.h
plan9/config_sh.sample
symbian/config.sh
uconfig.sh
win32/config.bc
win32/config.ce
win32/config.gc
win32/config.gc64
win32/config.gc64nox
win32/config.vc
win32/config.vc64

index 485a410..268964d 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -30,7 +30,7 @@
 
 # $Id: Head.U 6 2006-08-25 22:21:46Z rmanfredi $
 #
-# Generated on Fri Dec 10 12:04:58 CET 2010 [metaconfig 3.5 PL0]
+# Generated on Mon Dec 20 16:52:31 CET 2010 [metaconfig 3.5 PL0]
 # (with additional metaconfig patches by perlbug@perl.org)
 
 cat >c1$$ <<EOF
@@ -731,6 +731,7 @@ d_msg_peek=''
 d_msg_proxy=''
 d_oldsock=''
 d_scm_rights=''
+d_sin6_scope_id=''
 d_sockaddr_sa_len=''
 d_socket=''
 d_sockpair=''
@@ -1079,7 +1080,6 @@ version=''
 version_patchlevel_string=''
 perl5=''
 perladmin=''
-perlpath=''
 d_nv_preserves_uv=''
 d_nv_zero_is_allbits_zero=''
 i16size=''
@@ -8915,106 +8915,6 @@ rp='Perl administrator e-mail address'
 . ./myread
 perladmin="$ans"
 
-: determine whether to only install version-specific parts.
-echo " "
-$cat <<EOM
-Do you want to install only the version-specific parts of the perl
-distribution?  Usually you do *not* want to do this.
-EOM
-case "$versiononly" in
-"$define"|[Yy]*|true) dflt='y' ;;
-*) dflt='n';
-esac
-rp="Do you want to install only the version-specific parts of perl?"
-. ./myread
-case "$ans" in
-[yY]*) val="$define";;
-*)     val="$undef" ;;
-esac
-set versiononly
-eval $setvar
-
-case "$versiononly" in
-"$define") inc_version_list=''
-           inc_version_list_init=0
-           ;;
-esac
-
-: figure out how to guarantee perl startup
-: XXX Note that this currently takes advantage of the bug that binexp ignores
-:     the Configure -Dinstallprefix setting, which in turn means that under
-:     relocatable @INC, initialinstalllocation is what binexp started as.
-case "$startperl" in
-'')
-       case "$sharpbang" in
-       *!)
-               $cat <<EOH
-
-I can use the #! construct to start perl on your system. This will
-make startup of perl scripts faster, but may cause problems if you
-want to share those scripts and perl is not in a standard place
-($initialinstalllocation/perl) on all your platforms. The alternative
-is to force a shell by starting the script with a single ':' character.
-
-EOH
-               case "$versiononly" in
-               "$define")      dflt="$initialinstalllocation/perl$version";;
-               *)              dflt="$initialinstalllocation/perl";;
-               esac
-               rp='What shall I put after the #! to start up perl ("none" to not use #!)?'
-               . ./myread
-               case "$ans" in
-               none)   startperl=": # use perl";;
-               *)      startperl="#!$ans"
-                       if $test 30 -lt `echo "$ans" | wc -c`; then
-                               $cat >&4 <<EOM
-
-WARNING:  Some systems limit the #! command to 32 characters.
-If you experience difficulty running Perl scripts with #!, try
-installing Perl in a directory with a shorter pathname.
-
-EOM
-                       fi ;;
-               esac
-               ;;
-       *) startperl=": # use perl"
-               ;;
-       esac
-       ;;
-esac
-echo "I'll use $startperl to start perl scripts."
-
-: figure best path for perl in scripts
-case "$perlpath" in
-'')
-       case "$versiononly" in
-       "$define")      perlpath="$initialinstalllocation/perl$version";;
-       *)              perlpath="$initialinstalllocation/perl";;
-       esac
-       case "$startperl" in
-       *!*) ;;
-       *)
-               $cat <<EOH
-
-I will use the "eval 'exec'" idiom to start Perl on your system.
-I can use the full path of your Perl binary for this purpose, but
-doing so may cause problems if you want to share those scripts and
-Perl is not always in a standard place ($initialinstalllocation/perl).
-
-EOH
-               dflt="$initialinstalllocation/perl"
-               rp="What path shall I use in \"eval 'exec'\"?"
-               . ./myread
-               perlpath="$ans"
-               ;;
-       esac
-       ;;
-esac
-case "$startperl" in
-*!*)   ;;
-*)     echo "I'll use $perlpath in \"eval 'exec'\"" ;;
-esac
-
 : determine where public executable scripts go
 set scriptdir scriptdir
 eval $prefixit
@@ -9136,6 +9036,75 @@ rp='Pathname where add-on public executable scripts should be installed?'
 prefixvar=sitescript
 . ./setprefixvar
 
+: determine whether to only install version-specific parts.
+echo " "
+$cat <<EOM
+Do you want to install only the version-specific parts of the perl
+distribution?  Usually you do *not* want to do this.
+EOM
+case "$versiononly" in
+"$define"|[Yy]*|true) dflt='y' ;;
+*) dflt='n';
+esac
+rp="Do you want to install only the version-specific parts of perl?"
+. ./myread
+case "$ans" in
+[yY]*) val="$define";;
+*)     val="$undef" ;;
+esac
+set versiononly
+eval $setvar
+
+case "$versiononly" in
+"$define") inc_version_list=''
+           inc_version_list_init=0
+           ;;
+esac
+
+: figure out how to guarantee perl startup
+: XXX Note that this currently takes advantage of the bug that binexp ignores
+:     the Configure -Dinstallprefix setting, which in turn means that under
+:     relocatable @INC, initialinstalllocation is what binexp started as.
+case "$startperl" in
+'')
+       case "$sharpbang" in
+       *!)
+               $cat <<EOH
+
+I can use the #! construct to start perl on your system. This will
+make startup of perl scripts faster, but may cause problems if you
+want to share those scripts and perl is not in a standard place
+($initialinstalllocation/perl) on all your platforms. The alternative
+is to force a shell by starting the script with a single ':' character.
+
+EOH
+               case "$versiononly" in
+               "$define")      dflt="$initialinstalllocation/perl$version";;
+               *)              dflt="$initialinstalllocation/perl";;
+               esac
+               rp='What shall I put after the #! to start up perl ("none" to not use #!)?'
+               . ./myread
+               case "$ans" in
+               none)   startperl=": # use perl";;
+               *)      startperl="#!$ans"
+                       if $test 30 -lt `echo "$ans" | wc -c`; then
+                               $cat >&4 <<EOM
+
+WARNING:  Some systems limit the #! command to 32 characters.
+If you experience difficulty running Perl scripts with #!, try
+installing Perl in a directory with a shorter pathname.
+
+EOM
+                       fi ;;
+               esac
+               ;;
+       *) startperl=": # use perl"
+               ;;
+       esac
+       ;;
+esac
+echo "I'll use $startperl to start perl scripts."
+
 : Check if faststdio is requested and available
 case "$usefaststdio" in
 $define|true|[yY]*|'')
@@ -11369,6 +11338,24 @@ set d_sockaddr_sa_len; eval $setvar
 $rm_try
 
 echo " "
+echo "Checking the availability sin6_scope_id in struct sockaddr_in6 ..." >&4
+$cat >try.c <<EOF
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+int main() {
+struct sockaddr_in6 sin6;
+return (sin6.sin6_scope_id);
+}
+EOF
+val="$undef"
+set try; if eval $compile; then
+       val="$define"
+fi
+set d_sin6_scope_id; eval $setvar
+$rm_try
+
+echo " "
 echo "Checking the availability of certain socket constants..." >&4
 for ENUM in MSG_CTRUNC MSG_DONTROUTE MSG_OOB MSG_PEEK MSG_PROXY SCM_RIGHTS; do
        enum=`$echo $ENUM|./tr '[A-Z]' '[a-z]'`
@@ -22814,6 +22801,7 @@ d_sigaction='$d_sigaction'
 d_signbit='$d_signbit'
 d_sigprocmask='$d_sigprocmask'
 d_sigsetjmp='$d_sigsetjmp'
+d_sin6_scope_id='$d_sin6_scope_id'
 d_sitearch='$d_sitearch'
 d_snprintf='$d_snprintf'
 d_sockaddr_sa_len='$d_sockaddr_sa_len'
@@ -23232,7 +23220,6 @@ perl_patchlevel='$perl_patchlevel'
 perl_static_inline='$perl_static_inline'
 perladmin='$perladmin'
 perllibs='$perllibs'
-perlpath='$perlpath'
 pg='$pg'
 phostname='$phostname'
 pidtype='$pidtype'
index 4aa528d..ad66d9d 100644 (file)
@@ -444,6 +444,7 @@ d_sigaction='define'
 d_signbit='define'
 d_sigprocmask='define'
 d_sigsetjmp='define'
+d_sin6_scope_id='undef'
 d_sitearch='define'
 d_snprintf='undef'
 d_sockaddr_sa_len='undef'
index 3f6d511..2c2d1aa 100644 (file)
@@ -435,6 +435,7 @@ d_sigaction='undef'
 d_signbit='undef'
 d_sigprocmask='undef'
 d_sigsetjmp='undef'
+d_sin6_scope_id='undef'
 d_sitearch='undef'
 d_snprintf='undef'
 d_sockaddr_sa_len='undef'
index dcf6a15..bc8e605 100644 (file)
@@ -2071,6 +2071,11 @@ d_sigsetjmp (d_sigsetjmp.U):
        which indicates that the sigsetjmp() routine is available to
        call setjmp() and optionally save the process's signal mask.
 
+d_sin6_scope_id (d_socket.U):
+       This variable conditionally defines the HAS_SIN6_SCOPE_ID symbol, which
+       indicates that a struct sockaddr_in6 structure has the sin6_scope_id
+       member.
+
 d_sitearch (sitearch.U):
        This variable conditionally defines SITEARCH to hold the pathname
        of architecture-dependent library files for $package.  If
@@ -4150,17 +4155,6 @@ perllibs (End.U):
        The list of libraries needed by Perl only (any libraries needed
        by extensions only will by dropped, if using dynamic loading).
 
-perlpath (perlpath.U):
-       This variable contains the eventual value of the PERLPATH symbol,
-       which contains the name of the perl interpreter to be used in
-       shell scripts and in the "eval 'exec'" idiom.  This variable is
-       not necessarily the pathname of the file containing the perl
-       interpreter; you must append the executable extension (_exe) if
-       it is not already present.  Note that Perl code that runs during
-       the Perl build process cannot reference this variable, as Perl
-       may not have been installed, or even if installed, may be a
-       different version of Perl.
-
 pg (Loc.U):
        This variable is used internally by Configure to determine the
        full pathname (if any) of the pg program.  After Configure runs,
index 04a4499..d7089d4 100644 (file)
@@ -459,6 +459,7 @@ d_sigaction='define'
 d_signbit='define'
 d_sigprocmask='define'
 d_sigsetjmp='define'
+d_sin6_scope_id='undef'
 d_sitearch='define'
 d_snprintf='define'
 d_sockaddr_sa_len='undef'
index 4dd9701..14f6b0e 100755 (executable)
@@ -2794,6 +2794,10 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
  *     structure has a member called sa_len, indicating the length of
  *     the structure.
  */
+/* HAS_SIN6_SCOPE_ID:
+ *     This symbol, if defined, indicates that the struct sockaddr_in6
+ *     structure has a member called sin6_scope_id.
+ */
 #$d_socket     HAS_SOCKET              /**/
 #$d_sockpair   HAS_SOCKETPAIR  /**/
 #$d_sockaddr_sa_len    HAS_SOCKADDR_SA_LEN     /**/
@@ -2803,6 +2807,7 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
 #$d_msg_peek   HAS_MSG_PEEK    /**/
 #$d_msg_proxy  HAS_MSG_PROXY   /**/
 #$d_scm_rights HAS_SCM_RIGHTS  /**/
+#$d_sin6_scope_id      HAS_SIN6_SCOPE_ID       /**/
 
 /* USE_STAT_BLOCKS:
  *     This symbol is defined if this system has a stat structure declaring
index 59aa4c5..223077c 100644 (file)
@@ -6264,6 +6264,7 @@ $ WC "d_sigaction='" + d_sigaction + "'"
 $ WC "d_signbit='" + d_signbit + "'"
 $ WC "d_sigprocmask='" + d_sigprocmask + "'"
 $ WC "d_sigsetjmp='" + d_sigsetjmp + "'"
+$ WC "d_sin6_scope_id='undef'"
 $ WC "d_sitearch='define'"
 $ WC "d_sockaddr_sa_len='" + d_sockaddr_sa_len + "'"
 $ WC "d_sockatmark='undef'"
index 5dff73a..54f858b 100644 (file)
@@ -424,6 +424,7 @@ d_shmget='undef'
 d_sigaction='undef'
 d_sigprocmask='undef'
 d_sigsetjmp='undef'
+d_sin6_scope_id='undef'
 d_snprintf='undef'
 d_sockaddr_sa_len='undef'
 d_sockatmark='undef'
diff --git a/handy.h b/handy.h
index df21533..b1f325d 100644 (file)
--- a/handy.h
+++ b/handy.h
@@ -215,7 +215,7 @@ typedef U64TYPE U64;
  * HAS_CTIME64 HAS_LOCALTIME64 HAS_GMTIME64    HAS_DIFFTIME64
  * HAS_MKTIME64        HAS_ASCTIME64   HAS_GETADDRINFO HAS_GETNAMEINFO
  * HAS_INETNTOP        HAS_INETPTON    CHARBITS        HAS_PRCTL
- * HAS_SOCKADDR_SA_LEN
+ * HAS_SOCKADDR_SA_LEN HAS_SIN6_SCOPE_ID
  * Not (yet) used at top level, but mention them for metaconfig
  */
 
index ac3c25b..3e569ef 100644 (file)
@@ -444,6 +444,7 @@ d_sigaction='define'
 d_signbit='define'
 d_sigprocmask='define'
 d_sigsetjmp='define'
+d_sin6_scope_id='undef'
 d_sitearch='define'
 d_snprintf='undef'
 d_sockaddr_sa_len='undef'
index ff9e742..7e47f62 100644 (file)
@@ -390,6 +390,7 @@ d_sigaction='undef'
 d_signbit='undef'
 d_sigprocmask='undef'
 d_sigsetjmp='undef'
+d_sin6_scope_id='undef'
 d_sitearch='define'
 d_sitecustomize='undef'
 d_snprintf='undef'
index 0c2eea9..c05661e 100644 (file)
@@ -384,6 +384,7 @@ d_sigaction='undef'
 d_signbit='undef'
 d_sigprocmask='undef'
 d_sigsetjmp='undef'
+d_sin6_scope_id='undef'
 d_sitearch='undef'
 d_snprintf='undef'
 d_sockaddr_sa_len='undef'
index c73e1ff..b682785 100644 (file)
@@ -432,6 +432,7 @@ d_sigaction='undef'
 d_signbit='undef'
 d_sigprocmask='undef'
 d_sigsetjmp='undef'
+d_sin6_scope_id='undef'
 d_sitearch='define'
 d_snprintf='define'
 d_sockaddr_sa_len='undef'
index 48c35a8..5f87f64 100644 (file)
@@ -435,6 +435,7 @@ d_sigaction='undef'
 d_signbit='undef'
 d_sigprocmask='undef'
 d_sigsetjmp='undef'
+d_sin6_scope_id='undef'
 d_sitearch='define'
 d_snprintf='undef'
 d_sockaddr_sa_len='undef'
index 4225d8a..eef269a 100644 (file)
@@ -432,6 +432,7 @@ d_sigaction='undef'
 d_signbit='undef'
 d_sigprocmask='undef'
 d_sigsetjmp='undef'
+d_sin6_scope_id='undef'
 d_sitearch='define'
 d_snprintf='define'
 d_sockaddr_sa_len='undef'
index dbe8da2..d890a3e 100644 (file)
@@ -432,6 +432,7 @@ d_sigaction='undef'
 d_signbit='undef'
 d_sigprocmask='undef'
 d_sigsetjmp='undef'
+d_sin6_scope_id='undef'
 d_sitearch='define'
 d_snprintf='define'
 d_sockaddr_sa_len='undef'
index 73b49f9..b47228d 100644 (file)
@@ -432,6 +432,7 @@ d_sigaction='undef'
 d_signbit='undef'
 d_sigprocmask='undef'
 d_sigsetjmp='undef'
+d_sin6_scope_id='undef'
 d_sitearch='define'
 d_snprintf='define'
 d_sockaddr_sa_len='undef'
index c3fc462..94a04fc 100644 (file)
@@ -432,6 +432,7 @@ d_sigaction='undef'
 d_signbit='undef'
 d_sigprocmask='undef'
 d_sigsetjmp='undef'
+d_sin6_scope_id='undef'
 d_sitearch='define'
 d_snprintf='define'
 d_sockaddr_sa_len='undef'
index 5ffa1d5..567ddab 100644 (file)
@@ -432,6 +432,7 @@ d_sigaction='undef'
 d_signbit='undef'
 d_sigprocmask='undef'
 d_sigsetjmp='undef'
+d_sin6_scope_id='undef'
 d_sitearch='define'
 d_snprintf='define'
 d_sockaddr_sa_len='undef'