These are mostly things that were in fact erroneous, but accepted by older
compilers.
This changeset has not yet been built with Visual Studio 2013 or Linux gcc,
even with -std=c++11.
This changeset has not been built *without* -std=c++11. It should be used in
conjunction with a corresponding change to LL_BUILD_DARWIN_BASE_SWITCHES in
viewer-build-variables/variables.
This is a work in progress. We do not assert that this changeset completes the
work needed to turn on -std=c++11, even on the Mac.
At some point the INTEGRATION_TEST_llurlentry build changed so that the
library(ies) we attempted to stub out got linked in anyway, so that instead of
simplifying the test, the stubs broke it with "duplicate symbol" errors.
Commenting out the stubs permits the test program to succeed.
Instead, since gSavedSettings is an LLControlGroup and LLControlGroup derives
from LLInstanceTracker, just look up the LLControlGroup with canonical name.
The CMake directive that passes VIEWER_CHANNEL to the C++ compiler as
LL_VIEWER_CHANNEL was enclosing the VIEWER_CHANNEL value in double quotes. At
this point in history, those double quotes literally become part of the
LL_VIEWER_CHANNEL value, causing the viewer to construct a bad Viewer Version
Manager query containing those double quotes. Removing them fixes the query.
from autobuild.xml's darwin64 Release and ReleaseOS build (xcodebuild)
command.
-D passed to xcodebuild does NOT set CMake variables. These switches, in this
place, have never worked as intended.
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.
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.
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.