- allow the library version to be overriden
- make sure we don't clobber the version that ends up in tdb.pc

Index: buildtools/wafsamba/wafsamba.py
--- buildtools/wafsamba/wafsamba.py.orig
+++ buildtools/wafsamba/wafsamba.py
@@ -281,6 +281,13 @@ def SAMBA_LIBRARY(bld, libname, source,
     realname = bld.map_shlib_extension(realname, python=(target_type=='PYTHON'))
     link_name = bld.map_shlib_extension(link_name, python=(target_type=='PYTHON'))
 
+    saved_lib_version = vnum
+    if vnum is not None:
+        osvnum = os.getenv('LIB' + libname.replace('-', '_') + '_VERSION')
+        if osvnum:
+            print("Setup-specific version for library %s: %s" % (libname, osvnum))
+            vnum = osvnum
+
     # we don't want any public libraries without version numbers
     if (not private_library and target_type != 'PYTHON' and not realname):
         if vnum is None and soname is None:
@@ -398,9 +405,9 @@ def SAMBA_LIBRARY(bld, libname, source,
 
     if pc_files is not None and not private_library:
         if pyembed:
-            bld.PKG_CONFIG_FILES(pc_files, vnum=vnum, extra_name=bld.env['PYTHON_SO_ABI_FLAG'])
+            bld.PKG_CONFIG_FILES(pc_files, vnum=saved_lib_version, extra_name=bld.env['PYTHON_SO_ABI_FLAG'])
         else:
-            bld.PKG_CONFIG_FILES(pc_files, vnum=vnum)
+            bld.PKG_CONFIG_FILES(pc_files, vnum=saved_lib_version)
 
     if (manpages is not None and 'XSLTPROC_MANPAGES' in bld.env and
         bld.env['XSLTPROC_MANPAGES']):
