Name

SPVM::Builder::CompileInfo - Compiler Information

Description

The SPVM::Builder::CompileInfo class has methods to manipulate compiler information.

Super Class

SPVM::Builder::CommandInfo

Fields

category

my $category = $config->category;
$config->category($category);

Gets and sets the category field.

These are native_class, native_source, precompile_class, spvm, spvm_core.

dependent_files

my $dependent_files = $compile_info->dependent_files;
$compile_info->dependent_files($dependent_files);

Gets and sets the dependent_files field, an array reference of the dependent files of the source file.

If this field is defined, these files are added to the dependency list of the ninja build rule.

Class Methods

new

my $compile_info = SPVM::Builder::CompileInfo->new(%fields);

Creates a new SPVM::Builder::CompileInfo object given "Fields".

Exceptions:

The "config" field must be defined.

Instance Methods

create_command

my $compile_command = $compile_info->create_command;

Creates an array reference of the compilation command, and returns it.

Return Value Examples:

[qw(cc -o foo.o -c -O2 -Ipath/include foo.c)]

create_ccflags

my $config_args = $compile_info->create_ccflags;

Creates n array reference of the compilation options, and returns it.

The source file "source_file" and the output file "output_file" are not contained.

Return Value Examples:

[qw(-O2 -Ipath/include)]

source_file

my $source_file = $compile_info->source_file;
$compile_info->source_file($source_file);

Gets the source file path from config-cc_input_dir> and /"source_rel_file".

Copyright & License

Copyright (c) 2023 Yuki Kimoto

MIT License

1 POD Error

The following errors were encountered while parsing the POD:

Around line 212:

=back without =over