summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-09-05SL-957: Don't move viewer executable until final viewer_manifest run.Nat Goodspeed
viewer_manifest is run twice by CMakeLists.txt: once with --actions=copy and once with the default actions copy and package. The fact that we (try to) move the Mac viewer executable both times has confused things on a number of occasions. Currently it's bollixing our attempt to run dsymutil on the executable so we can package up the Mac symbols for both codeticket and BugSplat. Introduce DarwinManifest.is_rearranging() that tests whether either "package" or "unpacked" is in self.args["actions"], echoing an earlier test. Make several things conditional on that, notably moving the executable.
2018-09-04SL-957: Try passing dsymutil the full pathname of VIEWER_APP_EXE.Nat Goodspeed
2018-09-04SL-957: Try being more explicit about VIEWER_APP_DSYM full pathname.Nat Goodspeed
2018-09-04SL-957: Try removing redundant add_custom_command() dependency.Nat Goodspeed
2018-08-31SL-957: Convert absolute VIEWER_SYMBOL_FILE to native_path.Nat Goodspeed
Thanks Ansariel.
2018-08-31SL-957: Try removing quotes from ${VIEWER_BINARY_NAME} in CMake deps.Nat Goodspeed
2018-08-31SL-957: Pass an absolute pathname to CMake for VIEWER_SYMBOL_FILE.Nat Goodspeed
2018-08-31SL-957: Name VIEWER_BINARY_NAME directly, not an assigned variable.Nat Goodspeed
If this theory is correct, setting VIEWER_APP_EXECUTABLE to VIEWER_BINARY_NAME and then referencing VIEWER_APP_EXECUTABLE instead of VIEWER_BINARY_NAME confuses CMake as to the filename involved. <eyeroll/>
2018-08-31SL-957: Use tar -C instead of changing tar's WORKING_DIRECTORY.Nat Goodspeed
Seems VIEWER_SYMBOL_FILE arrives from build.sh as a relative pathname, so passing that pathname to tar when we run tar with WORKING_DIRECTORY confuses it. But if we use tar's -C switch, we can achieve the effect we want (no leading directory prefixes in the tarball) without WORKING_DIRECTORY. Thing is, we have to run the desired directory through cygpath first, which is why we went with WORKING_DIRECTORY in the first place.
2018-08-30SL-957: Delay trying to pack up Windows PDB file until linker done.Nat Goodspeed
2018-08-30SL-957: Try to add enough CMake dependencies to generate Mac symbols.Nat Goodspeed
2018-08-30SL-957: Use cygpath to set up output pathname for cygwin tar.Nat Goodspeed
2018-08-30SL-957: Generate the expected symbols tarball even with BugSplat.Nat Goodspeed
This is a separate step from generating and posting BugSplat symbols, since BugSplat needs the executable along with the symbols, and we don't need to consume that space in a symbols tarball. Move Mac BugSplat symbol generation logic to CMake land, the same general area where Breakpad symbols are generated. Add stanzas to pack up the usual tarball for Windows and Mac. Remove the build.sh test that suppressed uploading the symbols tarball for BugSplat builds.
2018-08-28SL-824: Update to bugsplat build 519145Nat Goodspeed
2018-08-28SL-824: Update to bugsplat build 519106Nat Goodspeed
2018-08-27SL-824: Update to bugsplat build 519074Nat Goodspeed
2018-08-27SL-957: Explicitly pass VIEWER_SYMBOL_FILE from build.sh into CMakeNat Goodspeed
instead of relying on both indra/newview/CMakeLists.txt and build.sh generating the same file pathname. Make build.sh set VIEWER_SYMBOL_FILE (instead of symbolfile) in pre_build, and pass it to autobuild configure via -D switch. Then the uploads stanza can just use VIEWER_SYMBOL_FILE instead of performing its platform-sensitive case statement right there. Introduce VIEWER_SYMBOL_FILE CMake cache variable, default empty string. Make indra/newview/CMakeLists.txt generate_breakpad_symbols logic conditional on VIEWER_SYMBOL_FILE being non-empty, as well as everything else. Eliminate local set(VIEWER_SYMBOL_FILE) directives.
2018-08-24DRTVWR-447: Introduce explicit CMake BUGSPLAT_DB variable.Nat Goodspeed
Define the CMake cache variable, with empty string as its default. Make build.sh pass the BUGSPLAT_DB environment variable as a CMake command-line variable assignment. Change CMake 'if (DEFINED ENV{BUGSPLAT_DB})' to plain 'if (BUGSPLAT_DB)'. Make CMake pass new --bugsplat switch to every one of SIX different invocations of viewer_manifest.py. Give llmanifest.main() function an argument to allow supplementing the base set of command-line switches with additional application-specific switches. In viewer_manifest.py, define new --bugsplat command-line switch and pass to llmanifest.main(). Instead of consulting os.environ['BUGSPLAT_DB'], consult self.args['bugsplat'].
2018-08-23DRTVWR-447: Add (some) metadata to Mac crash reports.Nat Goodspeed
This required reordering certain operations during Mac viewer startup. Split llappviewermacosx.cpp's initViewer() function into constructViewer() (which instantiates LLAppViewerMacOSX) and initViewer() (which calls LLAppViewerMacOSX::init()). llappdelegate-objc.mm's applicationDidFinishLaunching override now calls [BugsplatStartupManager start] between constructViewer() and initViewer(): we want constructViewer() to have set up the logging subsystem so we can log the actions of BugsplatStartupManagerDelegate override methods, but otherwise we want BugsplatStartupManager in place as early as possible to catch any early crashes. Besides, initViewer() ends up overwriting the static_debug_info.log on which we depend for the *previous* run's crash metadata. Move the code that initializes the pathname of the static_debug_info.log file from LLAppViewerMacOSX::init() to the LLAppViewerMacOSX() constructor, since BugsplatStartupManagerDelegate override methods need to read (the previous run's) file. Add code to applicationLogForBugsplatStartupManager override to set new BugsplatMac 1.0.6 properties userName and userEmail. Don't log empty fields from static_debug_info.log if we couldn't read it.
2018-08-23DRTVWR-447: Update to bugsplat build 518982Nat Goodspeed
2018-08-22DRTVWR-447: Additional logging getting metadata for previous runNat Goodspeed
2018-08-22DRTVWR-447: Add logging to BugsplatMac override methods.Nat Goodspeed
2018-08-22DRTVWR-447: Attempt to post BugSplat metadata with Mac crash reports.Nat Goodspeed
Introduce CrashMetadata, an LLSingleton in llappviewermacosx.cpp, declared in llappviewermacosx-for-objc.h and accessed by the various BugsplatStartupManagerDelegate override methods. CrashMetadata is populated by reading the previous (presumably crashed) run's static_debug_info.log file. This replaces the previous getOldLogFilePathname(), getFatalMessage() and getAgentFullname() functions. To extend that suite for additional metadata, not only would we have to keep adding new free functions, but we'd have to keep rereading the static_debug_info.log file. Override the new applicationKeyForBugsplatStartupManager, defaultUserNameForBugsplatStartupManager, defaultUserEmailForBugsplatStartupManager methods to extract relevant fields from CrashMetadata. Change applicationLogForBugsplatStartupManager and attachmentForBugsplatStartupManager to do the same. Enhance llviewerregion.cpp to update the static_debug_info.log file every time we enter a new region.
2018-08-21DRTVWR-447: Add static_debug_info.log file to Windows crash report.Nat Goodspeed
Also use the LLOSInfo information for platform rather than simply Windows32 or Windows64.
2018-08-21MAINT-8917: For BugSplat viewer, don't create dump-UUID directory.Nat Goodspeed
Just put the static_debug_info.log file in the parent logs directory. Also update that static_debug_info.log file with "FatalMessage" key taken from LL_ERRS() message string.
2018-08-21Don't compare rbegin() iterators, use LLStringUtil::endsWith().Nat Goodspeed
I think the intention of (sDumpDir.rbegin() == mDirDelimiter.rbegin()) was to test whether sDumpDir endsWith(mDirDelimiter). But those iterators will never be equal. Instead, use LLStringUtil::endsWith().
2018-08-21Automated merge with ssh://bitbucket.org/lindenlab/viewer-releaseNat Goodspeed
2018-08-21increment viewer version to 5.1.9Nat Goodspeed
2018-08-21Added tag 5.1.8-release for changeset 23ea0fe36fadNat Goodspeed
2018-08-21SL-824: Update to bugsplat build 518876Nat Goodspeed
2018-08-18SL-824: Update to bugsplat build 518831Nat Goodspeed
2018-08-18Backed out changeset 599911002a5e: revert to bugsplat build 518798.Nat Goodspeed
2018-08-17SL-824: Update to bugsplat build 518806Nat Goodspeed
2018-08-17SL-824: Update to bugsplat build 518798Nat Goodspeed
2018-08-17DRTVWR-447: Use os.path.split(path) instead of path.split(os.sep).Nat Goodspeed
On Windows, where 'path' might be separated either with '/' or '\', the latter breaks unless all path separators are in fact the os.sep character '\'. While it would be possible to code something fancy with os.sep and os.altsep, testing the latter for None, much simpler to let os.path.split() handle it.
2018-08-17SL-824: Update to bugsplat build 518791Nat Goodspeed
2018-08-15DRTVWR-447: Simplify redundant if-key-in-dict-and-value-nonempty logicNat Goodspeed
2018-08-15DRTVWR-447: Streamline some of the logic around extra packages.Nat Goodspeed
2018-08-15DRTVWR-447: Update to bugsplat build 518707Nat Goodspeed
2018-08-15DRTVWR-447: merge reverting Mac suppression to re-enable Mac builds.Nat Goodspeed
2018-08-15Backed out changeset 25b55601514d: re-enable building BugSplat on Mac.Nat Goodspeed
2018-08-10VOICE-50 VOICE-58: recover from SLVoice process exit automaticallyOz Linden
2018-08-02merge changes for 5.1.7-releaseOz Linden
2018-08-02DRTVWR-447: Merge changesets from newly updated viewer-release.Nat Goodspeed
2018-08-02Automated merge with ssh://bitbucket.org/lindenlab/viewer-releaseNat Goodspeed
2018-08-02MAINT-8176: Add canonical_repo field to viewer's autobuild.xml.Nat Goodspeed
2018-08-02increment viewer version to 5.1.8Nat Goodspeed
2018-08-02Added tag 5.1.7-release for changeset ac3b1332ad4fNat Goodspeed
2018-08-02additional logging around launch/termination of SLVoiceOz Linden
2018-07-29retrigger buildOz Linden