SysPaths.py revision 2902
1import os, sys
2from os.path import isdir, join as joinpath
3from os import environ as env
4
5def disk(file):
6    system()
7    return joinpath(disk.dir, file)
8
9def binary(file):
10    system()
11    return joinpath(binary.dir, file)
12
13def script(file):
14    system()
15    return joinpath(script.dir, file)
16
17def system():
18    if not system.dir:
19        try:
20                path = env['M5_PATH'].split(':')
21        except KeyError:
22                path = [ '/dist/m5/system', '/n/poolfs/z/dist/m5/system' ]
23
24        for system.dir in path:
25            if os.path.isdir(system.dir):
26                break
27        else:
28            raise ImportError, "Can't find a path to system files."
29
30    if not binary.dir:
31        binary.dir = joinpath(system.dir, 'binaries')
32    if not disk.dir:
33        disk.dir = joinpath(system.dir, 'disks')
34    if not script.dir:
35        script.dir = joinpath(system.dir, 'boot')
36
37system.dir = None
38binary.dir = None
39disk.dir = None
40script.dir = None
41