SPVM::Builder::CompileInfo − Compiler Information
The SPVM::Builder::CompileInfo class has methods to manipulate compiler information.
my $config =
$compile_info−>config;
$compile_info−>config($config);
Gets and sets the "config" field, a SPVM::Builder::Config object.
my $source_file
= $compile_info−>source_file;
$compile_info−>source_file($source_file);
Gets and sets the "source_file" field, a source file.
my $output_file
= $compile_info−>output_file;
$compile_info−>output_file($output_file);
Gets and sets the "output_file" field, an output file.
my $category =
$config−>category;
$config−>category($category);
Gets and sets the "category" field.
These are "native_class", "native_source", "precompile_class", "spvm", "spvm_core".
my $no_generate
= $link_info−>no_generate;
$link_info−>no_generate($no_generate);
Gets and sets the "no_generate" field. If this field is a true value, the output file is not generated.
my $compile_info = SPVM::Builder::CompileInfo−>new(%fields);
Creates a new SPVM::Builder::CompileInfo object given "Fields".
Field Default Values:
|
• |
"source_file" |
undef
|
• |
"output_file" |
undef
|
• |
"no_generate" |
undef
Exceptions:
The "config" field must be defined.
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)]
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)]
my $compile_command_string = $compile_info−>to_command;
Joins all elements of the return value of the the "create_command" method with a space, and returns it.
Return Value Examples:
"cc −c −o foo.o −O2 −Ipath/include foo.c"
Copyright (c) 2023 Yuki Kimoto
MIT License