Skip to content

//ll:args.bzl

The functions that create Args for use in rule actions.

compile_object_args

compile_object_args(ctx, in_file, out_file, cdf, defines, includes, angled_includes, bmis)

Construct Args for compile actions.

parameters

Name Description
ctx The rule context.
in_file The input file to compile.
out_file The output file.
cdf A file to store the compilation database fragment.
defines A depset of defines for the target. Added with -D.
includes A depset of includes for the target. Added with -iquote.
angled_includes A depset of angled includes for the target. Added with -I.
bmis A depset of tuples (interface, name), each consisting of a binary module interface interface and a module name name. Added in a scheme resembling -fmodule-file=name=interface.

returns

An Args object.

create_archive_library_args

create_archive_library_args(ctx, in_files, out_file)

Construct Args for archive actions.

Uses -cqL for regular archiving and -vqL for debug builds.

parameters

Name Description
ctx The rule context.
in_files A depset of input files.
out_file The output file.

returns

An Args object.

link_executable_args(ctx, in_files, out_file, mode)

Construct Args for link actions.

parameters

Name Description
ctx The rule context.
in_files A depset of input files.
out_file The output file.
mode Either "executable" or "shared_object", depending on the desired output type.

returns

An Args object.

llvm_bindir_path

llvm_bindir_path(ctx)

parameters

Name Description
ctx