summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-12-22DRTVWR-418: Emit less confusing error message when LL_BUILD not set.Nat Goodspeed
When LL_BUILD is not in the environment at autobuild configure time, important macros such as LL_WINDOWS aren't set. That means that platform-dependent macros such as LL_TYPEOF() aren't defined, which can produce obscure errors like this: indra\llcommon\llunittype.h(51): error C2226: syntax error : unexpected type 'S' (packages\llphysicsextensions\stub\LLPhysicsExtensionsStubImpl.cpp) 10> indra\llcommon\llunittype.h(52) : see reference to class template instantiation 'LLResultTypeAdd<S,T>' being compiled Make the CMake logic fail with a more readily-understood error in that case.
2016-12-22Automated merge with ssh://bitbucket.org/lindenlab/viewer64Nat Goodspeed
2016-12-22DRTVWR-418: If we don't produce a symbol file, don't try to upload it.Nat Goodspeed
2016-12-22one more try... also fixing setting of viewer_channel without quotesOz Linden
2016-12-22try again to actually fix the installer name function for Mac (and maybe Linux?)Oz Linden
2016-12-22fix installer name function for Mac (and maybe Linux?)Oz Linden
2016-12-21DRTVWR-418: Migrate HAVOK suppression from autobuild.xml to build.sh.Nat Goodspeed
Turns out that without HAVOK, we can't build the PhysicsExtensions_TPV; but the viewer's build.sh is unaware of CMake switches set in autobuild.xml. Passing those CMake overrides in build.sh allows us to test that setting elsewhere in build.sh to skip the PhysicsExtensions_TPV step -- instead of failing the build.
2016-12-21DRTVWR-418: Temporarily disable Mac generate_breakpad_symbols.py.Nat Goodspeed
2016-12-21DRTVWR-418: Update to llphysicsextensions 501678, 501679Nat Goodspeed
2016-12-21DRTVWR-418: Use ensure_equals() on iffy lerp test to display values.Nat Goodspeed
2016-12-21DRTVWR-418: Fix a couple unused-variable fatal warnings in local builds.Nat Goodspeed
If the only use of a variable is within llassert(), have to make the declaration conditional on SHOW_ASSERT rather than guesswork about release builds.
2016-12-21DRTVWR-418: Deal with fatal warning 'unsafe mix of bool and BOOL'Nat Goodspeed
2016-12-21DRTVWR-418: Harmless change to kick the TeamCity build.Nat Goodspeed
2016-12-20DRTVWR-418: Avoid constructing symlink cycle for CEF framework.Nat Goodspeed
2016-12-20DRTVWR-418: Temporarily suppress Havok in darwin64 builds.Nat Goodspeed
2016-12-20DRTVWR-418: Create CEF framework symlink from LLCefLib Helper.app.Nat Goodspeed
Without that symlink, the helper app can't find CEF and we get no web content.
2016-12-20DRTVWR-418: Make viewer_manifest.py copy current libexpat.1.dylib.Nat Goodspeed
2016-12-20DRTVWR-418: Update GLOD with build that's really 64-bit on Mac.Nat Goodspeed
2016-12-20DRTVWR-418: Fix libhunspell references to reflect current package.Nat Goodspeed
2016-12-20DRTVWR-418: Rationalize LLPipeline API.Nat Goodspeed
Someone evidently figured every static LLPipeline method should have at least one void* parameter. There were methods requiring void* parameters that were completely ignored. More to the point, there were methods whose callers have a U32 in hand -- and which want to use a U32 -- but which bizarrely forced callers to cast to void* just so the method could cast back to U32. In a 64-bit compile, this isn't merely pointless, it's erroneous. Change all such methods to accept U32; remove (void*) casts from call sites. While at it, fix LLPipeline API to use bool, true, false rather than their obsolete all-caps predecessors. Once you eat that first potato chip... :-P
2016-12-20DRTVWR-418: operator comparison methods should be const.Nat Goodspeed
clang has started to reject our non-const comparison operator methods used within standard algorithms.
2016-12-20DRTVWR-418: Another fix for std::string::find() return type.Nat Goodspeed
2016-12-20DRTVWR-418: Fix API for LLTracker::stopTracking().Nat Goodspeed
The signature for LLTracker::stopTracking() was silly: it accepted a void* for the sole purpose of testing whether it was NULL. In other words, the parameter was really a bool in void* clothing. Most callers passed NULL. What got ugly was when you wanted to pass 'true', or a variable bool value. Such values had to be cast to void*. In 64-bit land, the compiler correctly flags that as extremely dubious practice. But it's entirely unnecessary. Since stopTracking() wants a bool, change its parameter to bool. Everybody wins. (While at it, change a few related method params from BOOL to builtin bool.)
2016-12-20DRTVWR-418: Casting pointer to BOOL is just wrong.Nat Goodspeed
Since BOOL is simply a typedef for int, casting a 64-bit pointer to 32-bit int is correctly diagnosed by the compiler as an error. What works is to cast the pointer to (lowercase) bool, the builtin type, which engages the compiler's test for "is this pointer NULL?"
2016-12-20DRTVWR-418: Untangle LLWLParamKey, LLWLAnimator circularity.Nat Goodspeed
LLWLAnimator stores a std::map<F32, LLWLParamKey>. But llwlanimator.h only forward-declared LLWLParamKey, begging the question of how this ever compiled on any previous platform. LLWLParamKey was declared for real in llwlparammanager.h, so the obvious fix is to #include "llwlparammanager.h" in llwlanimator.h. Unfortunately this doesn't work because llwlparammanager.h already #includes "llwlanimator.h". As the dependency is specifically on LLWLParamKey, which isa LLEnvKey, which is declared in llenvmanager.h, move LLWLParamKey to llenvmanager.h. Then we can #include "llenvmanager.h" in llwlanimator.h instead of merely forward- declaring LLWLParamKey. This migration compiles LLWLParamKey in a context in which LLTrans isn't visible. It's not really clear why all LLWLParamKey's methods are inline, but toString() -- the method that requires LLTrans -- isn't going to be fast in any case. Break toString() out to llenvmanager.cpp, and #include "lltrans.h" there.
2016-12-20DRTVWR-418: std::string::find() returns std::string::size_type.Nat Goodspeed
Storing it in a U32 and then comparing it to std::string::npos isn't going to work in 64 bit land.
2016-12-19DRTVWR-418: Update to darwin64 llceflib with libc++, not libstdc++.Nat Goodspeed
2016-12-19DRTVWR-418: Avoid casting sa_sigaction to unsigned int for comparing.Nat Goodspeed
It's not really clear to me why the original coder felt it necessary to cast the two sigaction::sa_sigaction fields to unsigned int in the first place, but in a 64-bit clang compile, that discards information.
2016-12-19DRTVWR-418: Use $LL_BUILD to set most switches in 00-Common.cmake.Nat Goodspeed
Going forward, the intention is to set in 00-Common.cmake only switches not already set for ALL viewer-related libraries in https://bitbucket.org/lindenlab/viewer-build-variables/src/tip/variables. To that end, remove all switches redundant with settings from that file. Remove redundancies within 00-Common.cmake. Remove cruft testing for gcc versions older than 4.3.
2016-12-19DRTVWR-418: Use U32 for int (and hex) of HttpStatus in 64-bit too.Nat Goodspeed
Turns out that Monty didn't intend for the int-flavored representation of HttpStatus to expand to 64 bits even when unsigned long is that wide. So change the implicit conversion operator, and its uses, to U32 instead. That produces a consistent toHex() result for both 32-bit and 64-bit builds.
2016-12-19DRTVWR-418: Fix streamtools test.Nat Goodspeed
When std::istream::good() returns false, presumably we can no longer rely on get() returning valid data. Certain streamtools tests were assuming that get() would return the empty string at EOF, but in fact it appears that it left the previous buffer contents unmodified.
2016-12-17DRTVWR-418: Merge backout of TYPE_INDEX / TYPE_MAX changeNat Goodspeed
2016-12-17Backed out changeset bb47510bda62: don't change TYPE_MAX.Nat Goodspeed
Ruslan points out that changing TYPE_MAX could lead to extra (useless) render passes. We will have to solve the TYPE_INDEX > TYPE_MAX problem another way.
2016-12-17DRTVWR-418: Update dubious llvertexbuffer.cpp cast comment.Nat Goodspeed
Ruslan assures me that in fact this usage is valid.
2016-12-16DRTVWR-418: Fix a (correct) clang correctness complaint.Nat Goodspeed
LLStatGraph::Threshold has an operator<(const Threshold& other) -- but because the method itself wasn't marked const, it could only be used on a non-const instance. This change fixes a case when it was applied to const instances.
2016-12-16DRTVWR-418: Work around dubious cast from S32 to GLvoid*Nat Goodspeed
when passing -- something -- to glVertexAttribPointerARB() in LLVertexBuffer::setupVertexArray().
2016-12-16DRTVWR-418: Adjust HttpStatus::toHex() test for 64-bit result.Nat Goodspeed
2016-12-16DRTVWR-418: Put TYPE_INDEX within TYPE_MAX: stop undefined indexing.Nat Goodspeed
LLVertexBuffer::TYPE_INDEX was past TYPE_MAX, which is used to set the maximum sizes of various (scattered) arrays, bleh. The alarm bells that this SHOULD set off are indeed correct: TYPE_INDEX was being used to index at least one of those arrays, meaning we've been indexing past the end of that array, meaning undefined behavior. The enum that defines both TYPE_INDEX and TYPE_MAX provides a helpful comment indicating what things must be updated when modifying the enum. (Far better to define things centrally in a single place... but another time.) Update the designated arrays to include a final TYPE_INDEX entry. Contents of those entries are wild guesses -- but even wild guesses are better than completely indeterminate data.
2016-12-16Automated merge with ssh://bitbucket.org/lindenlab/viewer64Nat Goodspeed
2016-12-15Pull in an updated version of FMODEx with crash fixes (version 4.44.61 -> ↵Callum Prentice
4.44.64)
2016-12-15DRTVWR-418: -Wl,-no_compact_unwind switch breaks exception catching!Nat Goodspeed
In a clang 64-bit compile, with that switch set in CMAKE_CXX_LINK_FLAGS, we cannot catch any user exception. This shows up right away because TUT relies on internal exceptions to walk through test<n>() test methods, but of course being unable to catch any exceptions in the viewer would be just as bad. A quick Google search turned up lots of people mentioning -no_compact_unwind without finding any documentation about what it's supposed to be good for. But since no tests work with it, whereas they work without it -- kill it.
2016-12-15BUG-41027 (FIX) Changing login location at the login screen crashes the viewerCallum Prentice
2016-12-15DRTVWR-418: Store std::string::find() result in size_t, not U32.Nat Goodspeed
In a 64-bit build, std::string::npos is way bigger than a U32.
2016-12-15DRTVWR-418: Update to llceflib 501501 with darwin64 packageNat Goodspeed
2016-12-14DRTVWR-418: Derive certain CMAKE_XCODE_etc. vars from LL_BUILD.Nat Goodspeed
2016-12-13DRTVWR-418: Remove build_variables_repository_url from BuildParams.Nat Goodspeed
That should be set in TeamCity template hierarchy; don't override it.
2016-12-13DRTVWR-418, BUG-41026: Double default coroutine stack size.Nat Goodspeed
Also make it Persist so if someone hand-edits it to try to find a more suitable size, they won't have to keep re-editing it for every session.
2016-12-12DRTVWR-418: Update to breakpad 501475, first true 64-bit Mac build.Nat Goodspeed
2016-12-12DRTVWR-418: Update to jsoncpp build 501464: actual darwin64 buildNat Goodspeed
2016-12-12DRTVWR-418: Align minimum OS X version with viewer-build-variables.Nat Goodspeed