[csw-devel] SF.net SVN: gar:[7763] csw/mgar/gar/v2-checkpkg/bin/checkpkg.d
wahwah at users.sourceforge.net
wahwah at users.sourceforge.net
Mon Dec 28 00:27:31 CET 2009
Revision: 7763
http://gar.svn.sourceforge.net/gar/?rev=7763&view=rev
Author: wahwah
Date: 2009-12-27 23:27:30 +0000 (Sun, 27 Dec 2009)
Log Message:
-----------
mGAR v2-checkpkg: More unit tests, dep guessing by name (for -devel packages)
Modified Paths:
--------------
csw/mgar/gar/v2-checkpkg/bin/checkpkg.d/checkpkg-libs.py
csw/mgar/gar/v2-checkpkg/bin/checkpkg.d/checkpkg.py
csw/mgar/gar/v2-checkpkg/bin/checkpkg.d/checkpkg_test.py
Added Paths:
-----------
csw/mgar/gar/v2-checkpkg/bin/checkpkg.d/checkpkg_test_data_CSWmysql51devel.py
Modified: csw/mgar/gar/v2-checkpkg/bin/checkpkg.d/checkpkg-libs.py
===================================================================
--- csw/mgar/gar/v2-checkpkg/bin/checkpkg.d/checkpkg-libs.py 2009-12-27 23:04:42 UTC (rev 7762)
+++ csw/mgar/gar/v2-checkpkg/bin/checkpkg.d/checkpkg-libs.py 2009-12-27 23:27:30 UTC (rev 7763)
@@ -3,6 +3,10 @@
# $Id$
#
# A check for dependencies between shared libraries.
+#
+# This is currently more of a prototype than a mature program, but it has some
+# unit tests and it appears to be working. The main problem is that it's not
+# divided into smaller testable sections.
import checkpkg
import os
@@ -39,17 +43,12 @@
binaries_base = [os.path.split(x)[1] for x in pkg_binary_paths]
binaries_by_pkgname[checker.pkgname] = binaries_base
binaries.extend(pkg_binary_paths)
- for f in checker.GetAllFilenames():
- pkg_by_any_filename[f] = checker.pkgname
+ for filename in checker.GetAllFilenames():
+ pkg_by_any_filename[filename] = checker.pkgname
# Making the binaries unique
binaries = set(binaries)
ws_re = re.compile(r"\s+")
- # TODO: map from binaries_by_pkgname to sonames_by_pkgname
- #
- # Essentially, we must look at libfoo.so.1.2.3 and map it to libfoo.so.1,
- # whatever soname it has
-
# man ld.so.1 for more info on this hack
env = copy.copy(os.environ)
env["LD_NOAUXFLTR"] = "1"
@@ -124,7 +123,7 @@
# TODO: Expand $ISALIST to whatever the 'isalist' command outputs for
# better matching.
for runpath in runpath_by_needed_soname[soname]:
- soname_runpath_data = pkgmap.GetPkgmapLineByBasename(soname)
+ soname_runpath_data = pkgmap.GetPkgmapLineByBasename(soname)
if runpath in soname_runpath_data:
lines_by_soname[soname] = soname_runpath_data[runpath]
break
@@ -140,6 +139,7 @@
pkgs_by_filename[soname] = pkgname
# A shared object dependency/provisioning report, plus checking.
+ # TODO: Rewrite this using cheetah
if needed_sonames:
print "Analysis of sonames needed by the package set:"
for soname in needed_sonames:
@@ -157,12 +157,6 @@
% (soname, binaries_by_soname[soname])))
print
- # Data needed for this section:
- # - pkgname
- # - declared dependencies
- # - binaries_by_pkgname
- # - needed_sonames_by_binary
- # - pkgs_by_filename
dependent_pkgs = {}
for checker in checkers:
orphan_sonames = set()
@@ -178,20 +172,22 @@
filenames_by_soname,
pkg_by_any_filename)
- save_testing_data = True
- if save_testing_data:
- test_fd = open("/var/tmp/checkpkg-dep-testing-data-%s.py" % pkgname, "w")
+ if options.debug:
+ data_file_name = "/var/tmp/checkpkg-dep-testing-data-%s.py" % pkgname
+ logging.warn("Saving test data to %s." % repr(data_file_name))
+ test_fd = open(data_file_name, "w")
sanitized_pkgname = pkgname.replace("-", "_")
print >>test_fd, "# Testing data for %s" % pkgname
- print >>test_fd, "DATA_PKGNAME =" % sanitized_pkgname, repr(pkgname)
- print >>test_fd, "DATA_DECLARED_DEPENDENCIES =" % sanitized_pkgname, repr(declared_dependencies)
- print >>test_fd, "DATA_BINARIES_BY_PKGNAME =" % sanitized_pkgname, repr(binaries_by_pkgname)
- print >>test_fd, "DATA_NEEDED_SONAMES_BY_BINARY =" % sanitized_pkgname, repr(needed_sonames_by_binary)
- print >>test_fd, "DATA_PKGS_BY_FILENAME =" % sanitized_pkgname, repr(pkgs_by_filename)
- print >>test_fd, "DATA_FILENAMES_BY_SONAME =" % sanitized_pkgname, repr(filenames_by_soname)
- print >>test_fd, "DATA_PKG_BY_ANY_FILENAME =" % sanitized_pkgname, repr(pkg_by_any_filename)
+ print >>test_fd, "DATA_PKGNAME =", repr(pkgname)
+ print >>test_fd, "DATA_DECLARED_DEPENDENCIES =", repr(declared_dependencies)
+ print >>test_fd, "DATA_BINARIES_BY_PKGNAME =", repr(binaries_by_pkgname)
+ print >>test_fd, "DATA_NEEDED_SONAMES_BY_BINARY =", repr(needed_sonames_by_binary)
+ print >>test_fd, "DATA_PKGS_BY_FILENAME =", repr(pkgs_by_filename)
+ print >>test_fd, "DATA_FILENAMES_BY_SONAME =", repr(filenames_by_soname)
+ print >>test_fd, "DATA_PKG_BY_ANY_FILENAME =", repr(pkg_by_any_filename)
test_fd.close()
+ # TODO: Rewrite this using cheetah templates.
if missing_deps:
print "SUGGESTION: you may want to add some or all of the following as depends:"
print " (Feel free to ignore SUNW or SPRO packages)"
@@ -207,6 +203,7 @@
errors.append(checkpkg.Error("The following soname does't belong to "
"any package: %s" % soname))
print "! ", soname
+ print
if errors:
for error in errors:
@@ -218,3 +215,5 @@
if __name__ == '__main__':
main()
+
+# vim:set sw=2 ts=2 sts=2 expandtab:
Modified: csw/mgar/gar/v2-checkpkg/bin/checkpkg.d/checkpkg.py
===================================================================
--- csw/mgar/gar/v2-checkpkg/bin/checkpkg.d/checkpkg.py 2009-12-27 23:04:42 UTC (rev 7762)
+++ csw/mgar/gar/v2-checkpkg/bin/checkpkg.d/checkpkg.py 2009-12-27 23:27:30 UTC (rev 7763)
@@ -18,6 +18,7 @@
# Don't report these as unnecessary.
TYPICAL_DEPENDENCIES = set(["CSWcommon", "CSWcswclassutils", "CSWisaexec"])
+
class Error(Exception):
pass
@@ -85,7 +86,7 @@
self.CheckPkgpathExists()
file_basenames = []
for root, dirs, files in os.walk(self.pkgpath):
- file_basenames.extend(files)
+ file_basenames.extend(files)
return file_basenames
def GetDependencies(self):
@@ -99,7 +100,6 @@
return depends
-
class SystemPkgmap(object):
"""A class to hold and manipulate the /var/sadm/install/contents file."""
@@ -191,6 +191,46 @@
return so_dependencies, self_provided, orphan_sonames
+def GuessDepsByFilename(pkgname, pkg_by_any_filename):
+ """Guesses dependencies based on filename regexes."""
+ guessed_deps = set()
+ patterns = (
+ (r".*\.py", u"CSWpython"),
+ (r".*\.pl", u"CSWperl"),
+ (r".*\.rb", u"CSWruby"),
+ )
+ for pattern, dep_pkgname in patterns:
+ # If any file name matches, add the dep, go to the next pattern/pkg
+ # combination.
+ pattern_re = re.compile("^%s$" % pattern)
+ for filename in pkg_by_any_filename:
+ if (re.match(pattern_re, filename)
+ and
+ pkgname == pkg_by_any_filename[filename]):
+ guessed_deps.add(dep_pkgname)
+ break
+ return guessed_deps
+
+
+def GuessDepsByPkgname(pkgname, pkg_by_any_filename):
+ # More guessed dependencies: If one package is a substring of another, it
+ # might be a hint. For example, CSWmysql51test should depend on CSWmysql51.
+ # However, the rt (runtime) packages should not want to depend on the main
+ # package.
+ guessed_deps = set()
+ all_other_pkgs = set(pkg_by_any_filename.values())
+ for other_pkg in all_other_pkgs:
+ other_pkg = unicode(other_pkg)
+ if pkgname == other_pkg:
+ continue
+ if pkgname.startswith(other_pkg):
+ endings = ["devel", "test", "bench", "dev"]
+ for ending in endings:
+ if pkgname.endswith(ending):
+ guessed_deps.add(other_pkg)
+ return guessed_deps
+
+
def AnalyzeDependencies(pkgname,
declared_dependencies,
binaries_by_pkgname,
@@ -198,34 +238,45 @@
pkgs_by_soname,
filenames_by_soname,
pkg_by_any_filename):
- """
- missing_deps, surplus_deps, orphan_sonames = checkpkg.AnalyzeDependencies(...)
- """
- so_dependencies, self_provided, orphan_sonames = SharedObjectDependencies(
- pkgname,
- binaries_by_pkgname,
- needed_sonames_by_binary,
- pkgs_by_soname,
- filenames_by_soname,
- pkg_by_any_filename)
- guessed_deps = set()
- patterns = (
- (r".*\.py", u"CSWpython"),
- (r".*\.pl", u"CSWperl"),
- (r".*\.rb", u"CSWruby"),
- )
- for pattern, dep_pkgname in patterns:
- # If any file name matches, add the dep, go to the next pattern/pkg
- # combination.
- tmp_re = re.compile("^%s$" % pattern)
- for f in pkg_by_any_filename:
- if re.match(tmp_re, f):
- if pkgname == pkg_by_any_filename[f]:
- guessed_deps.add(dep_pkgname)
- break
- auto_dependencies = so_dependencies.union(guessed_deps)
- declared_dependencies_set = set(declared_dependencies)
- missing_deps = auto_dependencies.difference(declared_dependencies_set)
- surplus_deps = declared_dependencies_set.difference(auto_dependencies)
- surplus_deps = surplus_deps.difference(TYPICAL_DEPENDENCIES)
- return missing_deps, surplus_deps, orphan_sonames
+ """Gathers and merges dependency results from other functions.
+
+ declared_dependencies: Dependencies that the package in question claims to
+ have.
+
+ binaries_by_pkgname: A dictionary mapping pkgnames (CSWfoo) to binary names
+ (without paths)
+
+ needed_sonames_by_binary: A dictionary mapping binary file name to
+ a dictionary containing: "needed sonames",
+ "soname", "rpath". Based on examining the binary
+ files within the packages.
+
+ pkgs_by_soname: A dictionary mapping sonames to pkgnames, based on the
+ contents of the system wide pkgmap
+ (/var/sadm/install/contents)
+
+ filenames_by_soname: A dictionary mapping shared library sonames to filenames,
+ based on files within packages
+
+ pkg_by_any_filename: Mapping from file names to packages names, based on the
+ contents of the packages under examination.
+ """
+ declared_dependencies_set = set(declared_dependencies)
+
+ so_dependencies, self_provided, orphan_sonames = SharedObjectDependencies(
+ pkgname,
+ binaries_by_pkgname,
+ needed_sonames_by_binary,
+ pkgs_by_soname,
+ filenames_by_soname,
+ pkg_by_any_filename)
+ auto_dependencies = reduce(lambda x, y: x.union(y),
+ [
+ so_dependencies,
+ GuessDepsByFilename(pkgname, pkg_by_any_filename),
+ GuessDepsByPkgname(pkgname, pkg_by_any_filename),
+ ])
+ missing_deps = auto_dependencies.difference(declared_dependencies_set)
+ surplus_deps = declared_dependencies_set.difference(auto_dependencies)
+ surplus_deps = surplus_deps.difference(TYPICAL_DEPENDENCIES)
+ return missing_deps, surplus_deps, orphan_sonames
Modified: csw/mgar/gar/v2-checkpkg/bin/checkpkg.d/checkpkg_test.py
===================================================================
--- csw/mgar/gar/v2-checkpkg/bin/checkpkg.d/checkpkg_test.py 2009-12-27 23:04:42 UTC (rev 7762)
+++ csw/mgar/gar/v2-checkpkg/bin/checkpkg.d/checkpkg_test.py 2009-12-27 23:27:30 UTC (rev 7763)
@@ -6,6 +6,7 @@
import checkpkg_test_data_CSWmysql51rt as d1
import checkpkg_test_data_CSWmysql51client as d2
import checkpkg_test_data_CSWmysql51 as d3
+import checkpkg_test_data_CSWmysql51devel as d4
class DependenciesUnitTest_1(unittest.TestCase):
@@ -21,15 +22,14 @@
)
def testSurplusDeps(self):
- # set(['CSWmysql51rt', 'CSWosslrt', 'CSWncurses', 'CSWzlib'])
self.assertEquals(set([]), self.surplus_deps)
def testOrphanSonames(self):
self.assertEquals(set([]), self.orphan_sonames)
def testMissingDeps(self):
- # expected = set([u'SUNWlmsx', u'SUNWlibCx', u'CSWosslrt', u'SUNWcsl', u'SUNWcslx'])
- self.assertEquals(set([u'SUNWlibC', u'SUNWcsl', u'SUNWlibms']), self.missing_deps)
+ expected = set([u'SUNWcsl', u'SUNWlibms', u'SUNWlibC'])
+ self.assertEquals(expected, self.missing_deps)
class DependenciesUnitTest_2(unittest.TestCase):
@@ -52,7 +52,8 @@
self.assertEquals(set([]), self.orphan_sonames)
def testMissingDeps(self):
- self.assertEquals(set([u'SUNWlibC', u'SUNWcsl', u'SUNWlibms']), self.missing_deps)
+ expected = set([u'SUNWlibC', u'SUNWcsl', u'SUNWlibms'])
+ self.assertEquals(expected, self.missing_deps)
class DependenciesUnitTest_3(unittest.TestCase):
@@ -79,5 +80,91 @@
self.assertEquals(expected, self.missing_deps)
+class DependenciesUnitTest_4(unittest.TestCase):
+
+ def setUp(self):
+ self.missing_deps, self.surplus_deps, self.orphan_sonames = checkpkg.AnalyzeDependencies(
+ d4.DATA_PKGNAME,
+ d4.DATA_DECLARED_DEPENDENCIES,
+ d4.DATA_BINARIES_BY_PKGNAME,
+ d4.DATA_NEEDED_SONAMES_BY_BINARY,
+ d4.DATA_PKGS_BY_FILENAME,
+ d4.DATA_FILENAMES_BY_SONAME,
+ d4.DATA_PKG_BY_ANY_FILENAME,
+ )
+
+ def testSurplusDeps(self):
+ self.assertEquals(set([]), self.surplus_deps)
+
+ def testOrphanSonames(self):
+ self.assertEquals(set([]), self.orphan_sonames)
+
+ def testMissingDeps(self):
+ expected = set([])
+ self.assertEquals(expected, self.missing_deps)
+
+
+class GuessDepsUnitTest(unittest.TestCase):
+
+ def testGuessDepsByFilename1(self):
+ expected = set([u"CSWpython"])
+ pkgname = u"CSWfoo"
+ pkg_by_filename = {
+ "/opt/csw/bin/bar": u"CSWfoo",
+ "/opt/csw/lib/python/site-packages/foo.py": u"CSWfoo",
+ }
+ self.assertEqual(expected,
+ checkpkg.GuessDepsByFilename(pkgname, pkg_by_filename))
+
+ def testGuessDepsByFilename2(self):
+ expected = set([])
+ pkgname = u"CSWfoo"
+ pkg_by_filename = {
+ "/opt/csw/bin/bar": u"CSWfoo",
+ "/opt/csw/lib/python/site-packages/foo.py": u"CSWbar",
+ }
+ self.assertEqual(expected,
+ checkpkg.GuessDepsByFilename(pkgname, pkg_by_filename))
+
+ def testGuessDepsByPkgname1(self):
+ expected = set([u"CSWfoo"])
+ pkgname = u"CSWfoo-devel"
+ pkg_by_filename = {
+ "/opt/csw/bin/bar": u"CSWfoo",
+ "/opt/csw/bin/barfoo": u"CSWfoobar",
+ "/opt/csw/lib/python/site-packages/foo.py": u"CSWfoo",
+ }
+ self.assertEqual(expected,
+ checkpkg.GuessDepsByPkgname(pkgname, pkg_by_filename))
+
+ def testGuessDepsByPkgname2(self):
+ expected = set([])
+ pkgname = u"CSWzfoo-devel"
+ pkg_by_filename = {
+ "/opt/csw/bin/bar": u"CSWfoo",
+ "/opt/csw/bin/barfoo": u"CSWfoobar",
+ "/opt/csw/lib/python/site-packages/foo.py": u"CSWfoo",
+ }
+ self.assertEqual(expected,
+ checkpkg.GuessDepsByPkgname(pkgname, pkg_by_filename))
+
+ def testGuessDepsByPkgname3(self):
+ self.assertEqual(set([u"CSWmysql51"]),
+ checkpkg.GuessDepsByPkgname(u"CSWmysql51devel",
+ d4.DATA_PKG_BY_ANY_FILENAME))
+
+ def testGuessDepsByPkgname4(self):
+ data1 = set(['CSWmysql51', 'CSWmysql51rt', 'CSWmysql51test',
+ 'CSWmysql51client', 'CSWmysql51bench', 'CSWmysql51devel'])
+ data2 = dict(((x, x) for x in data1))
+ self.assertEqual(set([u"CSWmysql51"]), checkpkg.GuessDepsByPkgname(u"CSWmysql51devel", data2))
+
+ def testGuessDepsByPkgname4(self):
+ data1 = set(['CSWmysql51', 'CSWmysql51rt', 'CSWmysql51test',
+ 'CSWmysql51client', 'CSWmysql51bench', 'CSWmysql51devel'])
+ data2 = dict(((x, x) for x in data1))
+ self.assertEqual(set([]), checkpkg.GuessDepsByPkgname(u"CSWmysql51rt", data2))
+
+
if __name__ == '__main__':
unittest.main()
Added: csw/mgar/gar/v2-checkpkg/bin/checkpkg.d/checkpkg_test_data_CSWmysql51devel.py
===================================================================
--- csw/mgar/gar/v2-checkpkg/bin/checkpkg.d/checkpkg_test_data_CSWmysql51devel.py (rev 0)
+++ csw/mgar/gar/v2-checkpkg/bin/checkpkg.d/checkpkg_test_data_CSWmysql51devel.py 2009-12-27 23:27:30 UTC (rev 7763)
@@ -0,0 +1,9 @@
+# Testing data for CSWmysql51devel
+# $Id$
+DATA_PKGNAME = 'CSWmysql51devel'
+DATA_DECLARED_DEPENDENCIES = {'CSWmysql51': 'CSWmysql51 mysql51 - Multithreaded SQL database ', 'CSWisaexec': 'CSWisaexec isaexec - sneaky wrapper around Sun isaexec ', 'CSWcommon': 'CSWcommon common - common files and dirs for CSW packages '}
+DATA_BINARIES_BY_PKGNAME = {'CSWmysql51': ['mysqlslap', 'resolve_stack_dump', 'mysql_tzinfo_to_sql', 'resolveip', 'mysql_waitpid', 'my_print_defaults', 'mysql_upgrade', 'innochecksum', 'myisam_ftdump', 'myisamchk', 'mysqltest', 'resolve_stack_dump', 'mysql_waitpid', 'resolveip', 'my_print_defaults', 'mysqlslap', 'myisamchk', 'innochecksum', 'mysqltest', 'myisam_ftdump', 'mysql_upgrade', 'mysql_tzinfo_to_sql', 'mysqlmanager', 'mysqld', 'mysqlmanager', 'mysqld'], 'CSWmysql51rt': ['libmysqlclient_r.so.16.0.0', 'ha_example.so.0.0.0', 'ha_innodb_plugin.so.0.0.0', 'libmysqlclient.so.16.0.0', 'libmysqlclient_r.so.16.0.0', 'ha_example.so.0.0.0', 'ha_innodb_plugin.so.0.0.0', 'libmysqlclient.so.16.0.0'], 'CSWmysql51test': ['my_safe_process'], 'CSWmysql51client': ['myisampack', 'mysql_client_test', 'mysql', 'mysqlimport', 'mysqladmin', 'mysqldump', 'mysqlbinlog', 'mysqlcheck', 'mysqlshow', 'replace', 'myisamlog', 'perror', 'myisampack', 'mysqldump', 'perror', 'mysqlcheck', 'mysql', 're
place', 'mysqladmin', 'mysqlimport', 'mysqlbinlog', 'mysql_client_test', 'mysqlshow', 'myisamlog'], 'CSWmysql51bench': [], 'CSWmysql51devel': []}
+DATA_NEEDED_SONAMES_BY_BINARY = {'ha_example.so.0.0.0': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7', '/opt/studio/SOS11/SUNWspro/lib/v8', '/opt/studio/SOS11/SUNWspro/lib', '/opt/SUNWspro/lib/v8', '/opt/SUNWspro/lib', '/usr/ccs/lib', '/lib', '/usr/lib', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7/v9', '/opt/studio/SOS11/SUNWspro/lib/v9', '/opt/SUNWspro/lib/v9', '/usr/ccs/lib/sparcv9', '/lib/sparcv9', '/usr/lib/sparcv9', '/usr/lib'], 'soname': 'ha_example.so.0', 'needed sonames': ['libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'li
bc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libCstd.so.1', 'libCrun.so.1']}, 'mysql_waitpid': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/usr/lib'], 'needed sonames': ['libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1', 'libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1']}, 'replace': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw
/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/usr/lib'], 'needed sonames': ['libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1', 'libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1']}, 'myisamchk': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/usr/lib'], 'needed sonames': ['libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1', 'libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.
so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1']}, 'mysqldump': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/csw/mysql51/lib/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/opt/csw/mysql51/lib/64/mysql', '/usr/lib'], 'needed sonames': ['libpthread.so.1', 'libmysqlclient.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libthread.so.1', 'libpthread.so.1', 'libmysqlclient.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libthread.so.1']}, 'mysql': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/op
t/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/opt/csw/mysql51/lib/64/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7/v9', '/opt/studio/SOS11/SUNWspro/lib/v9', '/opt/SUNWspro/lib/v9', '/usr/ccs/lib/sparcv9', '/lib/sparcv9', '/usr/lib/sparcv9', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/csw/mysql51/lib/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7', '/opt/studio/SOS11/SUNWspro/lib/v8', '/opt/studio/SOS11/SUNWspro/lib', '/opt/SUNWspro/lib/v8', '/opt/SUNWspro/lib', '/usr/ccs/lib', '/lib', '/usr/lib', '/usr/lib'], 'needed sonames': ['libncursesw.so.5', 'libpthread.so.1', 'libmysqlclient.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libthread.so.1', 'libncursesw.so.5', '
libpthread.so.1', 'libmysqlclient.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libthread.so.1']}, 'myisam_ftdump': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/usr/lib'], 'needed sonames': ['libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1', 'libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1']}, 'myisamlog': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISA
LIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/usr/lib'], 'needed sonames': ['libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1', 'libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1']}, 'mysqlimport': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/csw/mysql51/lib/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/opt/csw/mysql51/lib/64/mysql', '/usr/lib'], 'needed soname
s': ['libpthread.so.1', 'libmysqlclient_r.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libthread.so.1', 'libpthread.so.1', 'libmysqlclient_r.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libthread.so.1']}, 'mysqlcheck': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/opt/csw/mysql51/lib/64/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/csw/mysql51/lib/mysql', '/usr/lib'], 'needed sonames': ['libpthread.so.1', 'libmysqlclient.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1',
'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libthread.so.1', 'libpthread.so.1', 'libmysqlclient.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libthread.so.1']}, 'mysqlmanager': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7/v9', '/opt/studio/SOS11/SUNWspro/lib/v9', '/opt/SUNWspro/lib/v9', '/usr/ccs/lib/sparcv9', '/lib/sparcv9', '/usr/lib/sparcv9', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7', '/opt/studio/SOS11/SUNWspro/lib/v8', '/opt/studio/SOS11/SUNWspro/lib', '/opt/SUNWspro/lib/v8', '/opt/SUNWspro/lib', '/usr/ccs/lib', '/lib', '/usr/lib', '/usr/lib'], 'ne
eded sonames': ['libpthread.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libthread.so.1', 'libpthread.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libthread.so.1']}, 'mysqladmin': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/opt/csw/mysql51/lib/64/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7/v9', '/opt/studio/SOS11/SUNWspro/lib/v9', '/opt/SUNWspro/lib/v9', '/usr/ccs/lib/sparcv9', '/lib/sparcv9', '/usr/lib/sparcv9', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/csw/
mysql51/lib/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7', '/opt/studio/SOS11/SUNWspro/lib/v8', '/opt/studio/SOS11/SUNWspro/lib', '/opt/SUNWspro/lib/v8', '/opt/SUNWspro/lib', '/usr/ccs/lib', '/lib', '/usr/lib', '/usr/lib'], 'needed sonames': ['libpthread.so.1', 'libmysqlclient.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libthread.so.1', 'libpthread.so.1', 'libmysqlclient.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libthread.so.1']}, 'mysqlshow': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/csw/mysql51/lib/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/op
t/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/opt/csw/mysql51/lib/64/mysql', '/usr/lib'], 'needed sonames': ['libpthread.so.1', 'libmysqlclient.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libthread.so.1', 'libpthread.so.1', 'libmysqlclient.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libthread.so.1']}, 'libmysqlclient.so.16.0.0': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/usr/lib'], 'soname': 'libmysqlclient.so.16', 'needed sonam
es': ['librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1']}, 'mysql_upgrade': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/opt/csw/mysql51/lib/64/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/csw/mysql51/lib/mysql', '/usr/lib'], 'needed sonames': ['libpthread.so.1', 'libmysqlclient.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libthread.so.1', 'libpthread.so.1', 'libmysqlclient.so.16', 'librt
.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libthread.so.1']}, 'innochecksum': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/usr/lib'], 'needed sonames': ['libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1', 'libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1']}, 'mysqlbinlog': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql',
'/opt/csw/mysql51/lib/64/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7/v9', '/opt/studio/SOS11/SUNWspro/lib/v9', '/opt/SUNWspro/lib/v9', '/usr/ccs/lib/sparcv9', '/lib/sparcv9', '/usr/lib/sparcv9', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/csw/mysql51/lib/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7', '/opt/studio/SOS11/SUNWspro/lib/v8', '/opt/studio/SOS11/SUNWspro/lib', '/opt/SUNWspro/lib/v8', '/opt/SUNWspro/lib', '/usr/ccs/lib', '/lib', '/usr/lib', '/usr/lib'], 'needed sonames': ['libpthread.so.1', 'libmysqlclient.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libthread.so.1', 'libpthread.so.1', 'libmysqlclient.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libs
sl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libthread.so.1']}, 'myisampack': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/usr/lib'], 'needed sonames': ['libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1', 'libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1']}, 'my_safe_process': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7', '/opt/studi
o/SOS11/SUNWspro/lib/v8', '/opt/studio/SOS11/SUNWspro/lib', '/opt/SUNWspro/lib/v8', '/opt/SUNWspro/lib', '/usr/ccs/lib', '/lib', '/usr/lib', '/usr/lib'], 'needed sonames': ['libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libthread.so.1']}, 'my_print_defaults': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/usr/lib'], 'needed sonames': ['libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1', 'libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so
.1']}, 'mysql_tzinfo_to_sql': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7', '/opt/studio/SOS11/SUNWspro/lib/v8', '/opt/studio/SOS11/SUNWspro/lib', '/opt/SUNWspro/lib/v8', '/opt/SUNWspro/lib', '/usr/ccs/lib', '/lib', '/usr/lib', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7/v9', '/opt/studio/SOS11/SUNWspro/lib/v9', '/opt/SUNWspro/lib/v9', '/usr/ccs/lib/sparcv9', '/lib/sparcv9', '/usr/lib/sparcv9', '/usr/lib'], 'needed sonames': ['libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libthread.so.1', 'libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', '
libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libthread.so.1']}, 'mysqld': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7', '/opt/studio/SOS11/SUNWspro/lib/v8', '/opt/studio/SOS11/SUNWspro/lib', '/opt/SUNWspro/lib/v8', '/opt/SUNWspro/lib', '/usr/ccs/lib', '/lib', '/usr/lib', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7/v9', '/opt/studio/SOS11/SUNWspro/lib/v9', '/opt/SUNWspro/lib/v9', '/usr/ccs/lib/sparcv9', '/lib/sparcv9', '/usr/lib/sparcv9', '/usr/lib'], 'needed sonames': ['libpthread.so.1', 'libz.so.1', 'libdl.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libmtmalloc.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'lib
nsl.so.1', 'libm.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libthread.so.1', 'libpthread.so.1', 'libz.so.1', 'libdl.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libmtmalloc.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libthread.so.1']}, 'mysqlslap': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/csw/mysql51/lib/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/opt/csw/mysql51/lib/64/mysql', '/usr/lib'], 'needed sonames': ['libpthread.so.1', 'libmysqlclient_r.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libthread.so.1', 'libpthread.so.1', 'libmy
sqlclient_r.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libthread.so.1']}, 'ha_innodb_plugin.so.0.0.0': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7', '/opt/studio/SOS11/SUNWspro/lib/v8', '/opt/studio/SOS11/SUNWspro/lib', '/opt/SUNWspro/lib/v8', '/opt/SUNWspro/lib', '/usr/ccs/lib', '/lib', '/usr/lib', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7/v9', '/opt/studio/SOS11/SUNWspro/lib/v9', '/opt/SUNWspro/lib/v9', '/usr/ccs/lib/sparcv9', '/lib/sparcv9', '/usr/lib/sparcv9', '/usr/lib'], 'soname': 'ha_innodb_plugin.so.0', 'needed sonames': ['libpthread.so.1', 'librt.so.1',
'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libCstd.so.1', 'libCrun.so.1']}, 'perror': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/usr/lib'], 'needed sonames': ['libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1', 'libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1']}, 'libmysqlclient_r.so.16.0.0': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '
/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/usr/lib'], 'soname': 'libmysqlclient_r.so.16', 'needed sonames': ['libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libz.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libz.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8']}, 'mysqltest': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/opt/csw/mysql51/lib/64/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7/v9', '/opt/studio/SOS11/SUNWspro/lib/v9', '/opt/SUNWspro/lib/v9', '/usr/ccs/lib/s
parcv9', '/lib/sparcv9', '/usr/lib/sparcv9', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/csw/mysql51/lib/mysql', '/opt/studio/SOS11/SUNWspro/lib/rw7', '/opt/studio/SOS11/SUNWspro/lib/v8', '/opt/studio/SOS11/SUNWspro/lib', '/opt/SUNWspro/lib/v8', '/opt/SUNWspro/lib', '/usr/ccs/lib', '/lib', '/usr/lib', '/usr/lib'], 'needed sonames': ['libpthread.so.1', 'libmysqlclient_r.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libthread.so.1', 'libpthread.so.1', 'libmysqlclient_r.so.16', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libCstd.so.1', 'libCrun.so.1', 'libthread.so.1']}, 'resolve_stack_dump': {'runpath': ['/opt/csw/
lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/usr/lib'], 'needed sonames': ['libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1', 'libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1']}, 'resolveip': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/usr/lib'], 'needed sonames': ['li
bz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1', 'libz.so.1', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libthread.so.1']}, 'mysql_client_test': {'runpath': ['/opt/csw/lib/$ISALIST', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib', '/opt/csw/lib', '/opt/csw/mysql51/lib/$ISALIST/mysql', '/opt/csw/mysql51/lib/mysql', '/usr/lib', '/opt/csw/lib/$ISALIST', '/opt/csw/lib/64', '/opt/csw/mysql51/lib/$ISALIST', '/opt/csw/mysql51/lib/64', '/opt/csw/mysql51/lib/64/$ISALIST/mysql', '/opt/csw/mysql51/lib/64/mysql', '/usr/lib'], 'needed sonames': ['libmysqlclient_r.so.16', 'libpthread.so.1', 'librt.so.1', 'libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libthread.so.1', 'libmysqlclient_r.so.16', 'libpthread.so.1', 'librt.so.1', '
libresolv.so.2', 'libc.so.1', 'libsocket.so.1', 'libnsl.so.1', 'libm.so.1', 'libssl.so.0.9.8', 'libcrypto.so.0.9.8', 'libz.so.1', 'libthread.so.1']}}
+DATA_PKGS_BY_FILENAME = {'libresolv.so.2': u'SUNWcsl', 'libthread.so.1': u'SUNWcsl', 'libmtmalloc.so.1': u'SUNWcsl', 'libnsl.so.1': u'SUNWcsl', 'libCstd.so.1': u'SUNWlibC', 'libCrun.so.1': u'SUNWlibC', 'libssl.so.0.9.8': u'CSWosslrt', 'librt.so.1': u'SUNWcsl', 'libz.so.1': u'CSWzlib', 'libncursesw.so.5': u'CSWncurses', 'libsocket.so.1': u'SUNWcsl', 'libm.so.1': u'SUNWlibms', 'libpthread.so.1': u'SUNWcsl', 'libcrypto.so.0.9.8': u'CSWosslrt', 'libdl.so.1': u'SUNWcsl', 'libc.so.1': u'SUNWcsl'}
+DATA_FILENAMES_BY_SONAME = {'ha_example.so.0': 'ha_example.so.0.0.0', 'libmysqlclient_r.so.16': 'libmysqlclient_r.so.16.0.0', 'libmysqlclient.so.16': 'libmysqlclient.so.16.0.0', 'ha_innodb_plugin.so.0': 'ha_innodb_plugin.so.0.0.0'}
@@ Diff output truncated at 100000 characters. @@
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the devel
mailing list