# Copyright (c) 2013 The Chromium OS Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. """This module provides access to autotest_lib.client.common_lib.cros namespace, and fixes the environment variable for shared libraries (DLL). """ import os, sys cwd = os.path.dirname(sys.modules[__name__].__file__) client_dir = os.path.abspath(os.path.join(cwd, '../../common_lib/cros')) sys.path.insert(0, client_dir) DLL_PATH_ENV_NAME = 'LD_LIBRARY_PATH' DLL_PATH = '/usr/local/lib:/usr/local/lib64' if not os.environ.get(DLL_PATH_ENV_NAME): print 'Set up %s!' % DLL_PATH_ENV_NAME os.environ[DLL_PATH_ENV_NAME] = DLL_PATH try: # Note: It is required to restart the process since the linker/loader # has kept a copy of the environment in its cache. print 'Restarting "%s"....' % sys.argv[0] os.execv(sys.argv[0], sys.argv) except Exception as e: print 'Error: Failed to restart %s' % sys.argv[0], e sys.exit(1)