Intermediate update/regen in cleanup process, dtrace support
authorH.Merijn Brand <h.m.brand@xs4all.nl>
Mon, 14 Jan 2008 16:37:08 +0000 (16:37 +0000)
committerH.Merijn Brand <h.m.brand@xs4all.nl>
Mon, 14 Jan 2008 16:37:08 +0000 (16:37 +0000)
is now backported

p4raw-id: //depot/perl@32974

Configure
Porting/Glossary
config_h.SH

index 712b458..3658695 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -25,7 +25,7 @@
 
 # $Id: Head.U 6 2006-08-25 22:21:46Z rmanfredi $
 #
-# Generated on Wed Jan  9 22:02:14 CET 2008 [metaconfig 3.0 PL70]
+# Generated on Mon Jan 14 17:33:05 CET 2008 [metaconfig 3.0 PL70]
 # (with additional metaconfig patches by perlbug@perl.org)
 
 cat >c1$$ <<EOF
@@ -238,7 +238,6 @@ cpio=''
 cpp=''
 csh=''
 date=''
-dtrace=''
 echo=''
 egrep=''
 emacs=''
@@ -1175,6 +1174,8 @@ uidtype=''
 archname64=''
 use64bitall=''
 use64bitint=''
+dtrace=''
+usedtrace=''
 usefaststdio=''
 ccflags_uselargefiles=''
 ldflags_uselargefiles=''
@@ -1194,7 +1195,6 @@ use5005threads=''
 useithreads=''
 usereentrant=''
 usethreads=''
-usedtrace=''
 incpath=''
 mips_type=''
 usrinc=''
@@ -1237,6 +1237,7 @@ yacc=''
 yaccflags=''
 CONFIG=''
 
+: Detect odd OSs
 define='define'
 undef='undef'
 smallmach='pdp11 i8086 z8000 i80286 iAPX286'
@@ -1732,7 +1733,7 @@ touch optdef.sh
 touch posthint.sh
 
 : set package name
-package=perl5
+package='perl5'
 first=`echo $package | sed -e 's/^\(.\).*/\1/'`
 last=`echo $package | sed -e 's/^.\(.*\)/\1/'`
 case "`echo AbyZ | tr '[:lower:]' '[:upper:]' 2>/dev/null`" in
@@ -1778,11 +1779,11 @@ case "$src" in
 '')    src=/
        rsrc=/
        ;;
-/*) rsrc="$src";;
-*) rsrc="../$src";;
+/*)    rsrc="$src";;
+*)     rsrc="../$src";;
 esac
 if test -f $rsrc/Configure && \
-       $contains "^package=$package$" $rsrc/Configure >/dev/null 2>&1
+       $contains "^package='$package'\$" $rsrc/Configure >/dev/null 2>&1
 then
    : found it, so we are ok.
 else
@@ -2670,7 +2671,7 @@ case "$lns" in
 esac
 echo " "
 
-
+: Make symlinks util
 case "$mksymlinks" in
 $define|true|[yY]*)
        case "$src" in
@@ -3901,12 +3902,12 @@ esac
 prefix="$ans"
 prefixexp="$ansexp"
 
+: is AFS running?
 case "$afsroot" in
 '')    afsroot=/afs ;;
 *)     afsroot=$afsroot ;;
 esac
 
-: is AFS running?
 echo " "
 case "$afs" in
 $define|true)  afs=true ;;
@@ -4021,6 +4022,7 @@ $undef$define) . ./whoa; eval "$var=\$tu";;
 *) eval "$var=$val";;
 esac'
 
+: Check is we will use socks
 case "$usesocks" in
 $define|true|[yY]*)    dflt='y';;
 *) dflt='n';;
@@ -4046,6 +4048,7 @@ case "$usesocks" in
 $define|true|[yY]*) useperlio="$define";;
 esac
 
+: Check if we want perlio
 case "$useperlio" in
 $define|true|[yY]*|'') dflt='y';;
 *) dflt='n';;
@@ -4064,16 +4067,16 @@ EOM
 rp='Use the PerlIO abstraction layer?'
 . ./myread
 case "$ans" in
-y|Y) 
+y|Y)
        val="$define"
        ;;
-*)      
+*)
        echo "Ok, doing things the stdio way."
        val="$undef"
        ;;
 esac
 set useperlio
-eval $setvar 
+eval $setvar
 
 case "$usesocks" in
 $define|true|[yY]*)
@@ -4090,7 +4093,6 @@ EOM
        ;;
 esac
 
-       
 : get the patchlevel
 echo " "
 echo "Getting the current patchlevel..." >&4
@@ -4297,6 +4299,7 @@ EOM
     esac
 fi
 
+: Check if multiplicity is required
 cat <<EOM
 
 Perl can be built so that multiple Perl interpreters can coexist
@@ -4327,7 +4330,7 @@ esac
 set usemultiplicity
 eval $setvar
 
-
+: Check if morebits is requested
 case "$usemorebits" in
 "$define"|true|[yY]*)
        use64bitint="$define"
@@ -4433,6 +4436,7 @@ chmod +x bsd usg v7 osf1 eunice xenix venix os2
 $eunicefix bsd usg v7 osf1 eunice xenix venix os2
 $rm -f foo
 
+: Checking the C compiler
 case "$cc" in
 '') dflt=cc;;
 *) dflt="$cc";;
@@ -4846,6 +4850,7 @@ case "$firstmakefile" in
 '') firstmakefile='makefile';;
 esac
 
+: Check for uselongdouble support
 case "$ccflags" in
 *-DUSE_LONG_DOUBLE*|*-DUSE_MORE_BITS*) uselongdouble="$define" ;;
 esac
@@ -5702,7 +5707,7 @@ case "$quadtype" in
        ;;
 esac
 
-
+: Do we want 64bit support
 case "$uselonglong" in
 "$define"|true|[yY]*)
        cat <<EOM >&4
@@ -7057,6 +7062,88 @@ EOM
        ;;
 esac
 
+: DTrace support
+dflt_dtrace='/usr/sbin/dtrace'
+cat <<EOM
+
+Perl can be built to support DTrace on platforms that support it.
+DTrace is a diagnosis and performance analysis tool from Sun.
+
+If this doesn't make any sense to you, just accept the default '$dflt'.
+EOM
+
+while $test 1 ; do
+       case "$usedtrace" in
+       $define|true|[yY]*)
+               dflt='y'
+               ;;
+       ?*)
+               dflt='y'
+               dflt_dtrace=$usedtrace
+               ;;
+       *)
+               dflt='n'
+               ;;
+       esac
+
+       rp='Support DTrace if available?'
+       . ./myread
+       case "$ans" in
+       y|Y)    val="$define" ;;
+       *)      val="$undef" ;;
+       esac
+       set usedtrace
+       eval $setvar
+
+       test "X$usedtrace" != "X$define" && break
+
+       echo " "
+       rp='Where is the dtrace executable?'
+       dflt=$dflt_dtrace
+       . ./getfile
+       val="$ans"
+       set dtrace
+       eval $setvar
+
+       if $test -f $dtrace
+       then
+               if $dtrace -h -s ../perldtrace.d \
+                       -o perldtrace.tmp >/dev/null 2>&1 \
+                       && rm -f perldtrace.tmp
+               then
+                       echo " "
+                       echo "Good: your $dtrace knows about the -h flag."
+               else
+                       cat >&2 <<EOM
+
+*** $me:  Fatal Error:  $dtrace doesn't support -h flag
+***
+*** Your installed dtrace doesn't support the -h switch to compile a D
+*** program into a C header. Can't continue.
+
+EOM
+                       exit 1
+               fi
+               break;
+       fi
+
+       case "$fastread" in
+       yes)
+               cat >&2 <<EOM
+
+*** $me:  Fatal Error:  $dtrace not found.
+*** Can't continue.
+
+EOM
+               exit 1
+               ;;
+       *)
+               echo "*** $dtrace was not found."
+               echo " "
+               ;;
+       esac
+done
+
 : See if we want extra modules installed
 echo " "
 case "$extras" in
@@ -7333,9 +7420,9 @@ case "$nm_so_opt" in
        ;;
 esac
 
+: get list of predefined functions in a handy place
 case "$runnm" in
 true)
-: get list of predefined functions in a handy place
 echo " "
 case "$libc" in
 '') libc=unknown
@@ -7962,6 +8049,7 @@ EOM
     ;;
 esac
 
+: Do we want a shared libperl?
 also=''
 case "$usedl" in
 $undef)
@@ -8114,7 +8202,7 @@ shrpdir=$archlibexp/CORE
 xxx=''
 tmp_shrpenv=''
 if "$useshrplib"; then
-    case "$osname" in 
+    case "$osname" in
        aix)
                # We'll set it in Makefile.SH...
                ;;
@@ -8143,7 +8231,7 @@ if "$useshrplib"; then
        esac
        case "$xxx" in
        '') ;;
-       *)      
+       *)
                # Only add $xxx if it isn't already in ccdlflags.
                case " $ccdlflags " in
                *" $xxx "*)     ;;
@@ -8151,7 +8239,7 @@ if "$useshrplib"; then
                        cat <<EOM >&4
 
 Adding $xxx to the flags
-passed to $ld so that the perl executable will find the 
+passed to $ld so that the perl executable will find the
 installed shared $libperl.
 
 EOM
@@ -8649,6 +8737,7 @@ case "$phostname" in
        ;;
 esac
 
+: Ask for e-mail
 $cat <<EOM
 
 I need to get your e-mail address in Internet format if possible, i.e.
@@ -8684,6 +8773,7 @@ while test "$cont"; do
        esac
 done
 
+: Ask e-mail of administrator
 $cat <<EOM
 
 If you or somebody else will be maintaining perl at your site, please
@@ -8922,6 +9012,7 @@ rp='Pathname where add-on public executable scripts should be installed?'
 prefixvar=sitescript
 . ./setprefixvar
 
+: Check if faststdio is requested and available
 case "$usefaststdio" in
 $define|true|[yY]*|'')
        xversion=`awk '/define[         ]+PERL_VERSION/ {print $3}' $rsrc/patchlevel.h`
@@ -8945,93 +9036,12 @@ EOM
 rp='Use the "fast stdio" if available?'
 . ./myread
 case "$ans" in
-y|Y)   val="$define" ;;     
+y|Y)   val="$define" ;;
 *)      val="$undef" ;;
 esac
 set usefaststdio
 eval $setvar
 
-: DTrace support
-dflt_dtrace='/usr/sbin/dtrace'
-cat <<EOM
-
-Perl can be built to support DTrace on platforms that support it.
-DTrace is a diagnosis and performance analysis tool from Sun.
-
-If this doesn't make any sense to you, just accept the default '$dflt'.
-EOM
-
-while $test 1 ; do
-       case "$usedtrace" in
-       $define|true|[yY]*) 
-               dflt='y' 
-               ;;
-       ?*)
-               dflt='y' 
-               dflt_dtrace=$usedtrace
-               ;;
-       *) 
-               dflt='n' 
-               ;;
-       esac
-
-       rp='Support DTrace if available?'
-       . ./myread
-       case "$ans" in
-       y|Y)    val="$define" ;;
-       *)      val="$undef" ;;
-       esac
-       set usedtrace
-       eval $setvar
-
-       test "X$usedtrace" != "X$define" && break
-
-       echo " "
-       rp='Where is the dtrace executable?'
-       dflt=$dflt_dtrace
-       . ./getfile
-       val="$ans"
-       set dtrace
-       eval $setvar
-       
-       if $test -f $dtrace
-       then
-               if $dtrace -h -s ../perldtrace.d \
-                       -o perldtrace.tmp >/dev/null 2>&1 \
-                       && rm -f perldtrace.tmp
-               then
-                       echo " "
-                       echo "Good: your $dtrace knows about the -h flag."
-               else
-                       cat >&2 <<EOM
-
-*** $me:  Fatal Error:  $dtrace doesn't support -h flag
-***
-*** Your installed dtrace doesn't support the -h switch to compile a D
-*** program into a C header. Can't continue.
-
-EOM
-                       exit 1
-               fi
-               break;
-       fi
-
-       case "$fastread" in
-       yes)
-               cat >&2 <<EOM
-
-*** $me:  Fatal Error:  $dtrace not found.
-*** Can't continue.
-
-EOM
-               exit 1
-               ;;
-       *)
-               echo "*** $dtrace was not found."
-               echo " "
-               ;;
-       esac
-done
 
 : define an is-a-typedef? function
 typedef='type=$1; var=$2; def=$3; shift; shift; shift; inclist=$@;
@@ -9914,6 +9924,7 @@ EOSH
 chmod +x protochk
 $eunicefix protochk
 
+: Define hasproto macro for Configure internal use
 hasproto='varname=$1; func=$2; shift; shift;
 while $test $# -ge 2; do
        case "$1" in
@@ -9941,6 +9952,7 @@ eval $inhdr
 set sys/select.h i_sysselct
 eval $inhdr
 
+: Define hasfield macro for Configure internal use
 hasfield='varname=$1; struct=$2; field=$3; shift; shift; shift;
 while $test $# -ge 2; do
        case "$1" in
@@ -11039,6 +11051,7 @@ eval $inlibc
 set clearenv d_clearenv
 eval $inlibc
 
+: Define hasstruct macro for Configure internal use
 hasstruct='varname=$1; struct=$2; shift; shift;
 while $test $# -ge 2; do
        case "$1" in
@@ -11057,9 +11070,9 @@ set $varname;
 eval $setvar;
 $rm_try'
 
+: see whether socket exists
 socketlib=''
 sockethdr=''
-: see whether socket exists
 echo " "
 $echo $n "Hmm... $c" >&4
 if set socket val -f d_socket; eval $csym; $val; then
@@ -11144,7 +11157,7 @@ done
 set sys/uio.h i_sysuio
 eval $inhdr
 
-
+: Check for cmsghdr support
 echo " "
 echo "Checking to see if your system supports struct cmsghdr..." >&4
 set d_cmsghdr_s cmsghdr $i_systypes sys/types.h $d_socket sys/socket.h $i_sysuio sys/uio.h
@@ -11632,6 +11645,7 @@ runnm="$xxx_runnm"
 set dlfcn.h i_dlfcn
 eval $inhdr
 
+: Check what extension to use for shared libs
 case "$usedl" in
 $define|y|true)
        $cat << EOM
@@ -13052,7 +13066,6 @@ eval $inlibc
 set fpclassl d_fpclassl
 eval $inlibc
 
-
 : check for fpos64_t
 echo " "
 echo "Checking to see if you have fpos64_t..." >&4
@@ -13087,7 +13100,7 @@ eval $inhdr
 set sys/mount.h i_sysmount
 eval $inhdr
 
-
+: Check for fs_data_s
 echo " "
 echo "Checking to see if your system supports struct fs_data..." >&4
 set d_fs_data_s fs_data $i_systypes sys/types.h $i_sysparam sys/param.h $i_sysmount sys/mount.h
@@ -13108,12 +13121,10 @@ esac
 set fsetpos d_fsetpos
 eval $inlibc
 
-
 : see if fstatfs exists
 set fstatfs d_fstatfs
 eval $inlibc
 
-
 : see if statvfs exists
 set statvfs d_statvfs
 eval $inlibc
@@ -13177,7 +13188,6 @@ eval $inlibc
 set getespwnam d_getespwnam
 eval $inlibc
 
-
 : see if getfsstat exists
 set getfsstat d_getfsstat
 eval $inlibc
@@ -13923,6 +13933,7 @@ eval $hasproto
 set getpagesize d_getpagsz
 eval $inlibc
 
+: Optional checks for getprotobyname and getprotobynumber
 
 : see if getprotobyname exists
 set getprotobyname d_getpbyname
@@ -14283,6 +14294,7 @@ case "$d_getpwuid_r" in
        ;;
 esac
 
+: Optional checks for getsbyname and getsbyport
 
 : see if getservbyname exists
 set getservbyname d_getsbyname
@@ -15185,7 +15197,7 @@ fi
 set d_msg
 eval $setvar
 
-
+: Check for msghdr_s
 echo " "
 echo "Checking to see if your system supports struct msghdr..." >&4
 set d_msghdr_s msghdr $i_systypes sys/types.h $d_socket sys/socket.h $i_sysuio sys/uio.h
@@ -15781,7 +15793,6 @@ eval $setvar
 set pthread_attr_setscope d_pthread_attr_setscope
 eval $inlibc
 
-
 : see whether the various POSIXish _yields exist
 $cat >try.c <<EOP
 #include <pthread.h>
@@ -16906,7 +16917,6 @@ eval $inlibc
 set sfio.h i_sfio
 eval $inhdr
 
-
 : see if sfio library is available
 case "$i_sfio" in
 $define)
@@ -17424,24 +17434,21 @@ eval $hasproto
 set sys/stat.h i_sysstat
 eval $inhdr
 
-
 : see if stat knows about block sizes
 echo " "
 echo "Checking to see if your struct stat has st_blocks field..." >&4
 set d_statblks stat st_blocks $i_sysstat sys/stat.h
 eval $hasfield
 
-
 : see if this is a sys/vfs.h system
 set sys/vfs.h i_sysvfs
 eval $inhdr
 
-
 : see if this is a sys/statfs.h system
 set sys/statfs.h i_sysstatfs
 eval $inhdr
 
-
+: Check for statfs_s
 echo " "
 echo "Checking to see if your system supports struct statfs..." >&4
 set d_statfs_s statfs $i_systypes sys/types.h $i_sysparam sys/param.h $i_sysmount sys/mount.h $i_sysvfs sys/vfs.h $i_sysstatfs sys/statfs.h
@@ -17452,10 +17459,9 @@ case "$d_statfs_s" in
 esac
 
 
-
 : see if struct statfs knows about f_flags
 case "$d_statfs_s" in
-define)        
+define)
        echo " "
        echo "Checking to see if your struct statfs has f_flags field..." >&4
        set d_statfs_f_flags statfs f_flags $i_systypes sys/types.h $i_sysparam sys/param.h $i_sysmount sys/mount.h $i_sysvfs sys/vfs.h $i_sysstatfs sys/statfs.h
@@ -19118,7 +19124,7 @@ We won't be flushing handles at all before fork/exec/popen.
 EOM
        ;;
 esac
-$rm_try
+$rm_try tryp
 
 : Store the full pathname to the ar program for use in the C program
 : Respect a hint or command line value for full_ar.
@@ -19383,7 +19389,7 @@ case "$sPRId64" in
        ;;
 esac
 
-
+: Check format strings for internal types
 echo " "
 $echo "Checking the format strings to be used for Perl's internal types..." >&4
 
@@ -19442,6 +19448,7 @@ case "$ivdformat" in
     ;;
 esac
 
+: Check format string for GID
 
 echo " "
 $echo "Checking the format string to be used for gids..." >&4
@@ -19489,7 +19496,6 @@ eval $inlibc
 set setgroups d_setgrps
 eval $inlibc
 
-
 : Find type of 2nd arg to 'getgroups()' and 'setgroups()'
 echo " "
 case "$d_getgrps$d_setgrps" in
@@ -20553,7 +20559,7 @@ else
 fi
 
 
-
+: Check format string for UID
 echo " "
 $echo "Checking the format string to be used for uids..." >&4
 
@@ -20592,7 +20598,7 @@ case "$uidsign" in
        ;;
 esac
 
-
+: Check if site customization support was requested
 case "$usesitecustomize" in
     $define|true|[Yy]*)
        usesitecustomize="$define"
@@ -20633,7 +20639,6 @@ case "$yacc" in
        ;;
 esac
 
-
 : see if this is a assert.h system
 set assert.h i_assert
 eval $inhdr
 set i_syssockio
 eval $setvar
 
-
 : see if this is a syslog.h system
 set syslog.h i_syslog
 eval $inhdr
 
-
 : see if this is a sys/mode.h system
 set sys/mode.h i_sysmode
 eval $inhdr
@@ -21116,7 +21119,6 @@ eval $inhdr
 set sys/un.h i_sysun
 eval $inhdr
 
-
 : see if this is a sys/utsname.h system
 set sys/utsname.h i_sysutsname
 eval $inhdr
index 5b3c99b..fcb14e8 100644 (file)
@@ -2414,13 +2414,13 @@ drand48_r_proto (d_drand48_r.U):
        REENTRANT_PROTO_T_ABC macros of reentr.h if d_drand48_r
        is defined.
 
+dtrace (usedtrace.U):
+       This variable holds the location of the dtrace executable.
+
 dynamic_ext (Extensions.U):
        This variable holds a list of XS extension files we want to
        link dynamically into the package.  It is used by Makefile.
 
-dtrace (dtrace.U):
-       This variable holds the location of the dtrace executable.
-
 eagain (nblock_io.U):
        This variable bears the symbolic errno code set by read() when no
        data is present on the file and non-blocking I/O was enabled (otherwise,
@@ -4542,9 +4542,9 @@ srandom_r_proto (d_srandom_r.U):
        is defined.
 
 src (src.U):
-       This variable holds the path to the package source. It is up to
-       the Makefile to use this variable and set VPATH accordingly to
-       find the sources remotely.
+       This variable holds the (possibly relative) path of the package source.
+       It is up to the Makefile to use this variable and set VPATH accordingly
+       to find the sources remotely.  Use $pkgsrc to have an absolute path.
 
 sSCNfldbl (longdblfio.U):
        This variable, if defined, contains the string used by stdio to
@@ -4791,9 +4791,9 @@ usedl (dlsrc.U):
        This variable indicates if the system supports dynamic
        loading of some sort.  See also dlsrc and dlobj.
 
-usedtrace (trace.U):
-       This variable indicates whether we are compiling with dtrace support.
-       See also dtrace.
+usedtrace (usedtrace.U):
+       This variable indicates whether we are compiling with dtrace
+       support. See also dtrace.
 
 usefaststdio (usefaststdio.U):
        This variable conditionally defines the USE_FAST_STDIO symbol,
index a9b6265..a69a2e3 100644 (file)
@@ -3,6 +3,7 @@
 #
 # See Porting/config_h.pl
 
+: Set up for generating config_h.SH
 case "$CONFIG_SH" in
 '') CONFIG_SH=config.sh ;;
 esac
@@ -959,7 +960,7 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
                /* If you can get stringification with catify, tell me how! */
 #endif
 #if $cpp_stuff == 42
-#define PeRl_CaTiFy(a, b)      a ## b  
+#define PeRl_CaTiFy(a, b)      a ## b
 #define PeRl_StGiFy(a) #a
 /* the additional level of indirection enables these macros to be
  * used as arguments to other macros.  See K&R 2nd ed., page 231. */
@@ -2800,12 +2801,6 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
 #$d_oldpthreads        OLD_PTHREADS_API                /**/
 #$usereentrant USE_REENTRANT_API       /**/
 
-/* USE_DTRACE
- *     This symbol, if defined, indicates that Perl should
- *     be built with support for DTrace.
- */
-#$usedtrace USE_DTRACE                 /**/
-
 /* PERL_VENDORARCH:
  *     If defined, this symbol contains the name of a private library.
  *     The library is private in the sense that it needn't be in anyone's
@@ -2993,6 +2988,7 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
 #if defined(HAS_GNULIBC) && !defined(_GNU_SOURCE)
 #   define _GNU_SOURCE
 #endif
+
 /* HAS_ISASCII:
  *     This manifest constant lets the C program know that isascii
  *     is available.
@@ -4440,7 +4436,6 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
 #ifndef USE_64_BIT_INT
 #$use64bitint  USE_64_BIT_INT          /**/
 #endif
-
 #ifndef USE_64_BIT_ALL
 #$use64bitall  USE_64_BIT_ALL          /**/
 #endif