[SCM] Samba Shared Repository - branch master updated

Jelmer Vernooij jelmer at samba.org
Fri Mar 11 18:46:02 MST 2011


The branch, master has been updated
       via  a051b40 samba_abi: Also sort ABI files  properly so symbols end up in the right version.
       via  1d1e5cb Sort by release component integer values rather than using standard string sort.
      from  70c75b9 s3: Fix a typo

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit a051b400756fa9dc5f6d61b49b2886cf00be5081
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sat Mar 12 01:58:17 2011 +0100

    samba_abi: Also sort ABI files  properly so symbols end up in the right version.
    
    Autobuild-User: Jelmer Vernooij <jelmer at samba.org>
    Autobuild-Date: Sat Mar 12 02:45:20 CET 2011 on sn-devel-104

commit 1d1e5cbd27e3253eb77c04a832eab6ede5d67826
Author: Jelmer Vernooij <jelmer at canonical.com>
Date:   Sat Mar 12 01:09:31 2011 +0100

    Sort by release component integer values rather than using standard string
    sort.
    
    This makes sure tevent 0.9.9 is considered to be older than 0.9.10 and 0.9.11

-----------------------------------------------------------------------

Summary of changes:
 buildtools/wafsamba/samba_abi.py |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/buildtools/wafsamba/samba_abi.py b/buildtools/wafsamba/samba_abi.py
index 396a7fc..990e1e5 100644
--- a/buildtools/wafsamba/samba_abi.py
+++ b/buildtools/wafsamba/samba_abi.py
@@ -10,6 +10,8 @@ abi_type_maps = {
     'struct __va_list_tag *' : 'va_list'
     }
 
+version_key = lambda x: map(int, x.split("."))
+
 def normalise_signature(sig):
     '''normalise a signature from gdb'''
     sig = sig.strip()
@@ -162,7 +164,8 @@ def abi_write_vscript(vscript, libname, current_version, versions, symmap, abi_m
 
     f = open(vscript, mode='w')
     last_key = ""
-    for k in sorted(versions):
+    versions = sorted(versions, key=version_key)
+    for k in versions:
         symver = "%s_%s" % (libname, k)
         if symver == current_version:
             break
@@ -204,7 +207,9 @@ def ABI_VSCRIPT(bld, libname, abi_directory, version, vscript, abi_match=None):
     '''generate a vscript file for our public libraries'''
     if abi_directory:
         source = bld.path.ant_glob('%s/%s-[0-9]*.sigs' % (abi_directory, libname))
-        source = sorted(source.split())
+        def abi_file_key(path):
+            return version_key(path[:-len(".sigs")].rsplit("-")[-1])
+        source = sorted(source.split(), key=abi_file_key)
     else:
         source = ''
 


-- 
Samba Shared Repository


More information about the samba-cvs mailing list