From a26386c53a09d47eff092ad89b5684503ee31b9d Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Wed, 3 Nov 2010 08:43:31 -0400 Subject: For non-Release Linux build, explain why we don't create tarball. --- indra/newview/viewer_manifest.py | 3 +++ 1 file changed, 3 insertions(+) (limited to 'indra/newview/viewer_manifest.py') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 6861f02bfb..4b98a11091 100644 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -897,6 +897,9 @@ class LinuxManifest(ViewerManifest): 'dir': self.get_build_prefix(), 'inst_name': installer_name, 'inst_path':self.build_path_of(installer_name)}) + else: + print "Skipping %s.tar.bz2 for non-Release build (%s)" % \ + (installer_name, self.args['buildtype']) finally: self.run_command("mv %(inst)s %(dst)s" % { 'dst': self.get_dst_prefix(), -- cgit v1.2.3 From 65997a1f5bb05dd263063606c00e0633af282784 Mon Sep 17 00:00:00 2001 From: brad kittenbrink Date: Wed, 3 Nov 2010 14:39:24 -0700 Subject: Added some logging to viewer_manifest.py to attempt to narrow down the Mac packaging failures a bit. --- indra/newview/viewer_manifest.py | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'indra/newview/viewer_manifest.py') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 4b98a11091..4596938775 100644 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -743,6 +743,11 @@ class DarwinManifest(ViewerManifest): devfile = re.search("/dev/disk([0-9]+)[^s]", hdi_output).group(0).strip() volpath = re.search('HFS\s+(.+)', hdi_output).group(1).strip() + if devfile != '/dev/disk1': + # adding more debugging info based upon nat's hunches to the + # logs to help track down 'SetFile -a V' failures -brad + print "WARNING: 'SetFile -a V' command below is probably gonna fail" + # Copy everything in to the mounted .dmg if self.default_channel() and not self.default_grid(): -- cgit v1.2.3 From fdf616c59d87219e2d5ad6e12687cf2793cfba1e Mon Sep 17 00:00:00 2001 From: "Andrew A. de Laix" Date: Tue, 9 Nov 2010 11:23:32 -0800 Subject: beginnings of the update installer (with simple install script for darwin). --- indra/newview/viewer_manifest.py | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'indra/newview/viewer_manifest.py') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 4596938775..f95697adb6 100644 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -575,6 +575,10 @@ class DarwinManifest(ViewerManifest): # most everything goes in the Resources directory if self.prefix(src="", dst="Resources"): super(DarwinManifest, self).construct() + + if self.prefix(src="../viewer_components/updater", dst=""): + self.path("update_install") + self.end_prefix() if self.prefix("cursors_mac"): self.path("*.tif") -- cgit v1.2.3 From 6e15957d909787ba612004903f04335a593b5348 Mon Sep 17 00:00:00 2001 From: "Andrew A. de Laix" Date: Thu, 11 Nov 2010 09:40:30 -0800 Subject: run install script on successful download --- indra/newview/viewer_manifest.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'indra/newview/viewer_manifest.py') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index f95697adb6..0073641ed4 100644 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -571,14 +571,16 @@ class DarwinManifest(ViewerManifest): # copy additional libs in /Contents/MacOS/ self.path("../../libraries/universal-darwin/lib_release/libndofdev.dylib", dst="MacOS/libndofdev.dylib") + + + if self.prefix(src="../viewer_components/updater", dst="MacOS"): + self.path("update_install") + self.end_prefix() + # most everything goes in the Resources directory if self.prefix(src="", dst="Resources"): super(DarwinManifest, self).construct() - - if self.prefix(src="../viewer_components/updater", dst=""): - self.path("update_install") - self.end_prefix() if self.prefix("cursors_mac"): self.path("*.tif") -- cgit v1.2.3 From 4e22d63352dd65085cfbba9c22070271ecdd4bcf Mon Sep 17 00:00:00 2001 From: "Andrew A. de Laix" Date: Thu, 11 Nov 2010 11:05:46 -0800 Subject: Add very basic windows install script. --- indra/newview/viewer_manifest.py | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'indra/newview/viewer_manifest.py') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 0073641ed4..55d64fd3a6 100644 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -251,6 +251,10 @@ class WindowsManifest(ViewerManifest): if self.prefix(src=os.path.join(os.pardir, 'sharedlibs', self.args['configuration']), dst=""): + if self.prefix(src="../../viewer_components/updater", dst=""): + self.path("update_install.bat") + self.end_prefix() + self.enable_crt_manifest_check() # Get kdu dll, continue if missing. -- cgit v1.2.3 From 13b77e3622de18ac8d06fdfffceb08990eb908f9 Mon Sep 17 00:00:00 2001 From: "Mark Palange (Mani)" Date: Tue, 16 Nov 2010 16:21:17 -0800 Subject: CHOP-179 Linux install uses linux-updater. Rev. by Alain --- indra/newview/viewer_manifest.py | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) (limited to 'indra/newview/viewer_manifest.py') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 55d64fd3a6..5d35778e3e 100644 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -247,13 +247,12 @@ class WindowsManifest(ViewerManifest): self.disable_manifest_check() + self.path("../viewer_components/updater/scripts/windows/update_install.bat") + # Get shared libs from the shared libs staging directory if self.prefix(src=os.path.join(os.pardir, 'sharedlibs', self.args['configuration']), dst=""): - if self.prefix(src="../../viewer_components/updater", dst=""): - self.path("update_install.bat") - self.end_prefix() self.enable_crt_manifest_check() @@ -575,12 +574,8 @@ class DarwinManifest(ViewerManifest): # copy additional libs in /Contents/MacOS/ self.path("../../libraries/universal-darwin/lib_release/libndofdev.dylib", dst="MacOS/libndofdev.dylib") - - - if self.prefix(src="../viewer_components/updater", dst="MacOS"): - self.path("update_install") - self.end_prefix() + self.path("../viewer_components/updater/scripts/darwin/update_install", "MacOS/update_install") # most everything goes in the Resources directory if self.prefix(src="", dst="Resources"): @@ -857,6 +852,8 @@ class LinuxManifest(ViewerManifest): # recurse self.end_prefix("res-sdl") + self.path("../viewer_components/updater/scripts/linux/update_install", "bin/update_install") + # plugins if self.prefix(src="", dst="bin/llplugin"): self.path("../media_plugins/webkit/libmedia_plugin_webkit.so", "libmedia_plugin_webkit.so") -- cgit v1.2.3 From c61d89f61d0b696e6e73105ed7be7580bf1b3437 Mon Sep 17 00:00:00 2001 From: "Mark Palange (Mani)" Date: Wed, 17 Nov 2010 12:24:37 -0800 Subject: CHOP-203 Fixed linux release bug - exclude update_install from symbol strippage --- indra/newview/viewer_manifest.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/viewer_manifest.py') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 5d35778e3e..4e5d6271df 100644 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -882,7 +882,7 @@ class LinuxManifest(ViewerManifest): 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 + self.run_command("find %(d)r/bin %(d)r/lib -type f \\! -name update_install | 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(""" -- cgit v1.2.3 From a062c73ff418ee57e393effb09f494818bc63d6c Mon Sep 17 00:00:00 2001 From: brad kittenbrink Date: Fri, 19 Nov 2010 15:54:03 -0800 Subject: Fix for windows installer missing update_install.bat. Paired with mani. --- indra/newview/viewer_manifest.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/viewer_manifest.py') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 4e5d6271df..54bf3a5918 100644 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -247,7 +247,7 @@ class WindowsManifest(ViewerManifest): self.disable_manifest_check() - self.path("../viewer_components/updater/scripts/windows/update_install.bat") + self.path(src="../viewer_components/updater/scripts/windows/update_install.bat", dst="") # Get shared libs from the shared libs staging directory if self.prefix(src=os.path.join(os.pardir, 'sharedlibs', self.args['configuration']), -- cgit v1.2.3 From 870773ec17b032164f5dd6711969a6e60778a53b Mon Sep 17 00:00:00 2001 From: brad kittenbrink Date: Fri, 19 Nov 2010 17:44:59 -0800 Subject: Fix for viewer_manifest.py failure on windows. --- indra/newview/viewer_manifest.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'indra/newview/viewer_manifest.py') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 54bf3a5918..1bc118139f 100644 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -247,13 +247,12 @@ class WindowsManifest(ViewerManifest): self.disable_manifest_check() - self.path(src="../viewer_components/updater/scripts/windows/update_install.bat", dst="") + self.path(src="../viewer_components/updater/scripts/windows/update_install.bat", dst="update_install.bat") # Get shared libs from the shared libs staging directory if self.prefix(src=os.path.join(os.pardir, 'sharedlibs', self.args['configuration']), dst=""): - self.enable_crt_manifest_check() # Get kdu dll, continue if missing. -- cgit v1.2.3 From 76ba60db0b01316022c9af7ef996f84d5141485d Mon Sep 17 00:00:00 2001 From: brad kittenbrink Date: Mon, 29 Nov 2010 15:19:52 -0800 Subject: Better fix for CHOP-223. Comments on the mercurial bug tracker indicate that this bug is likely to recur, so we work around it in viewer_manifest.py now. http://mercurial.selenic.com/bts/issue1802 --- indra/newview/viewer_manifest.py | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'indra/newview/viewer_manifest.py') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 1bc118139f..9a99c17f30 100644 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -711,6 +711,11 @@ class DarwinManifest(ViewerManifest): self.run_command('strip -S %(viewer_binary)r' % { 'viewer_binary' : self.dst_path_of('Contents/MacOS/Second Life')}) + def copy_finish(self): + # Force executable permissions to be set for scripts + # see CHOP-223 and http://mercurial.selenic.com/bts/issue1802 + for script in 'MacOS/update_install': + self.run_command("chmod +x %r" % os.path.join(self.get_dst_prefix(), script)) def package_finish(self): channel_standin = 'Second Life Viewer 2' # hah, our default channel is not usable on its own @@ -866,6 +871,12 @@ class LinuxManifest(ViewerManifest): self.path("featuretable_linux.txt") + def copy_finish(self): + # Force executable permissions to be set for scripts + # see CHOP-223 and http://mercurial.selenic.com/bts/issue1802 + for script in 'secondlife', 'bin/update_install': + self.run_command("chmod +x %r" % os.path.join(self.get_dst_prefix(), script)) + def package_finish(self): if 'installer_name' in self.args: installer_name = self.args['installer_name'] -- cgit v1.2.3 From 7c287011f9474be8c57374768950e40386e1b0ec Mon Sep 17 00:00:00 2001 From: brad kittenbrink Date: Mon, 29 Nov 2010 15:49:48 -0800 Subject: CHOP-223 fix for mac build breakage introduced in the last change. --- indra/newview/viewer_manifest.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/viewer_manifest.py') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 9a99c17f30..ea62760f31 100644 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -714,7 +714,7 @@ class DarwinManifest(ViewerManifest): def copy_finish(self): # Force executable permissions to be set for scripts # see CHOP-223 and http://mercurial.selenic.com/bts/issue1802 - for script in 'MacOS/update_install': + for script in 'MacOS/update_install',: self.run_command("chmod +x %r" % os.path.join(self.get_dst_prefix(), script)) def package_finish(self): -- cgit v1.2.3 From ee981dd58103f7ee332ff264031b4cca0c85e759 Mon Sep 17 00:00:00 2001 From: brad kittenbrink Date: Mon, 29 Nov 2010 16:22:20 -0800 Subject: CHOP-223 fix for more mac build breakage from the previous changes. --- indra/newview/viewer_manifest.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/viewer_manifest.py') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index ea62760f31..6c77f8ec38 100644 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -714,7 +714,7 @@ class DarwinManifest(ViewerManifest): def copy_finish(self): # Force executable permissions to be set for scripts # see CHOP-223 and http://mercurial.selenic.com/bts/issue1802 - for script in 'MacOS/update_install',: + for script in 'Contents/MacOS/update_install',: self.run_command("chmod +x %r" % os.path.join(self.get_dst_prefix(), script)) def package_finish(self): -- cgit v1.2.3 From f18c381d1af129002d1c364eb525b52e42d70e7d Mon Sep 17 00:00:00 2001 From: Loren Shih Date: Wed, 1 Dec 2010 18:05:25 -0500 Subject: Fixes for viewer-development merge into viewer-mesh. Manually merged llappviewer and viewer_manifest.py. --- indra/newview/viewer_manifest.py | 63 ++++++++++++++++++++++++++++++++++++++-- 1 file changed, 60 insertions(+), 3 deletions(-) (limited to 'indra/newview/viewer_manifest.py') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 6c77f8ec38..3003617b37 100644 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -248,13 +248,12 @@ class WindowsManifest(ViewerManifest): self.disable_manifest_check() self.path(src="../viewer_components/updater/scripts/windows/update_install.bat", dst="update_install.bat") - # Get shared libs from the shared libs staging directory if self.prefix(src=os.path.join(os.pardir, 'sharedlibs', self.args['configuration']), dst=""): self.enable_crt_manifest_check() - + # Get kdu dll, continue if missing. try: self.path('llkdu.dll', dst='llkdu.dll') @@ -267,12 +266,26 @@ class WindowsManifest(ViewerManifest): self.path('libapr-1.dll') self.path('libaprutil-1.dll') self.path('libapriconv-1.dll') + except RuntimeError, err: print err.message print "Skipping llcommon.dll (assuming llcommon was linked statically)" self.disable_manifest_check() + # Mesh 3rd party libs needed for auto LOD and collada reading + try: + if self.args['configuration'].lower() == 'debug': + self.path("libcollada14dom21-d.dll") + else: + self.path("libcollada14dom21.dll") + + self.path("glod.dll") + except RuntimeError, err: + print err.message + print "Skipping COLLADA and GLOD libraries (assumming linked statically)" + + # Get fmod dll, continue if missing try: self.path("fmod.dll") @@ -324,7 +337,7 @@ class WindowsManifest(ViewerManifest): self.path("dbghelp.dll") self.enable_no_crt_manifest_check() - + # Media plugins - QuickTime if self.prefix(src='../media_plugins/quicktime/%s' % self.args['configuration'], dst="llplugin"): self.path("media_plugin_quicktime.dll") @@ -646,6 +659,8 @@ class DarwinManifest(ViewerManifest): "libaprutil-1.0.3.8.dylib", "libexpat.0.5.0.dylib", "libexception_handler.dylib", + "libGLOD.dylib", + "libcollada14dom.dylib" ): self.path(os.path.join(libdir, libfile), libfile) @@ -672,6 +687,8 @@ class DarwinManifest(ViewerManifest): "libaprutil-1.0.3.8.dylib", "libexpat.0.5.0.dylib", "libexception_handler.dylib", + "libGLOD.dylib", + "libcollada14dom.dylib" ): target_lib = os.path.join('../../..', libfile) self.run_command("ln -sf %(target)r %(link)r" % @@ -711,6 +728,7 @@ class DarwinManifest(ViewerManifest): self.run_command('strip -S %(viewer_binary)r' % { 'viewer_binary' : self.dst_path_of('Contents/MacOS/Second Life')}) + def copy_finish(self): # Force executable permissions to be set for scripts # see CHOP-223 and http://mercurial.selenic.com/bts/issue1802 @@ -939,6 +957,36 @@ class Linux_i686Manifest(LinuxManifest): dst='bin/libllkdu.so') except: print "Skipping libllkdu.so - not found" + 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") if self.prefix("../../libraries/i686-linux/lib_release_client", dst="lib"): self.path("libapr-1.so.0") @@ -946,7 +994,9 @@ class Linux_i686Manifest(LinuxManifest): self.path("libbreakpad_client.so.0.0.0", "libbreakpad_client.so.0") self.path("libdb-4.2.so") self.path("libcrypto.so.0.9.7") + self.path("libuuid.so.1") self.path("libexpat.so.1") + self.path("libglod.so") self.path("libssl.so.0.9.7") self.path("libuuid.so.1") self.path("libSDL-1.2.so.0") @@ -955,6 +1005,8 @@ class Linux_i686Manifest(LinuxManifest): self.path("libalut.so") self.path("libopenal.so", "libopenal.so.1") self.path("libopenal.so", "libvivoxoal.so.1") # vivox's sdk expects this soname + self.path("libtcmalloc_minimal.so", "libtcmalloc_minimal.so") #formerly called google perf tools + self.path("libtcmalloc_minimal.so.0", "libtcmalloc_minimal.so.0") #formerly called google perf tools try: self.path("libkdu.so") pass @@ -981,6 +1033,11 @@ 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 + + class Linux_x86_64Manifest(LinuxManifest): def construct(self): super(Linux_x86_64Manifest, self).construct() -- cgit v1.2.3