diff options
Diffstat (limited to 'indra')
| -rw-r--r-- | indra/cmake/BuildPackagesInfo.cmake | 1 | ||||
| -rw-r--r-- | indra/cmake/BuildVersion.cmake | 4 | ||||
| -rwxr-xr-x | indra/cmake/run_build_test.py | 76 | ||||
| -rw-r--r-- | indra/llcorehttp/tests/test_httprequest.hpp | 4 | ||||
| -rw-r--r-- | indra/newview/CMakeLists.txt | 1 | 
5 files changed, 51 insertions, 35 deletions
diff --git a/indra/cmake/BuildPackagesInfo.cmake b/indra/cmake/BuildPackagesInfo.cmake index 133ee9797a..93461cea95 100644 --- a/indra/cmake/BuildPackagesInfo.cmake +++ b/indra/cmake/BuildPackagesInfo.cmake @@ -11,6 +11,7 @@ add_custom_command(OUTPUT packages-info.txt    COMMENT Generating packages-info.txt for the about box    MAIN_DEPENDENCY ${CMAKE_SOURCE_DIR}/../autobuild.xml    DEPENDS ${CMAKE_SOURCE_DIR}/../scripts/packages-formatter.py +          ${CMAKE_SOURCE_DIR}/../autobuild.xml    COMMAND ${PYTHON_EXECUTABLE}            ${CMAKE_SOURCE_DIR}/cmake/run_build_test.py -DAUTOBUILD_ADDRSIZE=${ADDRESS_SIZE}            ${PYTHON_EXECUTABLE} diff --git a/indra/cmake/BuildVersion.cmake b/indra/cmake/BuildVersion.cmake index 321aecf073..157fdd07e4 100644 --- a/indra/cmake/BuildVersion.cmake +++ b/indra/cmake/BuildVersion.cmake @@ -14,6 +14,10 @@ if (NOT DEFINED VIEWER_SHORT_VERSION) # will be true in indra/, false in indra/n             set(VIEWER_VERSION_REVISION $ENV{revision})             message(STATUS "Revision (from environment): ${VIEWER_VERSION_REVISION}") +        elseif (DEFINED ENV{AUTOBUILD_BUILD_ID}) +           set(VIEWER_VERSION_REVISION $ENV{AUTOBUILD_BUILD_ID}) +           message(STATUS "Revision (from autobuild environment): ${VIEWER_VERSION_REVISION}") +          else (DEFINED ENV{revision})            find_program(MERCURIAL                         NAMES hg diff --git a/indra/cmake/run_build_test.py b/indra/cmake/run_build_test.py index fdbb0a75f7..f02c5e98b4 100755 --- a/indra/cmake/run_build_test.py +++ b/indra/cmake/run_build_test.py @@ -51,11 +51,13 @@ import HTMLParser  import re  import signal  import subprocess +import logging -def main(command, libpath=[], vars={}): +def main(command, arguments=[], libpath=[], vars={}):      """Pass: -    command is a sequence (e.g. a list) of strings. The first item in the list -    must be the command name, the rest are its arguments. +    command is the command to be executed + +    argument is a sequence (e.g. a list) of strings to be passed to command      libpath is a sequence of directory pathnames. These will be appended to      the platform-specific dynamic library search path environment variable. @@ -85,7 +87,7 @@ def main(command, libpath=[], vars={}):          # might not exist; instead of KeyError, just use an empty string.          dirs = os.environ.get(var, "").split(os.pathsep)          # Append the sequence in libpath -        print "%s += %r" % (var, libpath) +        log.info("%s += %r" % (var, libpath))          for dir in libpath:              # append system paths at the end              if dir in ('/lib', '/usr/lib'): @@ -103,20 +105,20 @@ def main(command, libpath=[], vars={}):          # Now rebuild the path string. This way we use a minimum of separators          # -- and we avoid adding a pointless separator when libpath is empty.          os.environ[var] = os.pathsep.join(clean_dirs) -        print "%s = %r" % (var, os.environ[var]) +        log.info("%s = %r" % (var, os.environ[var]))      # Now handle arbitrary environment variables. The tricky part is ensuring      # that all the keys and values we try to pass are actually strings.      if vars: -         print "Setting:" -         for key, value in vars.iteritems(): -             print "%s=%s" % (key, value) +         log.info("Setting: %s" % ("\n".join(["%s=%s" % (key, value) for key, value in vars.iteritems()])))      os.environ.update(dict([(str(key), str(value)) for key, value in vars.iteritems()]))      # Run the child process. -    print "Running: %s" % " ".join(command) +    command_list = [command] +    command_list.extend(arguments) +    log.info("Running: %s" % " ".join(command_list))      # Make sure we see all relevant output *before* child-process output.      sys.stdout.flush()      try: -        return subprocess.call(command) +        return subprocess.call(command_list)      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 @@ -126,9 +128,9 @@ def main(command, libpath=[], vars={}):          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]) +        # obscure the name of the test program. Just log its basename. +        log.warn("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 @@ -172,10 +174,10 @@ def translate_rc(rc):              table = get_windows_table()              symbol, desc = table[hexrc]          except Exception, err: -            print >>sys.stderr, "(%s -- carrying on)" % err -            return "terminated with rc %s (%s)" % (rc, hexrc) +            log.error("(%s -- carrying on)" % err) +            log.error("terminated with rc %s (%s)" % (rc, hexrc))          else: -            return "terminated with rc %s: %s: %s" % (hexrc, symbol, desc) +            log.info("terminated with rc %s: %s: %s" % (hexrc, symbol, desc))      else:          # On Posix, negative rc means the child was terminated by signal -rc. @@ -303,22 +305,26 @@ def get_windows_table():      return _windows_table +log=logging.getLogger(__name__) +logging.basicConfig() +  if __name__ == "__main__": -    from optparse import OptionParser -    parser = OptionParser(usage="usage: %prog [options] command args...") -    # We want optparse support for the options we ourselves handle -- but we -    # DO NOT want it looking at options for the executable we intend to run, -    # rejecting them as invalid because we don't define them. So configure the -    # parser to stop looking for options as soon as it sees the first -    # positional argument (traditional Unix syntax). -    parser.disable_interspersed_args() -    parser.add_option("-D", "--define", dest="vars", default=[], action="append", -                      metavar="VAR=value", -                      help="Add VAR=value to the env variables defined") -    parser.add_option("-l", "--libpath", dest="libpath", default=[], action="append", -                      metavar="DIR", -                      help="Add DIR to the platform-dependent DLL search path") -    opts, args = parser.parse_args() +    import argparse +    parser = argparse.ArgumentParser() +    parser.add_argument("-d", "--debug", dest="loglevel", action="store_const", +                        const=logging.DEBUG, default=logging.WARNING) +    parser.add_argument("-D", "--define", dest="vars", default=[], action="append", +                        metavar="VAR=value", +                        help="Add VAR=value to the env variables defined") +    parser.add_argument("-l", "--libpath", dest="libpath", default=[], action="append", +                        metavar="DIR", +                        help="Add DIR to the platform-dependent DLL search path") +    parser.add_argument("command") +    parser.add_argument('args', nargs=argparse.REMAINDER) +    args = parser.parse_args() + +    log.setLevel(args.loglevel) +      # What we have in opts.vars is a list of strings of the form "VAR=value"      # or possibly just "VAR". What we want is a dict. We can build that dict by      # constructing a list of ["VAR", "value"] pairs -- so split each @@ -326,9 +332,9 @@ if __name__ == "__main__":      # "VAR=some=user=string"). To handle the case of just "VAR", append "" to      # the list returned by split(), then slice off anything after the pair we      # want. -    rc = main(command=args, libpath=opts.libpath, -              vars=dict([(pair.split('=', 1) + [""])[:2] for pair in opts.vars])) +    rc = main(command=args.command, arguments=args.args, libpath=args.libpath, +              vars=dict([(pair.split('=', 1) + [""])[:2] for pair in args.vars]))      if rc not in (None, 0): -        print >>sys.stderr, "Failure running: %s" % " ".join(args) -        print >>sys.stderr, "Error %s: %s" % (rc, translate_rc(rc)) +        log.error("Failure running: %s" % " ".join([args.command] + args.args)) +        log.error("Error %s: %s" % (rc, translate_rc(rc)))      sys.exit((rc < 0) and 255 or rc) diff --git a/indra/llcorehttp/tests/test_httprequest.hpp b/indra/llcorehttp/tests/test_httprequest.hpp index 6cd7960ecd..a9c192e141 100644 --- a/indra/llcorehttp/tests/test_httprequest.hpp +++ b/indra/llcorehttp/tests/test_httprequest.hpp @@ -3089,6 +3089,10 @@ void HttpRequestTestObjectType::test<23>()  	set_test_name("HttpRequest GET 503s with 'Retry-After'"); +#if LL_WINDOWS && ADDRESS_SIZE == 64 +	skip("llcorehttp 503-with-retry test hangs on Windows 64"); +#endif +  	// This tests mainly that the code doesn't fall over if  	// various well- and mis-formed Retry-After headers are  	// sent along with the response.  Direct inspection of diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index d1614b5f26..c4ded8c5ae 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -1741,6 +1741,7 @@ if (WINDOWS)        ${ARCH_PREBUILT_DIRS_RELEASE}/ssleay32.dll        ${ARCH_PREBUILT_DIRS_DEBUG}/libeay32.dll        ${ARCH_PREBUILT_DIRS_DEBUG}/ssleay32.dll +      ${viewer_APPSETTINGS_FILES}        SLPlugin        media_plugin_cef        media_plugin_libvlc  | 
