Beispiel #1
0
def get_gn_args():
    out = []
    if build_mode() == "release":
        out += ["is_official_build=true"]
    elif build_mode() == "debug":
        pass
    else:
        print "Bad mode {}. Use 'release' or 'debug' (default)" % build_mode()
        sys.exit(1)
    if "DENO_BUILD_ARGS" in os.environ:
        out += os.environ["DENO_BUILD_ARGS"].split()

    # Check if ccache or sccache are in the path, and if so we set cc_wrapper.
    cc_wrapper = find_executable("ccache") or find_executable("sccache")
    if cc_wrapper:
        out += [r'cc_wrapper="%s"' % cc_wrapper]
        # Windows needs a custom toolchain for cc_wrapper to work.
        if os.name == "nt":
            out += [
                'custom_toolchain="//build_extra/toolchain/win:win_clang_x64"'
            ]

    print "DENO_BUILD_ARGS:", out

    return out
Beispiel #2
0
def clippy():
    print "clippy"
    current_build_mode = build_mode()
    args = ["cargo", "clippy", "--all-targets", "--locked"]
    if current_build_mode != "debug":
        args += ["--release"]
    run(args + ["--", "-D", "clippy::all"], shell=False, quiet=True)
Beispiel #3
0
def get_gn_args():
    out = []
    if build_mode() == "release":
        out += ["is_official_build=true"]
    elif build_mode() == "debug":
        pass
    else:
        print "Bad mode {}. Use 'release' or 'debug' (default)" % build_mode()
        sys.exit(1)
    if "DENO_BUILD_ARGS" in os.environ:
        out += os.environ["DENO_BUILD_ARGS"].split()

    # Check if ccache is in the path, and if so we cc_wrapper.
    ccache_path = distutils.spawn.find_executable("ccache")
    if ccache_path:
        out += [r'cc_wrapper="%s"' % ccache_path]

    print "DENO_BUILD_ARGS:", out

    return out
Beispiel #4
0
def get_gn_args():
    out = []
    if build_mode() == "release":
        out += ["is_official_build=true"]
    elif build_mode() == "debug":
        pass
    else:
        print "Bad mode {}. Use 'release' or 'debug' (default)" % build_mode()
        sys.exit(1)
    if "DENO_BUILD_ARGS" in os.environ:
        out += os.environ["DENO_BUILD_ARGS"].split()

    # Check if ccache is in the path, and if so we cc_wrapper.
    ccache_path = distutils.spawn.find_executable("ccache")
    if ccache_path:
        out += [r'cc_wrapper="%s"' % ccache_path]

    print "DENO_BUILD_ARGS:", out

    return out
Beispiel #5
0
def main():
    os.chdir(root_path)

    third_party.fix_symlinks()
    third_party.download_gn()
    third_party.download_clang_format()
    third_party.download_clang()
    third_party.maybe_download_sysroot()

    write_lastchange()

    mode = build_mode(default=None)
    if mode is not None:
        gn_gen(mode)
    else:
        gn_gen("release")
        gn_gen("debug")
Beispiel #6
0
def main():
    enable_ansi_colors()

    os.chdir(root_path)

    third_party.fix_symlinks()
    third_party.download_gn()
    third_party.download_clang_format()
    third_party.download_clang()
    third_party.maybe_download_sysroot()
    write_lastchange()

    mode = build_mode(default=None)
    if mode is not None:
        gn_gen(mode)
    else:
        gn_gen("release")
        gn_gen("debug")
Beispiel #7
0
def main():
    enable_ansi_colors()
    os.chdir(root_path)

    args = parser.parse_args()

    if args.no_binary_download:
        print "no binary download"
    else:
        print "binary download"
        third_party.download_gn()
        third_party.download_clang_format()
        third_party.download_clang()
        third_party.maybe_download_sysroot()

    write_lastchange()

    mode = build_mode(default=None)
    if mode is not None:
        gn_gen(mode)
    else:
        gn_gen("release")
        gn_gen("debug")
Beispiel #8
0

# gn gen.
def gn_gen(mode):
    os.environ["DENO_BUILD_MODE"] = mode

    gn_args = get_gn_args()

    # mkdir $build_path(). We do this so we can write args.gn before running gn gen.
    if not os.path.isdir(build_path()):
        os.makedirs(build_path())

    # Rather than using gn gen --args we manually write the args.gn override file.
    # This is to avoid quoting/escaping complications when passing overrides as
    # command-line arguments.
    args_filename = os.path.join(build_path(), "args.gn")
    if not os.path.exists(args_filename) or gn_args:
        with open(args_filename, "w+") as f:
            f.write("\n".join(gn_args) + "\n")

    run([third_party.gn_path, "gen", build_path()],
        env=third_party.google_env())


mode = build_mode(default=None)
if mode is not None:
    gn_gen(mode)
else:
    gn_gen("release")
    gn_gen("debug")