26 GOS_UTILS_DIRECTORY =
'/tools/gecko_os_utils' 27 GOS_UTILS_COMMON =
'/common/__init__.py' 30 current_directory = os.path.abspath(__file__).replace(
'\\',
'/')
33 def parse_make_script(path):
35 with open(path,
'rb')
as f:
36 for line
in f.readlines():
37 index = line.find(
'GECKO_OS_SDK_PATH=')
41 sdk_path = line[index + len(
'GECKO_OS_SDK_PATH='):].strip()
47 def test_utils_directory(sdk_directory):
48 utils_directory = sdk_directory.replace(
'\\',
'/') + GOS_UTILS_DIRECTORY
50 if os.path.exists(utils_directory + GOS_UTILS_COMMON):
52 sys.path.append(sdk_directory)
53 os.environ[
'GECKO_OS_SDK_PATH'] = os.path.realpath(sdk_directory)
54 sys.path.append(utils_directory)
63 if current_directory.find(
'/') == -1
or os.path.dirname(current_directory) == current_directory:
66 current_directory = os.path.dirname(current_directory)
70 if test_utils_directory(current_directory):
74 make_script = current_directory +
'/make.bat' 75 if os.path.exists(make_script):
76 sdk_directory = parse_make_script(make_script)
78 if test_utils_directory(sdk_directory):
82 make_script = current_directory +
'/make.sh' 83 if os.path.exists(make_script):
84 sdk_directory = parse_make_script(make_script)
86 if test_utils_directory(sdk_directory):
91 raise Exception(
'Failed to find Gecko OS Python utilities directory in SDK')