diff options
| author | Aimee Linden <aimee@lindenlab.com> | 2010-08-20 14:06:32 +0100 | 
|---|---|---|
| committer | Aimee Linden <aimee@lindenlab.com> | 2010-08-20 14:06:32 +0100 | 
| commit | aabf1b4fa24ea8ce86e11d80f58f79a058237ff4 (patch) | |
| tree | 9453ad84a6b9b870c0a4d20c8b12112317ab5cfd | |
| parent | 29512788adbf08bc1d000a3682dd4efa3cab61db (diff) | |
VWR-20847 (SNOW-543/SNOW-517) FIXED Linux packaging fixes.
| -rw-r--r-- | doc/contributions.txt | 3 | ||||
| -rw-r--r-- | indra/newview/CMakeLists.txt | 4 | ||||
| -rw-r--r-- | indra/newview/viewer_manifest.py | 66 | 
3 files changed, 37 insertions, 36 deletions
| diff --git a/doc/contributions.txt b/doc/contributions.txt index 3855cb5c29..eea73ee767 100644 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -606,6 +606,8 @@ Strife Onizuka  	VWR-2265  	VWR-4111  Tayra Dagostino +	SNOW-517 +	SNOW-543  	VWR-13947  TBBle Kurosawa  	VWR-938 @@ -613,6 +615,7 @@ TBBle Kurosawa  	VWR-942  	VWR-944  	VWR-945 +	SNOW-543  	VWR-1891  	VWR-1892  Teardrops Fall diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 65502209f7..1ee7586d5f 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -1704,12 +1704,12 @@ if (LINUX)    add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_gstreamer010 media_plugin_webkit) -  if (NOT INSTALL) +  if (PACKAGE)      add_custom_target(package ALL DEPENDS ${product}.tar.bz2)      add_dependencies(package linux-crash-logger-target)      add_dependencies(package linux-updater-target)      check_message_template(package) -  endif (NOT INSTALL) +  endif (PACKAGE)    add_custom_command(      OUTPUT  ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.copy_touched diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 9885d1aa0d..0eda4007e3 100644 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -833,6 +833,28 @@ class LinuxManifest(ViewerManifest):          # Create an appropriate gridargs.dat for this package, denoting required grid.          self.put_in_file(self.flags_list(), 'etc/gridargs.dat') +        self.path("secondlife-bin","bin/do-not-directly-run-secondlife-bin") +        self.path("../linux_crash_logger/linux-crash-logger","bin/linux-crash-logger.bin") +        self.path("../linux_updater/linux-updater", "bin/linux-updater.bin") +        self.path("../llplugin/slplugin/SLPlugin", "bin/SLPlugin") + +        if self.prefix("res-sdl"): +            self.path("*") +            # recurse +            self.end_prefix("res-sdl") + +        # plugins +        if self.prefix(src="", dst="bin/llplugin"): +            self.path("../media_plugins/webkit/libmedia_plugin_webkit.so", "libmedia_plugin_webkit.so") +            self.path("../media_plugins/gstreamer010/libmedia_plugin_gstreamer010.so", "libmedia_plugin_gstreamer.so") +            self.end_prefix("bin/llplugin") + +        try: +            self.path("../llcommon/libllcommon.so", "lib/libllcommon.so") +        except: +            print "Skipping llcommon.so (assuming llcommon was linked statically)" + +        self.path("featuretable_linux.txt")      def package_finish(self):          if 'installer_name' in self.args: @@ -847,6 +869,10 @@ class LinuxManifest(ViewerManifest):              else:                  installer_name += '_' + self.channel_oneword().upper() +        if self.args['buildtype'].lower() == 'release' and self.is_packaging_viewer(): +            print "* Going strip-crazy on the packaged binaries, since this is a RELEASE build" +            self.run_command("find %(d)r/bin %(d)r/lib -type f | xargs --no-run-if-empty strip -S" % {'d': self.get_dst_prefix()} ) # makes some small assumptions about our packaged dir structure +          # Fix access permissions          self.run_command("""                  find %(dst)s -type d | xargs --no-run-if-empty chmod 755; @@ -883,36 +909,12 @@ class Linux_i686Manifest(LinuxManifest):          # install either the libllkdu we just built, or a prebuilt one, in          # decreasing order of preference.  for linux package, this goes to bin/ -        for lib, destdir in ("llkdu", "bin"), ("llcommon", "lib"): -            libfile = "lib%s.so" % lib -            try: -                self.path(self.find_existing_file(os.path.join(os.pardir, lib, libfile), -                    '../../libraries/i686-linux/lib_release_client/%s' % libfile),  -                      dst=os.path.join(destdir, libfile)) -                # keep this one to preserve syntax, open source mangling removes previous lines -                pass -            except RuntimeError: -                print "Skipping %s - not found" % libfile -                pass - -        self.path("secondlife-bin","bin/do-not-directly-run-secondlife-bin") - -        self.path("../linux_crash_logger/linux-crash-logger","bin/linux-crash-logger.bin") -        self.path("../linux_updater/linux-updater", "bin/linux-updater.bin") -        self.path("../llplugin/slplugin/SLPlugin", "bin/SLPlugin") -        if self.prefix("res-sdl"): -            self.path("*") -            # recurse -            self.end_prefix("res-sdl") - -        # plugins -        if self.prefix(src="", dst="bin/llplugin"): -            self.path("../media_plugins/webkit/libmedia_plugin_webkit.so", "libmedia_plugin_webkit.so") -            self.path("../media_plugins/gstreamer010/libmedia_plugin_gstreamer010.so", "libmedia_plugin_gstreamer.so") -            self.end_prefix("bin/llplugin") - -        self.path("featuretable_linux.txt") -        #self.path("secondlife-i686.supp") +        try: +            self.path(self.find_existing_file('../llkdu/libllkdu.so', +                '../../libraries/i686-linux/lib_release_client/libllkdu.so'), +                  dst='bin/libllkdu.so') +        except: +            print "Skipping libllkdu.so - not found"          if self.prefix("../../libraries/i686-linux/lib_release_client", dst="lib"):              self.path("libapr-1.so.0") @@ -955,10 +957,6 @@ class Linux_i686Manifest(LinuxManifest):                      self.path("libvivoxplatform.so")                      self.end_prefix("lib") -        if self.args['buildtype'].lower() == 'release' and self.is_packaging_viewer(): -            print "* Going strip-crazy on the packaged binaries, since this is a RELEASE build" -            self.run_command("find %(d)r/bin %(d)r/lib -type f | xargs --no-run-if-empty strip -S" % {'d': self.get_dst_prefix()} ) # makes some small assumptions about our packaged dir structure -  ################################################################  if __name__ == "__main__": | 
