In perl.git, the branch blead has been updated

<http://perl5.git.perl.org/perl.git/commitdiff/ba95ddbf39c3f44344392750626f77d914fc5ca5?hp=09c9c44ccce7b244d267ab05e50a33742407dc60>

- Log -----------------------------------------------------------------
commit ba95ddbf39c3f44344392750626f77d914fc5ca5
Author: David Golden <dagol...@cpan.org>
Date:   Wed Nov 10 11:15:50 2010 -0500

    Add use_versioned_archname to Configure
    
    This patch adds 'use_versioned_archname' as a Configure option.
    When set, it includes 'api_versionstring' in 'archname'. E.g.
    x86_64-linux-5.13.6-thread-multi.  It is unset by default.
    
    This feature was requested by Tim Bunce, who observed that
    INSTALL_BASE creates a library structure that does not
    differentiate by perl version.  Instead, it places architecture
    specific files in "$install_base/lib/perl5/$archname".  This makes
    it difficult to use a common INSTALL_BASE library path with
    multiple versions of perl.
    
    By setting -Duse_versioned_archname, the $archname will be
    distinct for architecture *and* API version, allowing mixed use of
    INSTALL_BASE.
    
    This patch demonstrates the desired effect for discussion.  Actual
    changes would need to be made upstream in metaconfig and
    integrated back into blead.
-----------------------------------------------------------------------

Summary of changes:
 Configure        |   30 ++++++++++++++++++++++++++++++
 Porting/Glossary |    4 ++++
 2 files changed, 34 insertions(+), 0 deletions(-)

diff --git a/Configure b/Configure
index 7a6f63f..b73367f 100755
--- a/Configure
+++ b/Configure
@@ -330,6 +330,7 @@ archlib=''
 archlibexp=''
 d_archlib=''
 installarchlib=''
+use_versioned_archname=''
 archname=''
 myarchname=''
 d_atolf=''
@@ -6017,6 +6018,34 @@ esac
 rp='What is your architecture name'
 . ./myread
 archname="$ans"
+
+: optionally add api version to the architecture for versioned archlibs
+case "$use_versioned_archname" in
+$define|true|[yY]*)     dflt='y';;
+*)                      dflt='n';;
+esac
+rp='Add the Perl API version to your archname?'
+. ./myread
+case "$ans" in
+y|Y)   val="$define" ;;
+*)      val="$undef" ;;
+esac
+set use_versioned_archname
+eval $setvar
+case "$use_versioned_archname" in
+$define)
+        case "$archname" in
+        *-$api_versionstring)
+                echo "...and architecture name already has 
-$api_versionstring" >&4
+                ;;
+        *)
+                archname="$archname-$api_versionstring"
+                echo "...setting architecture name to $archname." >&4
+                ;;
+        esac
+        ;;
+esac
+
 case "$usethreads" in
 $define)
        echo "Threads selected." >&4
@@ -23859,6 +23888,7 @@ usesitecustomize='$usesitecustomize'
 usesocks='$usesocks'
 usethreads='$usethreads'
 usevendorprefix='$usevendorprefix'
+use_versioned_archname='$use_versioned_archname'
 usevfork='$usevfork'
 usrinc='$usrinc'
 uuname='$uuname'
diff --git a/Porting/Glossary b/Porting/Glossary
index 68312a3..0fbac11 100644
--- a/Porting/Glossary
+++ b/Porting/Glossary
@@ -5018,6 +5018,10 @@ use64bitint (use64bits.U):
        This may mean using for example "long longs", while your memory
        may still be limited to 2 gigabytes.
 
+use_versioned_archname (archname.U):
+       This variable indicates whether to include the $api_versionstring
+       as a component of the $archname.
+
 usecrosscompile (Cross.U):
        This variable conditionally defines the USE_CROSS_COMPILE symbol,
        and indicates that Perl has been cross-compiled.

--
Perl5 Master Repository

Reply via email to