Make Configure support PERL_BINCOMPAT_5005.
Jarkko Hietaniemi [Thu, 29 Jul 1999 21:04:02 +0000 (21:04 +0000)]
p4raw-id: //depot/cfgperl@3835

Configure
Porting/Glossary
Porting/config.sh
Porting/config_H
config_h.SH

index 16576e0..2d00639 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -20,7 +20,7 @@
 
 # $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $
 #
-# Generated on Wed Jul 28 20:32:22 EET DST 1999 [metaconfig 3.0 PL70]
+# Generated on Thu Jul 29 23:50:22 EET DST 1999 [metaconfig 3.0 PL70]
 # (with additional metaconfig patches by perlbug@perl.com)
 
 cat >/tmp/c1$$ <<EOF
@@ -282,6 +282,8 @@ baserev=''
 bin=''
 binexp=''
 installbin=''
+bincompat5005=''
+d_bincompat5005=''
 byteorder=''
 cc=''
 gccversion=''
@@ -3256,6 +3258,38 @@ else
        installarchlib="$archlibexp"
 fi
 
+
+: Binary compatibility with 5.005 is not possible for builds
+: with advanced features
+case "$usethreads$usemultiplicity" in
+*define*) bincompat5005="$undef" ;;
+*)     $cat <<EOM
+
+Perl 5.006 can be compiled for binary compatibility with 5.005.
+If you decide to do so, you will be able to continue using most
+of the extensions that were compiled for Perl 5.005.
+
+EOM
+       case "$d_bincompat5005" in
+       "$undef") dflt=n ;;
+       *) dflt=y ;;
+       esac
+       rp='Binary compatibility with Perl 5.005?'
+       . ./myread
+       case "$ans" in
+       y*) val="$define" ;;
+       *)  val="$undef" ;;
+       esac
+       set d_bincompat5005
+       eval $setvar
+       case "$d_bincompat5005" in
+       "$define") bincompat5005="$define" ;;
+       *) bincompat5005="$undef" ;;
+       esac
+       ;;
+esac
+
+
 : make some quick guesses about what we are up against
 echo " "
 $echo $n "Hmm...  $c"
@@ -13071,6 +13105,7 @@ awk='$awk'
 baserev='$baserev'
 bash='$bash'
 bin='$bin'
+bincompat5005='$bincompat5005'
 binexp='$binexp'
 bison='$bison'
 byacc='$byacc'
@@ -13115,6 +13150,7 @@ d_archlib='$d_archlib'
 d_attribut='$d_attribut'
 d_bcmp='$d_bcmp'
 d_bcopy='$d_bcopy'
+d_bincompat5005='$d_bincompat5005'
 d_bsd='$d_bsd'
 d_bsdgetpgrp='$d_bsdgetpgrp'
 d_bsdsetpgrp='$d_bsdsetpgrp'
index 25d6942..6a9bb48 100644 (file)
@@ -94,6 +94,10 @@ bin (bin.U):
        is most often a local directory such as /usr/local/bin. Programs using
        this variable must be prepared to deal with ~name substitution.
 
+bincompat5005 (bincompat5005.U):
+       This variable contains y if Perl 5.006 should be binary-compatible
+       with Perl 5.005.
+
 binexp (bin.U):
        This is the same as the bin variable, but is filename expanded at
        configuration time, for use in your makefiles.
@@ -305,6 +309,12 @@ d_bcopy (d_bcopy.U):
        This variable conditionally defines the HAS_BCOPY symbol if
        the bcopy() routine is available to copy strings.
 
+d_bincompat5005 (bincompat5005.U):
+       This variable conditionally defines BINCOMPAT5005 so that embed.h
+       can take special action if Perl 5.006 should be binary-compatible
+       with Perl 5.005.  This is impossible for builds that use features
+       like threads and multiplicity it is always $undef for those versions.
+
 d_bsd (Guess.U):
        This symbol conditionally defines the symbol BSD when running on a
        BSD system.
index 14d1ea2..6957d00 100644 (file)
@@ -8,7 +8,7 @@
 
 # Package name      : perl5
 # Source directory  : .
-# Configuration time: Wed Jul 28 20:34:48 EET DST 1999
+# Configuration time: Fri Jul 30 00:00:04 EET DST 1999
 # Configured by     : jhi
 # Target system     : osf1 alpha.hut.fi v4.0 878 alpha 
 
@@ -41,6 +41,7 @@ awk='awk'
 baserev='5.0'
 bash=''
 bin='/opt/perl/bin'
+bincompat5005='undef'
 binexp='/opt/perl/bin'
 bison=''
 byacc='byacc'
@@ -55,7 +56,7 @@ ccflags='-pthread -std -DLANGUAGE_C'
 ccsymbols='__LANGUAGE_C__=1 _LONGLONG=1 LANGUAGE_C=1 SYSTYPE_BSD=1'
 cf_by='jhi'
 cf_email='yourname@yourhost.yourplace.com'
-cf_time='Wed Jul 28 20:34:48 EET DST 1999'
+cf_time='Fri Jul 30 00:00:04 EET DST 1999'
 chgrp=''
 chmod=''
 chown=''
@@ -85,6 +86,7 @@ d_archlib='define'
 d_attribut='undef'
 d_bcmp='define'
 d_bcopy='define'
+d_bincompat5005=''
 d_bsd='undef'
 d_bsdgetpgrp='undef'
 d_bsdsetpgrp='define'
index 740e7c7..78c1527 100644 (file)
@@ -17,7 +17,7 @@
 /*
  * Package name      : perl5
  * Source directory  : .
- * Configuration time: Wed Jul 28 20:34:48 EET DST 1999
+ * Configuration time: Fri Jul 30 00:00:04 EET DST 1999
  * Configured by     : jhi
  * Target system     : osf1 alpha.hut.fi v4.0 878 alpha 
  */
 #define M_VOID                 /* Xenix strikes again */
 #endif
 
+/* PERL_BINCOMPAT_5005:
+ *     This symbol, if defined, indicates that Perl 5.006 should be
+ *     binary-compatible with Perl 5.005.  This is impossible for builds
+ *     that use features like threads and multiplicity it is always 
+ *     for those versions.
+ */
+# PERL_BINCOMPAT_5005                  /**/
+
 /* DLSYM_NEEDS_UNDERSCORE:
  *     This symbol, if defined, indicates that we need to prepend an
  *     underscore to the symbol name before calling dlsym().  This only
index 405f896..5019560 100644 (file)
@@ -2143,6 +2143,14 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
 #define M_VOID                 /* Xenix strikes again */
 #endif
 
+/* PERL_BINCOMPAT_5005:
+ *     This symbol, if defined, indicates that Perl 5.006 should be
+ *     binary-compatible with Perl 5.005.  This is impossible for builds
+ *     that use features like threads and multiplicity it is always $undef
+ *     for those versions.
+ */
+#$d_bincompat5005 PERL_BINCOMPAT_5005                  /**/
+
 /* DLSYM_NEEDS_UNDERSCORE:
  *     This symbol, if defined, indicates that we need to prepend an
  *     underscore to the symbol name before calling dlsym().  This only