Change 33904 by [EMAIL PROTECTED] on 2008/05/21 16:37:54

        
        Integrate:
        [ 33631]
        Subject: [PATCH] Re: Change 33598: [PATCH] Re: Smoke [5.11.0] 33456 
PASS darwin 9.2.0 (macppcG5/1 cpu)
        From: "Jerry D. Hedden" <[EMAIL PROTECTED]>
        Date: Wed, 2 Apr 2008 13:45:26 -0400
        Message-ID: <[EMAIL PROTECTED]>
        
        [ 33757]
        Use File::Find rather than shell globbing to get the list of *.pm files
        to pass to AutoSplit::autosplit_lib_modules(). This way we only need to
        invoke miniperl once, and we don't miss anything that is 3 or more
        levels deep.
        
        [ 33843]
        Subject: [perl #54120] [PATCH] [metaconfig] Need more -fstack-protector 
        From: Andy Dougherty (via RT) <[EMAIL PROTECTED]>
        Date: Tue, 13 May 2008 09:37:07 -0700
        Message-ID: <[EMAIL PROTECTED]>
        
        [ 33845]
        Subject: [PATCH] Re: [perl #50180] NDBM_File fails to build 
        From: Andy Dougherty <[EMAIL PROTECTED]>
        Date: Tue, 13 May 2008 12:28:45 -0400 (EDT)
        Message-ID: <[EMAIL PROTECTED]>
        
        [ 33887]
        Subject: Re: Change 33843: [perl #54120] [PATCH] [metaconfig] Need more 
-fstack-protector
        From: Andy Dougherty <[EMAIL PROTECTED]>
        Date: Tue, 20 May 2008 11:21:14 -0400 (EDT)
        Message-ID: <[EMAIL PROTECTED]>

Affected files ...

... //depot/maint-5.10/perl/Configure#9 integrate
... //depot/maint-5.10/perl/Makefile.SH#5 integrate
... //depot/maint-5.10/perl/Porting/Glossary#7 integrate
... //depot/maint-5.10/perl/config_h.SH#7 integrate
... //depot/maint-5.10/perl/ext/NDBM_File/NDBM_File.xs#2 integrate
... //depot/maint-5.10/perl/hints/linux.sh#2 integrate

Differences ...

==== //depot/maint-5.10/perl/Configure#9 (xtext) ====
Index: perl/Configure
--- perl/Configure#8~33894~     2008-05-20 16:39:57.000000000 -0700
+++ perl/Configure      2008-05-21 09:37:54.000000000 -0700
@@ -25,7 +25,7 @@
 
 # $Id: Head.U 6 2006-08-25 22:21:46Z rmanfredi $
 #
-# Generated on Sun Mar 30 11:17:56 CEST 2008 [metaconfig 3.5 PL0]
+# Generated on Tue May 20 17:29:22 CEST 2008 [metaconfig 3.5 PL0]
 # (with additional metaconfig patches by [EMAIL PROTECTED])
 
 cat >c1$$ <<EOF
@@ -873,6 +873,9 @@
 i_math=''
 i_memory=''
 i_mntent=''
+d_ndbm=''
+i_gdbm_ndbm=''
+i_gdbmndbm=''
 i_ndbm=''
 i_netdb=''
 i_neterrno=''
@@ -5119,7 +5122,7 @@
        # as that way the compiler can do the right implementation dependant
        # thing. (NWC)
        case "$gccversion" in
-       ?*)     set stack-protector -fstack-protector 'ldflags="$ldflags 
-fstack-protector"'
+       ?*)     set stack-protector -fstack-protector
                eval $checkccflag
                ;;
        esac
@@ -5261,6 +5264,15 @@
        ;;
 *) dflt="$ldflags";;
 esac
+# See note above about -fstack-protector
+case "$ccflags" in
+*-fstack-protector*) 
+       case "$dflt" in
+       *-fstack-protector*) ;; # Don't add it again
+       *) dflt="$dflt -fstack-protector" ;; 
+       esac
+       ;;
+esac
 
 : Try to guess additional flags to pick up local libraries.
 for thislibdir in $libpth; do
@@ -6567,7 +6579,7 @@
 $cat >try.c <<EOCP
 #include <stdlib.h>
 #include <malloc.h>
-$i_mallocmalloc I_MALLOCMALLOC
+#$i_mallocmalloc I_MALLOCMALLOC
 #ifdef I_MALLOCMALLOC
 # include <malloc/malloc.h>
 #endif
@@ -8023,6 +8035,16 @@
        ''|' ') dflt='none' ;;
        esac
 
+       case "$ldflags" in
+       *-fstack-protector*)
+           case "$dflt" in
+                       *-fstack-protector*) ;; # Don't add it again
+                       *) dflt="$dflt -fstack-protector" ;; 
+               esac
+               ;;
+       esac
+
+
     rp="Any special flags to pass to $ld to create a dynamically loaded 
library?"
     . ./myread
     case "$ans" in
@@ -20780,6 +20802,35 @@
 set i_gdbm
 eval $setvar
 
+: see if ndbm.h is available
+set ndbm.h i_ndbm
+eval $inhdr
+: Compatibility location for RedHat 7.1
+set gdbm/ndbm.h i_gdbmndbm
+eval $inhdr
+: Compatibility location for Debian 4.0
+set gdbm-ndbm.h i_gdbm_ndbm
+eval $inhdr
+
+if $test "$i_ndbm" = "$define" -o "$i_gdbmndbm" = "$define" -o "$i_gdbm_ndbm" 
= "$define"; then
+       : see if dbm_open exists
+       set dbm_open d_dbm_open
+       eval $inlibc
+       case "$d_dbm_open" in
+       $undef)
+               i_ndbm="$undef"
+               i_gdbmndbm="$undef"
+               i_gdbm_ndbm="$undef"
+               echo "We won't be including <ndbm.h>"
+           val="$undef"
+               ;;
+       *) val="$define"
+          ;;
+       esac
+fi
+set d_ndbm
+eval $setvar
+
 : see if this is a ieeefp.h system
 case "$i_ieeefp" in
 '' ) set ieeefp.h i_ieeefp
@@ -20803,40 +20854,6 @@
 set mntent.h i_mntent
 eval $inhdr
 
-: see if ndbm.h is available
-set ndbm.h t_ndbm
-eval $inhdr
-
-case "$t_ndbm" in
-$undef)
-    # Some Linux distributions such as RedHat 7.1 put the
-    # ndbm.h header in /usr/include/gdbm/ndbm.h.
-    if $test -f /usr/include/gdbm/ndbm.h; then
-       echo '<gdbm/ndbm.h> found.'
-        ccflags="$ccflags -I/usr/include/gdbm"
-        cppflags="$cppflags -I/usr/include/gdbm"
-        t_ndbm=$define
-    fi
-    ;;
-esac
-
-case "$t_ndbm" in
-$define)
-       : see if dbm_open exists
-       set dbm_open d_dbm_open
-       eval $inlibc
-       case "$d_dbm_open" in
-       $undef)
-               t_ndbm="$undef"
-               echo "We won't be including <ndbm.h>"
-               ;;
-       esac
-       ;;
-esac
-val="$t_ndbm"
-set i_ndbm
-eval $setvar
-
 : see if net/errno.h is available
 val=''
 set net/errno.h val
@@ -21660,7 +21677,7 @@
     ;;
 *) case "$usedl" in
     $define|true|[yY]*)
-           set X `echo " $libs " | sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' 
-e 's@ -ldbm @ @' -e 's@ -ldb @ @'` 
+           set X `echo " $libs " | sed -e 's@ -lndbm @ @' -e 's@ -lgdbm @ @' 
-e 's@ -lgdbm_compat @ @' -e 's@ -ldbm @ @' -e 's@ -ldb @ @'` 
            shift
            perllibs="$*"
            ;;
@@ -22060,6 +22077,7 @@
 d_msync='$d_msync'
 d_munmap='$d_munmap'
 d_mymalloc='$d_mymalloc'
+d_ndbm='$d_ndbm'
 d_nice='$d_nice'
 d_nl_langinfo='$d_nl_langinfo'
 d_nv_preserves_uv='$d_nv_preserves_uv'
@@ -22359,6 +22377,8 @@
 i_fp='$i_fp'
 i_fp_class='$i_fp_class'
 i_gdbm='$i_gdbm'
+i_gdbm_ndbm='$i_gdbm_ndbm'
+i_gdbmndbm='$i_gdbmndbm'
 i_grp='$i_grp'
 i_ieeefp='$i_ieeefp'
 i_inttypes='$i_inttypes'

==== //depot/maint-5.10/perl/Makefile.SH#5 (text) ====
Index: perl/Makefile.SH
--- perl/Makefile.SH#4~33633~   2008-04-03 03:41:22.000000000 -0700
+++ perl/Makefile.SH    2008-05-21 09:37:54.000000000 -0700
@@ -840,10 +840,10 @@
 preplibrary: miniperl$(EXE_EXT) $(CONFIGPM) lib/lib.pm $(PREPLIBRARY_LIBPERL)
        @sh ./makedir lib/auto
        @echo " AutoSplitting perl library"
-       $(LDLIBPTH) $(RUN) ./miniperl -Ilib -e 'use AutoSplit; \
-               autosplit_lib_modules(@ARGV)' lib/*.pm
-       $(LDLIBPTH) $(RUN) ./miniperl -Ilib -e 'use AutoSplit; \
-               autosplit_lib_modules(@ARGV)' lib/*/*.pm
+       $(LDLIBPTH) $(RUN) ./miniperl -Ilib -MAutoSplit -MFile::Find -e ' \
+               find ({no_chdir=>1, wanted => \
+                      sub {autosplit_lib_modules($$_) if /\.pm$$/}}, \
+                     "lib")'
        $(MAKE) lib/re.pm
 
 lib/Config.pod: config.sh miniperl$(EXE_EXT) configpm Porting/Glossary

==== //depot/maint-5.10/perl/Porting/Glossary#7 (text) ====
Index: perl/Porting/Glossary
--- perl/Porting/Glossary#6~33894~      2008-05-20 16:39:57.000000000 -0700
+++ perl/Porting/Glossary       2008-05-21 09:37:54.000000000 -0700
@@ -1429,6 +1429,14 @@
        of the source want to take special action if MYMALLOC is used.
        This may include different sorts of profiling or error detection.
 
+d_ndbm (i_ndbm.U):
+       This variable conditionally defines the HAS_NDBM symbol, which
+       indicates that both the ndbm.h include file and an appropriate ndbm
+       library exist.  Consult the different i_*ndbm variables
+       to find out the actual include location.  Sometimes, a system has the
+       header file but not the library.  This variable will only be set if
+       the system has both.
+
 d_nice (d_nice.U):
        This variable conditionally defines the HAS_NICE symbol, which
        indicates to the C program that the nice() routine is available.
@@ -2886,6 +2894,18 @@
        indicates to the C program that <gdbm.h> exists and should
        be included.
 
+i_gdbm_ndbm (i_ndbm.U):
+       This variable conditionally defines the I_GDBM_NDBM symbol, which
+       indicates to the C program that <gdbm-ndbm.h> exists and should
+       be included.  This is the location of the ndbm.h compatibility file
+       in Debian 4.0.
+
+i_gdbmndbm (i_ndbm.U):
+       This variable conditionally defines the I_GDBMNDBM symbol, which
+       indicates to the C program that <gdbm/ndbm.h> exists and should
+       be included.  This was the location of the ndbm.h compatibility file
+       in RedHat 7.1.
+
 i_grp (i_grp.U):
        This variable conditionally defines the I_GRP symbol, and indicates
        whether a C program should include <grp.h>.

==== //depot/maint-5.10/perl/config_h.SH#7 (text) ====
Index: perl/config_h.SH
--- perl/config_h.SH#6~33894~   2008-05-20 16:39:57.000000000 -0700
+++ perl/config_h.SH    2008-05-21 09:37:54.000000000 -0700
@@ -689,12 +689,6 @@
  */
 #$i_locale     I_LOCALE                /**/
 
-/* I_MALLOCMALLOC:
- *     This symbol, if defined, indicates to the C program that it should
- *     include <malloc/malloc.h>.
- */
-#$i_mallocmalloc       I_MALLOCMALLOC          /**/
-
 /* I_MATH:
  *     This symbol, if defined, indicates to the C program that it should
  *     include <math.h>.
@@ -4109,6 +4103,12 @@
  */
 #$i_libutil    I_LIBUTIL               /**/
 
+/* I_MALLOCMALLOC:
+ *     This symbol, if defined, indicates to the C program that it should
+ *     include <malloc/malloc.h>.
+ */
+#$i_mallocmalloc I_MALLOCMALLOC                /**/
+
 /* I_MNTENT:
  *     This symbol, if defined, indicates that <mntent.h> exists and
  *     should be included.

==== //depot/maint-5.10/perl/ext/NDBM_File/NDBM_File.xs#2 (text) ====
Index: perl/ext/NDBM_File/NDBM_File.xs
--- perl/ext/NDBM_File/NDBM_File.xs#1~32694~    2007-12-22 01:23:09.000000000 
-0800
+++ perl/ext/NDBM_File/NDBM_File.xs     2008-05-21 09:37:54.000000000 -0700
@@ -1,7 +1,13 @@
 #include "EXTERN.h"
 #include "perl.h"
 #include "XSUB.h"
+#if defined(I_GDBM_NDBM)
+#  include <gdbm-ndbm.h> /* Debian compatibility version */
+#elif defined(I_GDBMNDBM)
+#  include <gdbm/ndbm.h> /* RedHat compatibility version */
+#elif defined(I_NDBM)
 #include <ndbm.h>
+#endif
 
 typedef struct {
        DBM *   dbp ;

==== //depot/maint-5.10/perl/hints/linux.sh#2 (text) ====
Index: perl/hints/linux.sh
--- perl/hints/linux.sh#1~32694~        2007-12-22 01:23:09.000000000 -0800
+++ perl/hints/linux.sh 2008-05-21 09:37:54.000000000 -0700
@@ -54,6 +54,9 @@
 shift
 libswanted="$*"
 
+# Debian 4.0 puts ndbm in the -lgdbm_compat library.
+libswanted="$libswanted gdbm_compat"
+
 # If you have glibc, then report the version for ./myconfig bug reporting.
 # (Configure doesn't need to know the specific version since it just uses
 # gcc to load the library for all tests.)
End of Patch.

Reply via email to