diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt
index 4e1144a2165197b0b4e99f9b587d02889499b1d6..6167dd5042d35b308f42d1b4f1e172ad39d96149 100755
--- a/indra/newview/CMakeLists.txt
+++ b/indra/newview/CMakeLists.txt
@@ -1377,7 +1377,7 @@ set(viewer_HEADER_FILES
 
 source_group("CMake Rules" FILES ViewerInstall.cmake)
 
-# the viewer_version.txt file created here is for passing to viewer_manifest
+# the viewer_version.txt file created here is for passing to viewer_manifest and autobuild
 # the summary.json file is created for the benefit of the TeamCity builds, where
 #   it is used to provide descriptive information to the build results page
 add_custom_target(generate_viewer_version ALL
@@ -1744,7 +1744,7 @@ file(GLOB EVENT_HOST_SCRIPT_GLOB_LIST
 list(APPEND EVENT_HOST_SCRIPTS ${EVENT_HOST_SCRIPT_GLOB_LIST})
 
 set(PACKAGE ON CACHE BOOL
-    "Add a package_viewer target that builds an installer package.")
+    "Add a package target that builds an installer package.")
 
 if (WINDOWS)
     set_target_properties(${VIEWER_BINARY_NAME}
@@ -1754,6 +1754,9 @@ if (WINDOWS)
         LINK_FLAGS_DEBUG "/NODEFAULTLIB:\"LIBCMT;LIBCMTD;MSVCRT\" /LARGEADDRESSAWARE"
         LINK_FLAGS_RELEASE "/MAP\"alchemy-bin.MAP\" /LARGEADDRESSAWARE"
         )
+
+    add_dependencies(${VIEWER_BINARY_NAME} generate_viewer_version)
+
     if(USE_PRECOMPILED_HEADERS)
         set_target_properties(
             ${VIEWER_BINARY_NAME}
@@ -1931,7 +1934,6 @@ if (WINDOWS)
         --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/copy_touched.bat
       DEPENDS
         ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
-        generate_viewer_version
         stage_third_party_libs
         ${COPY_INPUT_DEPENDENCIES}
       COMMENT "Performing viewer_manifest copy"
@@ -2003,10 +2005,9 @@ if (WINDOWS)
             ${COPY_INPUT_DEPENDENCIES}
         )
 
-      add_custom_target(package_viewer ALL DEPENDS
+      add_custom_target(llpackage ALL DEPENDS
         ${CMAKE_CFG_INTDIR}/touched.bat
         windows-setup-build-all
-        generate_viewer_version
         )
         # temporarily disable packaging of event_host until hg subrepos get
         # sorted out on the parabuild cluster...
@@ -2123,6 +2124,8 @@ if (LINUX)
     llcommon
     )
 
+  add_dependencies(${VIEWER_BINARY_NAME} generate_viewer_version)
+
   add_custom_command(
       OUTPUT ${product}.tar.xz
       COMMAND ${PYTHON_EXECUTABLE}
@@ -2141,7 +2144,6 @@ if (LINUX)
         --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched
       DEPENDS
         ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
-        generate_viewer_version
         ${COPY_INPUT_DEPENDENCIES}
       )
 
@@ -2166,7 +2168,6 @@ if (LINUX)
       --source=${CMAKE_CURRENT_SOURCE_DIR}
     DEPENDS
       ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
-      generate_viewer_version
       ${COPY_INPUT_DEPENDENCIES}
     COMMENT "Performing viewer_manifest copy"
     )
@@ -2174,10 +2175,10 @@ if (LINUX)
   add_custom_target(copy_l_viewer_manifest ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.copy_touched)
 
   if (PACKAGE)
-    add_custom_target(package_viewer ALL DEPENDS ${product}.tar.xz)
+    add_custom_target(llpackage ALL DEPENDS ${product}.tar.xz)
     # Make sure we don't run two instances of viewer_manifest.py at the same time.
-    add_dependencies(package_viewer copy_l_viewer_manifest)
-    check_message_template(package_viewer)
+    add_dependencies(llpackage copy_l_viewer_manifest)
+    check_message_template(llpackage)
   endif (PACKAGE)
 endif (LINUX)
 
@@ -2208,6 +2209,8 @@ if (DARWIN)
      "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app/Contents/Info.plist"
     )
 
+  add_dependencies(${VIEWER_BINARY_NAME} generate_viewer_version)
+
   add_custom_command(
     TARGET ${VIEWER_BINARY_NAME} POST_BUILD
     COMMAND ${PYTHON_EXECUTABLE}
@@ -2227,7 +2230,6 @@ if (DARWIN)
     DEPENDS
       ${VIEWER_BINARY_NAME}
       ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
-      generate_viewer_version
     )
   if (WORD_SIZE EQUAL 32)
       add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_quicktime media_plugin_webkit mac-crash-logger)
@@ -2242,11 +2244,11 @@ if (DARWIN)
   endif (ENABLE_SIGNING)
 
   if (PACKAGE)
-      add_custom_target(package_viewer ALL DEPENDS ${VIEWER_BINARY_NAME})
-      add_dependencies(package_viewer generate_viewer_version)
+      add_custom_target(llpackage ALL DEPENDS ${VIEWER_BINARY_NAME})
+      add_dependencies(llpackage generate_viewer_version)
 
       add_custom_command(
-        TARGET package_viewer POST_BUILD
+        TARGET llpackage POST_BUILD
         COMMAND ${PYTHON_EXECUTABLE}
         ARGS
           ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
@@ -2265,7 +2267,6 @@ if (DARWIN)
           ${SIGNING_SETTING}
         DEPENDS
           ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
-          generate_viewer_version
       )
   endif (PACKAGE)
 endif (DARWIN)
@@ -2332,7 +2333,7 @@ if (PACKAGE)
   elseif (DARWIN)
     add_dependencies(generate_breakpad_symbols "${VIEWER_BINARY_NAME}")
   endif (WINDOWS OR LINUX)
-  add_dependencies(package_viewer generate_breakpad_symbols)
+  add_dependencies(llpackage generate_breakpad_symbols)
   endif(RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING)
 endif (PACKAGE)
 
diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py
index cc698e71f8ea375428beaabadc08be0804b7badc..844bc34b70879cd31487bd728b828e82a286e55d 100755
--- a/indra/newview/viewer_manifest.py
+++ b/indra/newview/viewer_manifest.py
@@ -73,26 +73,6 @@ class ViewerManifest(LLManifest):
                 contributions_path = "../../doc/contributions.txt"
                 contributor_names = self.extract_names(contributions_path)
                 self.put_in_file(contributor_names, "contributors.txt", src=contributions_path)
-                # include the extracted list of translators
-                translations_path = "../../doc/translations.txt"
-                translator_names = self.extract_names(translations_path)
-                self.put_in_file(translator_names, "translators.txt", src=translations_path)
-                # include the list of Lindens (if any)
-                #   see https://wiki.lindenlab.com/wiki/Generated_Linden_Credits
-                linden_names_path = os.getenv("LINDEN_CREDITS")
-                if not linden_names_path :
-                    print "No 'LINDEN_CREDITS' specified in environment, using built-in list"
-                else:
-                    try:
-                        linden_file = open(linden_names_path,'r')
-                    except IOError:
-                        print "No Linden names found at '%s', using built-in list" % linden_names_path
-                    else:
-                         # all names should be one line, but the join below also converts to a string
-                        linden_names = ', '.join(linden_file.readlines())
-                        self.put_in_file(linden_names, "lindens.txt", src=linden_names_path)
-                        linden_file.close()
-                        print "Linden names extracted from '%s'" % linden_names_path
 
                 # ... and the entire windlight directory
                 self.path("windlight")
@@ -352,6 +332,10 @@ class WindowsManifest(ViewerManifest):
     def construct(self):
         super(WindowsManifest, self).construct()
 
+        pkgdir = os.path.join(self.args['build'], os.pardir, 'packages')
+        relpkgdir = os.path.join(pkgdir, "lib", "release")
+        debpkgdir = os.path.join(pkgdir, "lib", "debug")
+
         if self.is_packaging_viewer():
             # Find alchemy-bin.exe in the 'configuration' dir, then rename it to the result of final_exe.
             self.path(src='%s/alchemy-bin.exe' % self.args['configuration'], dst=self.final_exe())
@@ -379,15 +363,10 @@ class WindowsManifest(ViewerManifest):
 
             # Mesh 3rd party libs needed for auto LOD and collada reading
             try:
-                if self.args['configuration'].lower() == 'debug':
-                    self.path("libcollada14dom22-d.dll")
-                else:
-                    self.path("libcollada14dom22.dll")
-
                 self.path("glod.dll")
             except RuntimeError, err:
                 print err.message
-                print "Skipping COLLADA and GLOD libraries (assumming linked statically)"
+                print "Skipping GLOD library (assumming linked statically)"
 
             # Get openal dll, continue if missing
             try:
@@ -489,8 +468,7 @@ class WindowsManifest(ViewerManifest):
 
 
         if self.args['configuration'].lower() == 'debug':
-            if self.prefix(src=os.path.join(os.pardir, 'packages', 'lib', 'debug'),
-                           dst="llplugin"):
+            if self.prefix(src=debpkgdir, dst="llplugin"):
                 self.path("libeay32.dll")
                 self.path("qtcored4.dll")
                 self.path("qtguid4.dll")
@@ -520,8 +498,7 @@ class WindowsManifest(ViewerManifest):
 
                 self.end_prefix()
         else:
-            if self.prefix(src=os.path.join(os.pardir, 'packages', 'lib', 'release'),
-                           dst="llplugin"):
+            if self.prefix(src=relpkgdir, dst="llplugin"):
                 self.path("libeay32.dll")
                 self.path("qtcore4.dll")
                 self.path("qtgui4.dll")
@@ -755,11 +732,15 @@ class DarwinManifest(ViewerManifest):
         # copy over the build result (this is a no-op if run within the xcode script)
         self.path(self.args['configuration'] + "/Alchemy.app", dst="")
 
+        pkgdir = os.path.join(self.args['build'], os.pardir, 'packages')
+        relpkgdir = os.path.join(pkgdir, "lib", "release")
+        debpkgdir = os.path.join(pkgdir, "lib", "debug")
+
         if self.prefix(src="", dst="Contents"):  # everything goes in Contents
             self.path("Info.plist", dst="Info.plist")
 
             # copy additional libs in <bundle>/Contents/MacOS/
-            self.path("../packages/lib/release/libndofdev.dylib", dst="Resources/libndofdev.dylib")
+            self.path(os.path.join(relpkgdir, "libndofdev.dylib"), dst="Resources/libndofdev.dylib")
 
             if self.prefix(dst="MacOS"):
                 self.path2basename("../viewer_components/updater/scripts/darwin", "*.py")
@@ -775,8 +756,6 @@ class DarwinManifest(ViewerManifest):
 
                 self.path("licenses-mac.txt", dst="licenses.txt")
                 self.path("featuretable_mac.txt")
-                # Let's not copy this twice - LD
-                #self.path("Alchemy.nib")
 
                 icon_path = self.icon_path()
                 if self.prefix(src=icon_path, dst="") :
@@ -820,7 +799,6 @@ class DarwinManifest(ViewerManifest):
                     print "Skipping %s" % dst
                     return []
 
-                libdir = "../packages/lib/release"
                 # dylibs is a list of all the .dylib files we expect to need
                 # in our bundled sub-apps. For each of these we'll create a
                 # symlink from sub-app/Contents/Resources to the real .dylib.
@@ -830,7 +808,7 @@ class DarwinManifest(ViewerManifest):
                                                                "llcommon",
                                                                self.args['configuration'],
                                                                libfile),
-                                                               os.path.join(libdir, libfile)),
+                                                               os.path.join(relpkgdir, libfile)),
                                        dst=libfile)
 
                 for libfile in (
@@ -844,7 +822,7 @@ class DarwinManifest(ViewerManifest):
                                 "libalut.dylib",
                                 "libfreetype.6.dylib",
                                 ):
-                    dylibs += path_optional(os.path.join(libdir, libfile), libfile)
+                    dylibs += path_optional(os.path.join(relpkgdir, libfile), libfile)
 
                 # SLVoice and vivox lols, no symlinks needed
                 for libfile in (
@@ -856,34 +834,30 @@ class DarwinManifest(ViewerManifest):
                                 'ca-bundle.crt',
                                 'SLVoice',
                                 ):
-                    self.path2basename(libdir, libfile)
+                    self.path2basename(relpkgdir, libfile)
 
                 # dylibs that vary based on configuration
                 if self.args['configuration'].lower() == 'debug':
                     for libfile in (
                                 "libfmodexL.dylib",
                                 ):
-                        dylibs += path_optional(os.path.join("../packages/lib/debug",
-                                                             libfile), libfile)
+                        dylibs += path_optional(os.path.join(debpkgdir, libfile), libfile)
                 else:
                     for libfile in (
                                 "libfmodex.dylib",
                                 ):
-                        dylibs += path_optional(os.path.join("../packages/lib/release",
-                                                             libfile), libfile)
+                        dylibs += path_optional(os.path.join(relpkgdir, libfile), libfile)
 
                 if self.args['configuration'].lower() == 'debug':
                     for libfile in (
                                 "libfmodL.dylib",
                                 ):
-                        dylibs += path_optional(os.path.join("../packages/lib/debug",
-                                                             libfile), libfile)
+                        dylibs += path_optional(os.path.join(debpkgdir, libfile), libfile)
                 else:
                     for libfile in (
                                 "libfmod.dylib",
                                 ):
-                        dylibs += path_optional(os.path.join("../packages/lib/release",
-                                                             libfile), libfile)
+                        dylibs += path_optional(os.path.join(relpkgdir, libfile), libfile)
 
                 # our apps
                 for app_bld_dir, app in (("mac_crash_logger", "mac-crash-logger.app"),
@@ -899,8 +873,12 @@ class DarwinManifest(ViewerManifest):
                     # create a symlink to the real copy of the dylib.
                     resource_path = self.dst_path_of(os.path.join(app, "Contents", "Resources"))
                     for libfile in dylibs:
-                        symlinkf(os.path.join(os.pardir, os.pardir, os.pardir, libfile),
-                                 os.path.join(resource_path, libfile))
+                        src = os.path.join(os.pardir, os.pardir, os.pardir, libfile)
+                        dst = os.path.join(resource_path, libfile)
+                        try:
+                            symlinkf(src, dst)
+                        except OSError as err:
+                            print "Can't symlink %s -> %s: %s" % (src, dst, err)
                 # SLPlugin.app/Contents/Resources gets those Qt4 libraries it needs.
                 if self.prefix(src="", dst="SLPlugin.app/Contents/Resources"):
                     for libfile in ('libQtCore.4.dylib',
@@ -917,7 +895,7 @@ class DarwinManifest(ViewerManifest):
                                     'libQtWebKit.4.9.4.dylib',
                                     'libQtXml.4.dylib',
                                     'libQtXml.4.8.6.dylib'):
-                        self.path2basename("../packages/lib/release", libfile)
+                        self.path2basename(relpkgdir, libfile)
                     self.end_prefix("SLPlugin.app/Contents/Resources")
 
                 # Qt4 codecs go to llplugin.  Not certain why but this is the first
@@ -961,48 +939,6 @@ class DarwinManifest(ViewerManifest):
 
     def package_finish(self):
         global CHANNEL_VENDOR_BASE
-        # Sign the app if requested.
-        if 'signature' in self.args:
-            identity = self.args['signature']
-            if identity == '':
-                identity = 'Developer ID Application'
-
-            # Look for an environment variable set via build.sh when running in Team City.
-            try:
-                build_secrets_checkout = os.environ['build_secrets_checkout']
-            except KeyError:
-                pass
-            else:
-                # variable found so use it to unlock keyvchain followed by codesign
-                home_path = os.environ['HOME']
-                keychain_pwd_path = os.path.join(build_secrets_checkout,'code-signing-osx','password.txt')
-                keychain_pwd = open(keychain_pwd_path).read().rstrip()
-
-                self.run_command('security unlock-keychain -p "%s" "%s/Library/Keychains/viewer.keychain"' % ( keychain_pwd, home_path ) )
-                signed=False
-                sign_attempts=3
-                sign_retry_wait=15
-                while (not signed) and (sign_attempts > 0):
-                    try:
-                        sign_attempts-=1;
-                        self.run_command(
-                           'codesign --verbose --force --keychain "%(home_path)s/Library/Keychains/viewer.keychain" --sign %(identity)r %(bundle)r' % {
-                               'home_path' : home_path,
-                               'identity': identity,
-                               'bundle': self.get_dst_prefix()
-                               })
-                        signed=True # if no exception was raised, the codesign worked
-                    except ManifestError, err:
-                        if sign_attempts:
-                            print >> sys.stderr, "codesign failed, waiting %d seconds before retrying" % sign_retry_wait
-                            time.sleep(sign_retry_wait)
-                            sign_retry_wait*=2
-                        else:
-                            print >> sys.stderr, "Maximum codesign attempts exceeded; giving up"
-                            raise
-
-        imagename="Alchemy_" + '_'.join(self.args['version'])
-
         # MBW -- If the mounted volume name changes, it breaks the .DS_Store's background image and icon positioning.
         #  If we really need differently named volumes, we'll need to create multiple DS_Store file images, or use some other trick.
 
@@ -1084,6 +1020,56 @@ class DarwinManifest(ViewerManifest):
 
             # Set the disk image root's custom icon bit
             self.run_command('SetFile -a C %r' % volpath)
+
+            # Sign the app if requested; 
+            # do this in the copy that's in the .dmg so that the extended attributes used by 
+            # the signature are preserved; moving the files using python will leave them behind
+            # and invalidate the signatures.
+            if 'signature' in self.args:
+                app_in_dmg=os.path.join(volpath,self.app_name()+".app")
+                print "Attempting to sign '%s'" % app_in_dmg
+                identity = self.args['signature']
+                if identity == '':
+                    identity = 'Developer ID Application'
+
+                # Look for an environment variable set via build.sh when running in Team City.
+                try:
+                    build_secrets_checkout = os.environ['build_secrets_checkout']
+                except KeyError:
+                    pass
+                else:
+                    # variable found so use it to unlock keychain followed by codesign
+                    home_path = os.environ['HOME']
+                    keychain_pwd_path = os.path.join(build_secrets_checkout,'code-signing-osx','password.txt')
+                    keychain_pwd = open(keychain_pwd_path).read().rstrip()
+
+                    self.run_command('security unlock-keychain -p "%s" "%s/Library/Keychains/viewer.keychain"' % ( keychain_pwd, home_path ) )
+                    signed=False
+                    sign_attempts=3
+                    sign_retry_wait=15
+                    while (not signed) and (sign_attempts > 0):
+                        try:
+                            sign_attempts-=1;
+                            self.run_command(
+                               'codesign --verbose --deep --force --keychain "%(home_path)s/Library/Keychains/viewer.keychain" --sign %(identity)r %(bundle)r' % {
+                                   'home_path' : home_path,
+                                   'identity': identity,
+                                   'bundle': app_in_dmg
+                                   })
+                            signed=True # if no exception was raised, the codesign worked
+                        except ManifestError, err:
+                            if sign_attempts:
+                                print >> sys.stderr, "codesign failed, waiting %d seconds before retrying" % sign_retry_wait
+                                time.sleep(sign_retry_wait)
+                                sign_retry_wait*=2
+                            else:
+                                print >> sys.stderr, "Maximum codesign attempts exceeded; giving up"
+                                raise
+                    self.run_command('spctl -a -texec -vv %(bundle)r' % { 'bundle': app_in_dmg })
+
+            imagename="Alchemy_" + '_'.join(self.args['version'])
+
+
         finally:
             # Unmount the image even if exceptions from any of the above
             self.run_command('hdiutil detach -force %r' % devfile)
@@ -1114,6 +1100,11 @@ class Darwin_x86_64_Manifest(DarwinManifest):
 class LinuxManifest(ViewerManifest):
     def construct(self):
         super(LinuxManifest, self).construct()
+
+        pkgdir = os.path.join(self.args['build'], os.pardir, 'packages')
+        relpkgdir = os.path.join(pkgdir, "lib", "release")
+        debpkgdir = os.path.join(pkgdir, "lib", "debug")
+
         self.path("licenses-linux.txt","licenses.txt")
         if self.prefix("linux_tools", dst=""):
             self.path("client-readme.txt","README-linux.txt")
@@ -1217,7 +1208,11 @@ class Linux_i686_Manifest(LinuxManifest):
     def construct(self):
         super(Linux_i686_Manifest, self).construct()
 
-        if self.prefix("../packages/lib/release", dst="lib"):
+        pkgdir = os.path.join(self.args['build'], os.pardir, 'packages')
+        relpkgdir = os.path.join(pkgdir, "lib", "release")
+        debpkgdir = os.path.join(pkgdir, "lib", "debug")
+
+        if self.prefix(relpkgdir, dst="lib"):
             self.path("libapr-1.so")
             self.path("libapr-1.so.0")
             self.path("libapr-1.so.0.4.5")
@@ -1278,10 +1273,10 @@ class Linux_i686_Manifest(LinuxManifest):
             self.end_prefix("lib")
 
         # Vivox runtimes
-        if self.prefix(src="../packages/lib/release", dst="bin"):
+        if self.prefix(src=relpkgdir, dst="bin"):
             self.path("SLVoice")
             self.end_prefix("bin")
-        if self.prefix(src="../packages/lib/release", dst="lib"):
+        if self.prefix(src=relpkgdir, dst="lib"):
             self.path("libortp.so")
             self.path("libsndfile.so.1")
             #self.path("libvivoxoal.so.1") # no - we'll re-use the viewer's own OpenAL lib
@@ -1289,8 +1284,8 @@ class Linux_i686_Manifest(LinuxManifest):
             self.path("libvivoxplatform.so")
             self.end_prefix("lib")
 
-            # plugin runtime
-        if self.prefix(src="../packages/lib/release", dst="lib"):
+        # plugin runtime
+        if self.prefix(src=relpkgdir, dst="lib"):
             self.path("libQtCore.so*")
             self.path("libQtGui.so*")
             self.path("libQtNetwork.so*")
@@ -1325,7 +1320,11 @@ class Linux_x86_64_Manifest(LinuxManifest):
     def construct(self):
         super(Linux_x86_64_Manifest, self).construct()
 
-        if self.prefix("../packages/lib/release", dst="lib64"):
+        pkgdir = os.path.join(self.args['build'], os.pardir, 'packages')
+        relpkgdir = os.path.join(pkgdir, "lib", "release")
+        debpkgdir = os.path.join(pkgdir, "lib", "debug")
+
+        if self.prefix(relpkgdir, dst="lib64"):
             self.path("libapr-1.so")
             self.path("libapr-1.so.0")
             self.path("libapr-1.so.0.4.5")
@@ -1386,10 +1385,10 @@ class Linux_x86_64_Manifest(LinuxManifest):
             self.end_prefix("lib64")
 
         # Vivox runtimes
-        if self.prefix(src="../packages/lib/release", dst="bin"):
+        if self.prefix(src=relpkgdir, dst="bin"):
             self.path("SLVoice")
             self.end_prefix("bin")
-        if self.prefix(src="../packages/lib/release", dst="lib32"):
+        if self.prefix(src=relpkgdir, dst="lib32"):
             self.path("libortp.so")
             self.path("libsndfile.so.1")
             self.path("libvivoxoal.so.1")
@@ -1398,7 +1397,7 @@ class Linux_x86_64_Manifest(LinuxManifest):
             self.end_prefix("lib32")
 
         # plugin runtime
-        if self.prefix(src="../packages/lib/release", dst="lib64"):
+        if self.prefix(src=relpkgdir, dst="lib64"):
             self.path("libQtCore.so*")
             self.path("libQtGui.so*")
             self.path("libQtNetwork.so*")