def METHOD_NAME(command, cwd=None, proc_callback=None, env=None):
    """
    Just run the given command and return the return code
    and the stdout and stderr outputs of the process.
    """
    def signal_handler(signum, frame):
        # Clang does not kill its child processes, so I have to.
        try:
            g_pid = proc.pid
            os.killpg(g_pid, signal.SIGTERM)
        finally:
            sys.exit(128 + signum)
    signal.signal(signal.SIGINT, signal_handler)
    if env is None:
        env = analyzer_context.get_context().analyzer_env
    proc = subprocess.Popen(
        command,
        bufsize=-1,
        env=env,
        preexec_fn=None if sys.platform == 'win32' else os.setsid,
        cwd=cwd,
        stdout=subprocess.PIPE,
        stderr=subprocess.PIPE,
        universal_newlines=True,
        encoding="utf-8",
        errors="ignore")
    # Send the created analyzer process' object if somebody wanted it.
    if proc_callback:
        proc_callback(proc)
    stdout, stderr = proc.communicate()
    return proc.returncode, stdout, stderr