summaryrefslogtreecommitdiff
path: root/indra/newview
AgeCommit message (Collapse)Author
2015-01-28MAINT-4744: Eliminate viewer dependency on (old) GNU libstdc++.Nat Goodspeed
To be more accurate, this changeset doesn't actually eliminate the dependency: it eliminates the use cases for the llifstream / llofstream feature that requires it. Currently you can construct an llifstream or llofstream from an open LLFILE* file handle (or, except on Windows, an int file descriptor). But rather than containing a streambuf implementation based on FILE*, llfile.h relies on the fact that the Windows std::filebuf happens to support that as a nonstandard extension; also on a nonstandard GNU extension __gnu_cxx::stdio_filebuf<char>. To move from GNU libstdc++ to clang's libc++ (the direction on Mac), we could code a streambuf that supports FILE*. But before doing that, it's worth asking whether anyone actually uses this questionable feature. In fact there were only two methods: LLWearable::exportFile() and importFile() -- and only one call to either, in LLViewerWearable::saveNewAsset(). The code in saveNewAsset() opened the LLFILE* immediately before calling exportFile(), meaning we could reasonably push the open operation down into exportFile(). That logic was complex anyway due to the need for the caller to close the LLFILE* regardless of the success of the exportFile(). Change LLWearable::exportFile() and importFile() to accept a std::string filename rather than an open LLFILE*. Change LLViewerWearable::saveNewAsset() to simply call exportFile(filename) rather than horsing around with an LLFILE* handle. (This improves the code in another way too: it encapsulates the need to open the relevant file in binary mode. Previously, each caller had to remember to do that.) To prevent inadvertent reintroduction of ll[io]fstream(LLFILE*) code, add llstream_LLFILE preprocessor macro (default 0) to control access to the relevant constructors. Also suppress rdbuf() override, the only method whose signature references llstdio_filebuf.
2015-01-27Include MSVCP120.DLL and MSVCR120.DLL in Windows viewer package.Nat Goodspeed
Generalize Copy3rdPartyLibs.cmake to eliminate some clone-and-tweak redundancy.
2015-01-23Automated merge with http://bitbucket.org/lindenlab/viewer-tools-updateNat Goodspeed
2015-01-23Make MandatoryUpdateMachine use LLLoginInstance's LLNotificationsInterface.Nat Goodspeed
LLLoginInstance has a test hook setNotificationsInterface(), used by lllogininstance_test.cpp to redirect notifications through a dummy LLNotificationsInterface implementation. Certain of LLLoginInstance's MandatoryUpdateMachine state classes need to post notifications too; but until now they directly called LLNotificationsUtil::add(). In the production viewer, this should (!) be the same as calling through LLLoginInstance::mNotifications -- but it broke two of the LLLoginInstance unit tests, so they were skipped. Since MandatoryUpdateMachine's constructor is already passed the invoking LLLoginInstance&, make it store the reference. Add MandatoryUpdateMachine:: getNotificationsInterface(), which forwards to new LLLoginInstance:: getNotificationsInterface(). Change LLNotificationsUtil::add() calls in MandatoryUpdateMachine state classes to call through mMachine's getNotificationInterface() instead. This allows us to remove #include "llnotificationsutil.h" from lllogininstance.cpp, also that #include plus stub LLNotificationsUtil::add() implementation from lllogininstance_test.cpp. Finally, it allows us to remove the skip() calls from the two unit tests.
2015-01-22Automated merge with http://bitbucket.org/lindenlab/viewer-tools-updateNat Goodspeed
2015-01-21For Linux, add libalut.so.0.0.0.0 and libalut.so.0 to viewer tarball.Nat Goodspeed
The former is the real .so, to which libalut.so is only a symlink. We were packaging the symlink without including its target. (This appears to have changed since our last Vivox drop for Linux.)
2015-01-21Make Linux viewer build consume slplugins package, and copy its filesNat Goodspeed
into eventual viewer package -- instead of finding them in the viewer build tree. Also update Windows to current slplugins package build.
2015-01-21Automated merge with http://bitbucket.org/lindenlab/viewer-tools-updateNat Goodspeed
2015-01-21Merge fix for copying Linux Vivox filesNat Goodspeed
2015-01-21Backed out changeset 1e36e0629994 copying .dylibs on LinuxNat Goodspeed
The .dylib files in the Linux Vivox package were erroneous to start with; while the affected changeset bypassed copy errors, it too was wrong. Now that the Linux Vivox package contains Linux .so files, revert to the correct filenames to copy.
2015-01-19Automated merge with http://bitbucket.org/lindenlab/viewer-tools-updateNat Goodspeed
2015-01-19On Linux, don't try to copy SLPlugin or the webkit or gstreamer pluginsNat Goodspeed
since we're not building them as part of the viewer build any more.
2015-01-19Link viewer with OpenAL if appropriateNat Goodspeed
2015-01-19Automated merge with http://bitbucket.org/lindenlab/viewer-tools-updateNat Goodspeed
2015-01-14merge changes for fixes from nat and auraOz Linden
2015-01-14Integrate Callum's Mac slplugins packageNat Goodspeed
2015-01-13changes to fix compiler warnings merged in from viewer-releaseOz Linden
2015-01-13merge changes for 3.7.24-releaseOz Linden
2015-01-12On Mac, if we can't symlink .dylibs, print error message and continue.Nat Goodspeed
To this point, we've been failing the build with a Python OSError traceback, which is less than ideal.
2015-01-12increment viewer version to 3.7.25Oz Linden
2015-01-12Update viewer_package.py to grab slplugin.exe et al. from package.Nat Goodspeed
This only applies to the Windows package so far, because so far only the Windows package exists.
2015-01-08Rationalize use of AUTOBUILD environment variable across languages.Nat Goodspeed
Ensure that AUTOBUILD is always in native path syntax on every platform. Remove local build.sh logic to infer AUTOBUILD: either the generic build.sh has set it properly, or scream for help. Since cygwin bash scripts need a cygwin-syntax path to autobuild, convert to a local 'autobuild' variable using shell_path. Remove kludges in other languages involving cygdrive twiddling.
2015-01-07Automated merge with ssh://bitbucket.org/lindenlab/viewer-tools-updateNat Goodspeed
2015-01-07First cut at consuming new slplugins autobuild package.Nat Goodspeed
The contents are extracted, but not yet built into the viewer installer.
2015-01-07Replace reduce(operator.or_, ...) with any(...).Nat Goodspeed
The any() builtin was introduced in Python 2.5. Not only is its intent clearer, but it handles the case of zero items -- which the reduce(or_) construct does not. Sporadically we've seen exceptions from generate_breakpad_symbols.py when reduce(or_, ...) is given zero items. This masks the actual error (failure to dump symbols? failure to read them?), masquerading as a bug in the Python script.
2014-12-29Fix typo introduced into viewer_manifest file (sprefix -> prefix)callum_linden
2014-12-23Restore Unicode path to viewer_manifest script - apparently we use the ↵callum_linden
Unicode version of NSIS, not the one from the NULLSOFT site
2014-12-23Updated path to NSIS installer for most recent (non-beta) version of NSIS v2.46callum_linden
2014-12-22update libs to match vivox distributionOz Linden
2014-12-19Sort include(...) lines to make it easier for a person to verify.Nat Goodspeed
2014-12-18Automated merge with ssh://bitbucket.org/lindenlab/viewer-tools-updateNat Goodspeed
2014-12-18increment viewer version to 3.7.24Oz Linden
2014-12-17Delete misleading comment about testing llcapabilitylistener.Nat Goodspeed
There was a comment in CMakeLists.txt left over from 2009 (!) about commenting out the unit test for llcapabilitylistener. Fortunately we've since reinstated the test as an integration test, but the comment was never removed -- until now.
2014-12-17merge latest updates from nat and callumOz Linden
2014-12-15fix for some std::pair/STL syntaxcallum_linden
2014-12-15merge changes for 3.7.22-releaseOz Linden
2014-12-12Implicit conversion from ostream to string needs help in VS2013callum_linden
2014-12-12Eliminate use of boost::lambda with boost::function (Trac #10864).Nat Goodspeed
https://svn.boost.org/trac/boost/ticket/10864 I've used boost::lambda with boost::function in a number of creative ways over the years. But the clang 6 shipped with Xcode 6 seems to have somehow broken lambda + function in Boost 1.57. boost::phoenix is a partial workaround. Sadly, lambda's comma-operator overload doesn't seem to be supported, necessitating a couple ugly workarounds. With real lambdas now supported by current compilers, I'm sure the Boost community has little incentive to repair the lambda + function problem. Presumably we'll be able to use such features ourselves Real Soon Now...
2014-12-10Rename llround(..) to ll_round(..) because of a collision with MS llround ↵callum_linden
(long long round) in VS2013
2014-12-08mergeBrad Payne (Vir Linden)
2014-12-05increment viewer version to 3.7.23Oz Linden
2014-12-01merge fixBrad Payne (Vir Linden)
2014-12-01remove unused gpu table code, improve logging for gpu benchmarksOz Linden
2014-12-01mergeBrad Payne (Vir Linden)
2014-12-01mergeBrad Payne (Vir Linden)
2014-12-01merge changes for 3.7.21 releaseOz Linden
2014-12-01increment viewer version to 3.7.22Oz Linden
2014-11-24Attempt to thread needle for guesstimation phase of GPU classificationGraham Linden
2014-11-21automate keeping the About SL -> Licenses tab correctOz Linden
2014-11-21Tweak conversion from tested bandwidth to get better reads on low-end systemsGraham Linden