def par_pre_func(d: HammerDriver) -> None: self.par_rundir = os.path.join( d.obj_dir, "par-{module}".format(module=module) ) # TODO(edwardw): fix this ugly os.path.join; it doesn't belong here. # TODO(edwardw): remove ugly hack to store stuff in parent context base_project_config[0] = deeplist(driver.project_configs) d.update_project_configs( deeplist(base_project_config[0]) + [config])
def post_run(d: HammerDriver, rundir: str) -> None: # Write out the configs used/generated for logging/debugging. with open(os.path.join(rundir, "full_config.json"), "w") as f: new_output_json = json.dumps(d.project_config, indent=4) f.write(new_output_json) with open(os.path.join(rundir, "module_config.json"), "w") as f: new_output_json = json.dumps(config, indent=4) f.write(new_output_json) d.update_project_configs(deeplist(base_project_config[0]))
def set_extra_prefixes(self: Library, value: List[LibraryPrefix]) -> None: assert isinstance(value, list) setattr(self, "__donttouch_extra_prefixes", deeplist(value))
def get_extra_prefixes(self: Library) -> List[LibraryPrefix]: internal_list = getattr(self, "__donttouch_extra_prefixes", []) assert isinstance(internal_list, list) return deeplist(internal_list)
def fill_outputs(self) -> bool: self.output_files = deeplist(self.input_files) return True
def lvs_pre_func(d: HammerDriver) -> None: self.lvs_rundir = os.path.join(d.obj_dir, "lvs-{module}".format( module=module)) # TODO(edwardw): fix this ugly os.path.join; it doesn't belong here. # TODO(edwardw): remove ugly hack to store stuff in parent context base_project_config[0] = deeplist(driver.project_configs) d.update_project_configs(deeplist(base_project_config[0]) + [config])