def remake(non_empty_job_list): '''Remake the selected targets (equivalent to clean and make). ''' non_empty_job_list = list(non_empty_job_list) from compmake.ui.console import ask_question if get_compmake_status() == compmake_status_interactive: question = "Should I clean and remake %d jobs? [y/n] " % \ len(non_empty_job_list) answer = ask_question(question) if not answer: info('Not cleaned.') return for job in non_empty_job_list: mark_remake(job) manager = ManagerLocal() manager.add_targets(non_empty_job_list) manager.process() if manager.failed: return RET_CODE_JOB_FAILED else: return 0
def parremake(non_empty_job_list): '''Parallel equivalent of "remake". ''' non_empty_job_list = list(non_empty_job_list) for job in non_empty_job_list: mark_remake(job) manager = MultiprocessingManager() manager.add_targets(non_empty_job_list, more=True) manager.process() if manager.failed: return RET_CODE_JOB_FAILED else: return 0