__init__.py revision 1530
16757SAli.Saidi@ARM.comimport sys, os 26757SAli.Saidi@ARM.com 36757SAli.Saidi@ARM.com# the mpy import code is added to the global import meta_path as a 46757SAli.Saidi@ARM.com# side effect of this import 56757SAli.Saidi@ARM.comfrom mpy_importer import AddToPath, LoadMpyFile 66757SAli.Saidi@ARM.com 76757SAli.Saidi@ARM.com# define this here so we can use it right away if necessary 86757SAli.Saidi@ARM.comdef panic(string): 96757SAli.Saidi@ARM.com print >>sys.stderr, 'panic:', string 106757SAli.Saidi@ARM.com sys.exit(1) 116757SAli.Saidi@ARM.com 126757SAli.Saidi@ARM.com# find the m5 compile options: must be specified as a dict in 136757SAli.Saidi@ARM.com# __main__.m5_build_env. 146757SAli.Saidi@ARM.comimport __main__ 156757SAli.Saidi@ARM.comif not hasattr(__main__, 'm5_build_env'): 166757SAli.Saidi@ARM.com panic("__main__ must define m5_build_env") 176757SAli.Saidi@ARM.com 186757SAli.Saidi@ARM.com# make a SmartDict out of the build options for our local use 196757SAli.Saidi@ARM.comimport smartdict 206757SAli.Saidi@ARM.combuild_env = smartdict.SmartDict() 216757SAli.Saidi@ARM.combuild_env.update(__main__.m5_build_env) 226757SAli.Saidi@ARM.com 236757SAli.Saidi@ARM.com# make a SmartDict out of the OS environment too 246757SAli.Saidi@ARM.comenv = smartdict.SmartDict() 256757SAli.Saidi@ARM.comenv.update(os.environ) 266757SAli.Saidi@ARM.com 276757SAli.Saidi@ARM.com# import the main m5 config code 286757SAli.Saidi@ARM.comfrom config import * 296757SAli.Saidi@ARM.comconfig.add_param_types(config) 306757SAli.Saidi@ARM.com 316757SAli.Saidi@ARM.com# import the built-in object definitions 326757SAli.Saidi@ARM.comfrom objects import * 336757SAli.Saidi@ARM.comconfig.add_param_types(objects) 346757SAli.Saidi@ARM.com 356757SAli.Saidi@ARM.comcpp_classes = config.MetaSimObject.cpp_classes 366757SAli.Saidi@ARM.comcpp_classes.sort() 37 38