summaryrefslogtreecommitdiff
path: root/indra/cmake
diff options
context:
space:
mode:
authorOz Linden <oz@lindenlab.com>2014-12-17 11:15:31 -0500
committerOz Linden <oz@lindenlab.com>2014-12-17 11:15:31 -0500
commitf8ed44f8ec80916e684c2783da02f89474710de6 (patch)
tree2a4ca145439751e864beb6be91cde52a7901b036 /indra/cmake
parent11ab03331f5028455a56245fc9121b82068565cc (diff)
parent0d71baba74e2009e88471e2c44e78863b34a5817 (diff)
merge latest updates from nat and callum
Diffstat (limited to 'indra/cmake')
-rwxr-xr-xindra/cmake/Variables.cmake1
-rwxr-xr-xindra/cmake/run_build_test.py19
2 files changed, 19 insertions, 1 deletions
diff --git a/indra/cmake/Variables.cmake b/indra/cmake/Variables.cmake
index 8e220162ce..faca12c347 100755
--- a/indra/cmake/Variables.cmake
+++ b/indra/cmake/Variables.cmake
@@ -26,6 +26,7 @@ set(VIEWER_PREFIX)
set(INTEGRATION_TESTS_PREFIX)
set(LL_TESTS ON CACHE BOOL "Build and run unit and integration tests (disable for build timing runs to reduce variation")
set(INCREMENTAL_LINK OFF CACHE BOOL "Use incremental linking on win32 builds (enable for faster links on some machines)")
+set(ENABLE_MEDIA_PLUGINS OFF CACHE BOOL "Turn off building media plugins if they are imported by third-party library mechanism")
if(LIBS_CLOSED_DIR)
file(TO_CMAKE_PATH "${LIBS_CLOSED_DIR}" LIBS_CLOSED_DIR)
diff --git a/indra/cmake/run_build_test.py b/indra/cmake/run_build_test.py
index a2ef61c8fd..582185e5ab 100755
--- a/indra/cmake/run_build_test.py
+++ b/indra/cmake/run_build_test.py
@@ -46,6 +46,7 @@ $/LicenseInfo$
import os
import sys
+import errno
import signal
import subprocess
@@ -112,7 +113,23 @@ def main(command, libpath=[], vars={}):
print "Running: %s" % " ".join(command)
# Make sure we see all relevant output *before* child-process output.
sys.stdout.flush()
- return subprocess.call(command)
+ try:
+ return subprocess.call(command)
+ except OSError as err:
+ # If the caller is trying to execute a test program that doesn't
+ # exist, we want to produce a reasonable error message rather than a
+ # traceback. This happens when the build is halted by errors, but
+ # CMake tries to proceed with testing anyway <eyeroll/>. However, do
+ # NOT attempt to handle any error but "doesn't exist."
+ if err.errno != errno.ENOENT:
+ raise
+ # In practice, the pathnames into CMake's build tree are so long as to
+ # obscure the name of the test program. Just print its basename.
+ print "No such program %s; check for preceding build errors" % \
+ os.path.basename(command[0])
+ # What rc should we simulate for missing executable? Windows produces
+ # 9009.
+ return 9009
# swiped from vita, sigh, seems like a Bad Idea to introduce dependency
def translate_rc(rc):