'Handle configure, make and make install in a shell, allowing for configuration options.  Since this
class is not used in the initial download stage, no recipe step filtering is performed here, and None
values are always returned for filtered_actions and dir.'

def execute_step(self, tool_dependency, package_name, actions, action_dict, filtered_actions, env_file_builder, install_environment, work_dir, current_dir=None, initial_download=False):

    with settings(warn_only=True):
        configure_opts = action_dict.get('configure_opts', '')
        if ('prefix=' in configure_opts):
            pre_cmd = ('./configure    %s    &&    make    &&    make    install' % configure_opts)
        else:
            pre_cmd = ('./configure    --prefix=$INSTALL_DIR    %s    &&    make    &&    make    install' % configure_opts)
        cmd = install_environment.build_command(basic_util.evaluate_template(pre_cmd, install_environment))
        install_environment.handle_command(tool_dependency=tool_dependency, cmd=cmd, return_output=False, job_name=package_name)
        return (tool_dependency, None, None)
