78ea17ea30
configs/test/SysPaths.py: Make the paths more configurable --HG-- extra : convert_revision : c426b102dfe55e4b601a23e980e1b01140e0ee93
42 lines
983 B
Python
42 lines
983 B
Python
import os, sys
|
|
from os.path import isdir, join as joinpath
|
|
from os import environ as env
|
|
|
|
systemdir = None
|
|
bindir = None
|
|
diskdir = None
|
|
scriptdir = None
|
|
|
|
def load_defaults():
|
|
global systemdir, bindir, diskdir, scriptdir
|
|
if not systemdir:
|
|
try:
|
|
path = env['M5_PATH'].split(':')
|
|
except KeyError:
|
|
path = [ '/dist/m5/system' ]
|
|
|
|
for systemdir in path:
|
|
if os.path.isdir(systemdir):
|
|
break
|
|
else:
|
|
raise ImportError, "Can't find a path to system files."
|
|
|
|
if not bindir:
|
|
bindir = joinpath(systemdir, 'binaries')
|
|
if not diskdir:
|
|
diskdir = joinpath(systemdir, 'disks')
|
|
if not scriptdir:
|
|
scriptdir = joinpath(systemdir, 'boot')
|
|
|
|
def disk(file):
|
|
load_defaults()
|
|
return joinpath(diskdir, file)
|
|
|
|
def binary(file):
|
|
load_defaults()
|
|
return joinpath(bindir, file)
|
|
|
|
def script(file):
|
|
load_defaults()
|
|
return joinpath(scriptdir, file)
|
|
|