From 296480d552e36f6aae9d94129386d984781da2ef Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Mon, 16 Sep 2019 12:50:30 -0400 Subject: SL-11598: viewer_manifest.py should fail if a viewer file is missing --- indra/newview/viewer_manifest.py | 34 ++++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 14 deletions(-) (limited to 'indra/newview') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index fcb97ded8f..3f6a7124a4 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -46,7 +46,7 @@ viewer_dir = os.path.dirname(__file__) # Put it FIRST because some of our build hosts have an ancient install of # indra.util.llmanifest under their system Python! sys.path.insert(0, os.path.join(viewer_dir, os.pardir, "lib", "python")) -from indra.util.llmanifest import LLManifest, main, path_ancestors, CHANNEL_VENDOR_BASE, RELEASE_CHANNEL, ManifestError +from indra.util.llmanifest import LLManifest, main, path_ancestors, CHANNEL_VENDOR_BASE, RELEASE_CHANNEL, ManifestError, MissingError from llbase import llsd class ViewerManifest(LLManifest): @@ -176,9 +176,6 @@ class ViewerManifest(LLManifest): self.path("*.j2c") self.path("*.tga") - # File in the newview/ directory - self.path("gpu_table.txt") - #build_data.json. Standard with exception handling is fine. If we can't open a new file for writing, we have worse problems #platform is computed above with other arg parsing build_data_dict = {"Type":"viewer","Version":'.'.join(self.args['version']), @@ -524,7 +521,7 @@ class WindowsManifest(ViewerManifest): self.path('libaprutil-1.dll') self.path('libapriconv-1.dll') - except RuntimeError as err: + except MissingError as err: print err.message print "Skipping llcommon.dll (assuming llcommon was linked statically)" @@ -990,7 +987,7 @@ class DarwinManifest(ViewerManifest): with self.prefix(src=relpkgdir, dst=""): self.path("libndofdev.dylib") - self.path("libhunspell-1.3.0.dylib") + self.path("libhunspell-1.3.a") with self.prefix(src_dst="cursors_mac"): self.path("*.tif") @@ -1037,11 +1034,15 @@ class DarwinManifest(ViewerManifest): # (source, dest) pair to self.file_list for every expanded # file processed. Remember its size before the call. oldlen = len(self.file_list) - self.path(src, dst) - # The dest appended to self.file_list has been prepended - # with self.get_dst_prefix(). Strip it off again. - added = [os.path.relpath(d, self.get_dst_prefix()) - for s, d in self.file_list[oldlen:]] + try: + self.path(src, dst) + # The dest appended to self.file_list has been prepended + # with self.get_dst_prefix(). Strip it off again. + added = [os.path.relpath(d, self.get_dst_prefix()) + for s, d in self.file_list[oldlen:]] + except MissingError as err: + print >> sys.stderr, "Warning: "+err.msg + added = [] if not added: print "Skipping %s" % dst return added @@ -1076,8 +1077,8 @@ class DarwinManifest(ViewerManifest): # SLVoice and vivox lols, no symlinks needed for libfile in ( 'libortp.dylib', - 'libsndfile.dylib', - 'libvivoxoal.dylib', + #'libsndfile.dylib', + #'libvivoxoal.dylib', 'libvivoxsdk.dylib', 'libvivoxplatform.dylib', 'SLVoice', @@ -1596,4 +1597,9 @@ if __name__ == "__main__": dict(name='bugsplat', description="""BugSplat database to which to post crashes, if BugSplat crash reporting is desired""", default=''), ] - main(extra=extra_arguments) + try: + main(extra=extra_arguments) + except (ManifestError, MissingError) as err: + sys.exit("\nviewer_manifest.py failed: "+err.msg) + except: + raise -- cgit v1.2.3 From 637b13cf74341c25d1c0cdc565efdbee2694dac9 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Wed, 18 Sep 2019 10:26:27 -0400 Subject: SL-11598: Remove from viewer_manifest.py pointless Windows wildcards. By "pointless" we mean filenames or patterns in the Windows platform specification that always match 0 files. Add logic to llmanifest.py to collect and report all missing files, instead of stopping at the first. --- indra/newview/viewer_manifest.py | 34 ---------------------------------- 1 file changed, 34 deletions(-) (limited to 'indra/newview') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 3f6a7124a4..9976c49ca5 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -145,13 +145,10 @@ class ViewerManifest(LLManifest): with self.prefix(src_dst="skins"): # include the entire textures directory recursively with self.prefix(src_dst="*/textures"): - self.path("*/*.tga") - self.path("*/*.j2c") self.path("*/*.jpg") self.path("*/*.png") self.path("*.tga") self.path("*.j2c") - self.path("*.jpg") self.path("*.png") self.path("textures.xml") self.path("*/xui/*/*.xml") @@ -171,11 +168,6 @@ class ViewerManifest(LLManifest): self.path("*/*/*.gif") - # local_assets dir (for pre-cached textures) - with self.prefix(src_dst="local_assets"): - self.path("*.j2c") - self.path("*.tga") - #build_data.json. Standard with exception handling is fine. If we can't open a new file for writing, we have worse problems #platform is computed above with other arg parsing build_data_dict = {"Type":"viewer","Version":'.'.join(self.args['version']), @@ -514,17 +506,6 @@ class WindowsManifest(ViewerManifest): with self.prefix(src=os.path.join(self.args['build'], os.pardir, 'sharedlibs', self.args['configuration'])): - # Get llcommon and deps. If missing assume static linkage and continue. - try: - self.path('llcommon.dll') - self.path('libapr-1.dll') - self.path('libaprutil-1.dll') - self.path('libapriconv-1.dll') - - except MissingError as err: - print err.message - print "Skipping llcommon.dll (assuming llcommon was linked statically)" - # Mesh 3rd party libs needed for auto LOD and collada reading try: self.path("glod.dll") @@ -549,13 +530,9 @@ class WindowsManifest(ViewerManifest): if self.args['configuration'].lower() == 'debug': self.path("msvcr120d.dll") self.path("msvcp120d.dll") - self.path("msvcr100d.dll") - self.path("msvcp100d.dll") else: self.path("msvcr120.dll") self.path("msvcp120.dll") - self.path("msvcr100.dll") - self.path("msvcp100.dll") # Vivox runtimes self.path("SLVoice.exe") @@ -565,8 +542,6 @@ class WindowsManifest(ViewerManifest): else: self.path("vivoxsdk.dll") self.path("ortp.dll") - self.path("libsndfile-1.dll") - self.path("vivoxoal.dll") # Security self.path("ssleay32.dll") @@ -589,15 +564,6 @@ class WindowsManifest(ViewerManifest): self.path("BugSplat.dll") self.path("BugSplatRc.dll") - # For google-perftools tcmalloc allocator. - try: - if self.args['configuration'].lower() == 'debug': - self.path('libtcmalloc_minimal-debug.dll') - else: - self.path('libtcmalloc_minimal.dll') - except: - print "Skipping libtcmalloc_minimal.dll" - self.path(src="licenses-win32.txt", dst="licenses.txt") self.path("featuretable.txt") -- cgit v1.2.3 From 5aff3dfaf950c16ca6ea5708026f917602021dcb Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Wed, 18 Sep 2019 12:51:03 -0400 Subject: more Mac manifest cleanup --- indra/newview/viewer_manifest.py | 16 +--------------- 1 file changed, 1 insertion(+), 15 deletions(-) (limited to 'indra/newview') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 9976c49ca5..caf7815497 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -1018,33 +1018,19 @@ class DarwinManifest(ViewerManifest): # symlink from sub-app/Contents/Resources to the real .dylib. # Need to get the llcommon dll from any of the build directories as well. libfile_parent = self.get_dst_prefix() - libfile = "libllcommon.dylib" - dylibs = path_optional(self.find_existing_file(os.path.join(os.pardir, - "llcommon", - self.args['configuration'], - libfile), - os.path.join(relpkgdir, libfile)), - dst=libfile) - for libfile in ( "libapr-1.0.dylib", "libaprutil-1.0.dylib", - "libcollada14dom.dylib", "libexpat.1.dylib", "libexception_handler.dylib", "libGLOD.dylib", - # libnghttp2.dylib is a symlink to - # libnghttp2.major.dylib, which is a symlink to - # libnghttp2.version.dylib. Get all of them. "libnghttp2.*dylib", ): - dylibs += path_optional(os.path.join(relpkgdir, libfile), libfile) + dylibs = path_optional(os.path.join(relpkgdir, libfile), libfile) # SLVoice and vivox lols, no symlinks needed for libfile in ( 'libortp.dylib', - #'libsndfile.dylib', - #'libvivoxoal.dylib', 'libvivoxsdk.dylib', 'libvivoxplatform.dylib', 'SLVoice', -- cgit v1.2.3 From f87e1a43b803d8d84ab0ff6683985c0f604522ff Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Fri, 20 Sep 2019 04:35:15 -0400 Subject: remove obsolete llcommon dylib for Mac --- indra/newview/viewer_manifest.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'indra/newview') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index caf7815497..f56dd461d8 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -1018,15 +1018,19 @@ class DarwinManifest(ViewerManifest): # symlink from sub-app/Contents/Resources to the real .dylib. # Need to get the llcommon dll from any of the build directories as well. libfile_parent = self.get_dst_prefix() + dylibs=[] for libfile in ( "libapr-1.0.dylib", "libaprutil-1.0.dylib", "libexpat.1.dylib", "libexception_handler.dylib", "libGLOD.dylib", + # libnghttp2.dylib is a symlink to + # libnghttp2.major.dylib, which is a symlink to + # libnghttp2.version.dylib. Get all of them. "libnghttp2.*dylib", ): - dylibs = path_optional(os.path.join(relpkgdir, libfile), libfile) + dylibs += path_optional(os.path.join(relpkgdir, libfile), libfile) # SLVoice and vivox lols, no symlinks needed for libfile in ( -- cgit v1.2.3 From 4cbef35f503bb7ee8f489b354e4afb2350085709 Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Tue, 16 Jul 2019 18:17:23 -0400 Subject: update Vivox for VOICE-56 --- indra/newview/viewer_manifest.py | 2 -- 1 file changed, 2 deletions(-) (limited to 'indra/newview') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index f56dd461d8..8a38f3a742 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -1036,7 +1036,6 @@ class DarwinManifest(ViewerManifest): for libfile in ( 'libortp.dylib', 'libvivoxsdk.dylib', - 'libvivoxplatform.dylib', 'SLVoice', ): self.path2basename(relpkgdir, libfile) @@ -1532,7 +1531,6 @@ class Linux_i686_Manifest(LinuxManifest): self.path("libsndfile.so.1") #self.path("libvivoxoal.so.1") # no - we'll re-use the viewer's own OpenAL lib self.path("libvivoxsdk.so") - self.path("libvivoxplatform.so") self.strip_binaries() -- cgit v1.2.3 From b74f698caaaa6ac8d498ea0461c354bb9cbb2b95 Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Fri, 6 Sep 2019 11:51:36 -0400 Subject: handle slvoice executable separately from the vivox libraries, and update mac slvoice package --- indra/newview/viewer_manifest.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'indra/newview') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 8a38f3a742..c5cf237f63 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -534,8 +534,11 @@ class WindowsManifest(ViewerManifest): self.path("msvcr120.dll") self.path("msvcp120.dll") - # Vivox runtimes - self.path("SLVoice.exe") + # SLVoice executable + with self.prefix(src=os.path.join(pkgdir, 'bin', 'release')): + self.path("SLVoice.exe") + + # Vivox libraries if (self.address_size == 64): self.path("vivoxsdk_x64.dll") self.path("ortp_x64.dll") @@ -1032,11 +1035,14 @@ class DarwinManifest(ViewerManifest): ): dylibs += path_optional(os.path.join(relpkgdir, libfile), libfile) - # SLVoice and vivox lols, no symlinks needed + # SLVoice executable + with self.prefix(src=os.path.join(pkgdir, 'bin', 'release')): + self.path("SLVoice.exe") + + # Vivox libraries for libfile in ( 'libortp.dylib', 'libvivoxsdk.dylib', - 'SLVoice', ): self.path2basename(relpkgdir, libfile) -- cgit v1.2.3 From 1ed2cfaaf6b33014febbe2232fe31b5e9bd90aed Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Fri, 13 Sep 2019 15:21:47 -0400 Subject: correct Mac SLVoice executable name --- indra/newview/viewer_manifest.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index c5cf237f63..a4cda0ba78 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -1037,7 +1037,7 @@ class DarwinManifest(ViewerManifest): # SLVoice executable with self.prefix(src=os.path.join(pkgdir, 'bin', 'release')): - self.path("SLVoice.exe") + self.path("SLVoice") # Vivox libraries for libfile in ( -- cgit v1.2.3 From d89130c32ab73f87f57c5294be3e7fe1cb856258 Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Fri, 4 Oct 2019 15:16:24 -0400 Subject: rename SLVoice log file and rotate the way we do for SecondLife.log --- indra/newview/llvoicevivox.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'indra/newview') diff --git a/indra/newview/llvoicevivox.cpp b/indra/newview/llvoicevivox.cpp index e10ba77e16..739f7bd47c 100644 --- a/indra/newview/llvoicevivox.cpp +++ b/indra/newview/llvoicevivox.cpp @@ -824,6 +824,20 @@ bool LLVivoxVoiceClient::startAndLaunchDaemon() params.args.add("-lf"); params.args.add(log_folder); + // set log file basename and .log + params.args.add("-lp"); + params.args.add("SLVoice"); + params.args.add("-ls"); + params.args.add(".log"); + + // rotate any existing log + std::string new_log = gDirUtilp->getExpandedFilename(LL_PATH_LOGS, "SLVoice.log"); + std::string old_log = gDirUtilp->getExpandedFilename(LL_PATH_LOGS, "SLVoice.old"); + if (gDirUtilp->fileExists(new_log)) + { + LLFile::rename(new_log, old_log); + } + std::string shutdown_timeout = gSavedSettings.getString("VivoxShutdownTimeout"); if (!shutdown_timeout.empty()) { -- cgit v1.2.3 From 98e70bdf9e9ae14a45d1a99f4ba3e71aaeb34f46 Mon Sep 17 00:00:00 2001 From: andreykproductengine Date: Mon, 21 Oct 2019 21:22:39 +0300 Subject: SL-10908 Cleanup, Removed obsolete logging --- indra/newview/llstartup.cpp | 7 ------- 1 file changed, 7 deletions(-) (limited to 'indra/newview') diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp index 5f235c05a6..3771797929 100644 --- a/indra/newview/llstartup.cpp +++ b/indra/newview/llstartup.cpp @@ -352,13 +352,6 @@ bool idle_startup() gIdleCallbacks.callFunctions(); gViewerWindow->updateUI(); - // There is a crash on updateClass, this is an attempt to get more information - if (LLMortician::graveyardCount()) - { - std::stringstream log_stream; - LLMortician::logClass(log_stream); - LL_INFOS() << log_stream.str() << LL_ENDL; - } LLMortician::updateClass(); const std::string delims (" "); -- cgit v1.2.3 From 3fb47a820bbded434f11d7d555613c17345f974a Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Wed, 23 Oct 2019 11:13:04 -0400 Subject: OPEN-347: Remove ineffective, disabled 'hdiutil internet-enable'. macOS Catalina no longer even recognizes that subcommand. Remove it. --- indra/newview/viewer_manifest.py | 1 - 1 file changed, 1 deletion(-) (limited to 'indra/newview') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index fcb97ded8f..c490b58914 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -1370,7 +1370,6 @@ class DarwinManifest(ViewerManifest): print "Converting temp disk image to final disk image" self.run_command(['hdiutil', 'convert', sparsename, '-format', 'UDZO', '-imagekey', 'zlib-level=9', '-o', finalname]) - self.run_command(['hdiutil', 'internet-enable', '-yes', finalname]) # get rid of the temp file self.package_file = finalname self.remove(sparsename) -- cgit v1.2.3 From 197cb2654cb6e7891322c113666e656684e8c6c3 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Tue, 29 Oct 2019 12:31:52 -0400 Subject: increment viewer version to 6.3.4 --- indra/newview/VIEWER_VERSION.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview') diff --git a/indra/newview/VIEWER_VERSION.txt b/indra/newview/VIEWER_VERSION.txt index 7849b73dc7..8ac3c44511 100644 --- a/indra/newview/VIEWER_VERSION.txt +++ b/indra/newview/VIEWER_VERSION.txt @@ -1 +1 @@ -6.3.3 +6.3.4 -- cgit v1.2.3