Parrot::Configure::Step - Configuration Step Utilities
The Parrot::Configure::Step module contains utility functions for steps to use.
Parrot::Configure::Step
Note that the actual configuration step itself is NOT an instance of this class, rather it is defined to be in the package Configure::Step. See docs/configuration.pod for more information on how to create new configuration steps.
package
Configure::Step
integrate($orig, $new)
Integrates $new into $orig. Returns $orig if $new is undefined.
$new
$orig
prompt($message, $value)
Prints out "message [default] " and waits for the user's response. Returns the response, or the default if the user just hit ENTER.
ENTER
file_checksum($filename, $ignorePattern)
Creates a checksum for the specified file. This is used to compare files.
Any lines matching the regular expression specified by $ignorePattern are not included in the checksum.
$ignorePattern
copy_if_diff($from, $to, $ignorePattern)
Copies the file specified by $from to the location specified by $to if it's contents have changed.
$from
$to
The regular expression specified by $ignorePattern is passed to file_checksum() when comparing the files.
file_checksum()
move_if_diff($from, $to, $ignorePattern)
Moves the file specified by $from to the location specified by $to if it's contents have changed.
genfile($source, $target, %options)
Takes the specified source file, substitutes any sequences matching /\$\{\w+\}/ for the given key's value in the configuration system's data, and writes the results to specified target file.
/\$\{\w+\}/
_run_command($command, $out, $err)
Runs the specified command. Output is directed to the file specified by $out, warnings and errors are directed to the file specified by $err.
$out
$err
cc_gen($source)
Generates test.c from the specified source file.
cc_build($cc_args, $link_args)
These items are used from current config settings:
$cc, $ccflags, $ldout, $o, $link, $linkflags, $cc_exe_out, $exe, $libs
Calls the compiler and linker on test.c.
cc_run()
Calls the test (or test.exe) executable. Any output is directed to test.out.
cc_run_capture()
Same as cc_run() except that warnings and errors are also directed to test.out.
cc_clean()
Cleans up all files in the root folder that match the glob test.*.
capture_output($command)
Executes the given command. The command's output (both stdout and stderr), and its return status is returned as a 3-tuple. STDERR is redirected to test.err during the execution, and deleted after the command's run.
check_progs([$programs])
Where $programs may be either a scalar with the name of a single program or an array ref of programs to search the current PATH for. The first matching program name is returned or undef on failure. Note: this function only returns the name of the program and not its complete path.
$programs
PATH
undef
This function is similar to autoconf's AC_CHECK_PROGS macro.
autoconf
AC_CHECK_PROGS
_slurp($filename)
Slurps $filename into memory and returns it as a string.
$filename
Parrot::Configure::RunSteps
To install Parrot::Op, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Parrot::Op
CPAN shell
perl -MCPAN -e shell install Parrot::Op
For more information on module installation, please visit the detailed CPAN module installation guide.