

def create_program(self, skip_rebuild=False):
    '\n      Creates the structure of the program with its source files and\n      binary files. When the ``Instrument`` option ``force-rebuild``\n      is set, it will trigger the compilation of all python source files.\n\n      :param skip_rebuild: Force skipping the build. Mostly here due to the\n                           recursive nature of this function.\n    '
    self.program_files = []
    self._bytecode_files = []
    for location in self.input_location:
        scan_dir(location, self.program_files, ('py', 'pyc'))
    (py_files, pyc_files) = Program.split_program_source_bc(self.program_files)
    logger.debug('Force rebuilding? %s', self.options.get('force-rebuild'))
    if (not skip_rebuild):
        if ((len(py_files) != len(pyc_files)) or self.instrumentation.get_option('force-rebuild')):
            self.compile_program()
    else:
        self._bytecode_files = list(pyc_files)
        logger.debug('Bytecode := %s', pyc_files)

dataset/ETHPy150Open neuroo/equip/equip/prog.py Program.create_program/original