def get_compile_argv(filename): target = replace_ext(filename, "elf") if filename.endswith(".c"): return ['gcc', '-o', target, filename], target argv, externs = get_rustc_argv() if argv is None: raise Exception("failed to build library") return argv + extern(externs) + ['-o', target, filename], target
def generate_submission(source, llvm_target): argv, externs = get_rustc_argv('release', llvm_target) target = replace_ext(source, "s") argv = argv + extern(externs) + [ "--crate-type", "cdylib", "--emit", "asm", "-C", "llvm-args=-disable-debug-info-print", "-C", "lto=fat", "-C", "opt-level=2", "-C", "panic=abort", "-o", target, "-" ] if has_to_recompile(source, target, externs): if compile_file(ROOTDIR, argv, target, read_source(source)) is None: return None return target
def list_generated_files(filename): return [ replace_ext(filename, ext) for ext in ["elf", "bc", "ll", "s", "rs.c", "rs.elf", "gcno", "gcda"] ]
def get_compile_argv(filename): target = replace_ext(filename, "elf") return ['gcc', '-Wall', '-Wextra', '-Werror', '-o', target, filename], target
def list_generated_files(filename): return [replace_ext(filename, ext) for ext in ["elf"]]
def get_compile_argv(filename): target = replace_ext(filename, "elf") return [ which('clang') or which('gcc'), '-Wall', '-Wextra', '-Werror', '-o', target, filename ], target
def get_compile_argv(filename): target = replace_ext(filename, "elf") return [which('clang') or which('gcc'), '-Wall','-Wextra','-Werror','-o', target, filename], target