The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Name

SPVM::Builder::CompileInfo - Link Information

Description

SPVM::Builder::CompileInfo is a compile information. This infromation is used by the compileer.

Fields

output_file

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

Get and set the source file that is compiled.

cc

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

Get and set the compileer name.

ccflags

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

Get and set the compileer flags. The default value is [].

optimize

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

Get and set the optimize.

builder_include_dir

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

Get and set the builder include directory.

include_dirs

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

Get and set the include directories. The default is [].

source_file

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

Get and set the source file.

class_name

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

Get and set the class name.

config

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

Get and set the config that is used to compile the source file.

Class Methods

new

  my $compile_info = SPVM::Builder::CompileInfo->new;

Instance Methods

new

  my $compile_info = SPVM::Builder::CompileInfo->new;

Create a new SPVM::Builder::CompileInfo object.

create_merged_ccflags

  my $merged_ccflags = $compile_info->create_merged_ccflags;

Get the merged ccflags as an array reference.

Examples:

  [qw(-O2 -Iinclude_dir)]

create_compile_command

  my $compile_command = $compile_info->create_compile_command;

Get the compile command as an array reference.

Examples:

  [qw(cc -c -o foo.o -O2 -Iinclude_dir foo.c)]

to_string

  my $string = $compile_info->to_string;

Get the string representaion of the compile command.

Examples:

  cc -c -O2 -Iinclude_dir -o foo.o foo.c