
FreeBSD::Src - A object oriented interface to building FreeBSD from source.

Version 1.0.0

Quick summary of what the module does.
Perhaps a little code snippet.
use FreeBSD::Src;
#creates a new FreeBSD::Src object and build stuff in /tm[/obj and a kernel config
#named whatever.
my $src=FreeBSD::Src->new({obj=>"/tmp/obj", kernel=>"whatever"});
#builds and installs the kernel and world
$src->makeBuildKernel;
$src->makeInstallKernel;
$src->makeBuildWorld;
$src->makeInstallWorld;

This creates the object that will be used. It takes arguement, which is a hash that contains various options that will be used.
This key contains the path to which contains the FreeBSD source. This this does not exist, it results in a permanent error.
The default is '/usr/src' if it is not defined.
This contains the path to the directory that will contain objects created by the compilation.
The default is '/usr/obj' if it is not defined.
This is the kernel config that will be build.
The default is 'GENERIC' unless it is defined.
This is the make.conf file to use for the build.
Builds the world.
The return is a perl boolean value.
The returned integer from make can be reached in $obj->{returnedInt}.
The output from make can be found in $obj->{returned}.
Installs the world.
The return is a perl boolean value.
The returned integer from make can be reached in $obj->{returnedInt}.
The output from make can be found in $obj->{returned}.
Builds the kernel
The return is a perl boolean value.
The returned integer from make can be reached in $obj->{returnedInt}.
The output from make can be found in $obj->{returned}.
Install the kernel.
The return is a perl boolean value.
The returned integer from make can be reached in $obj->{returnedInt}.
The output from make can be found in $obj->{returned}.
This is a internal function and should not be called.

The source directory does not exist.
'make buildworld' failed.
'make installdworld' failed.
'make buildkernel KERNCONF=<kernel>' failed.
'make installkernel KERNCONF=<kernel>' failed.

Zane C. Bowers, <vvelox at vvelox.net>

Please report any bugs or feature requests to bug-freebsd-src at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=FreeBSD-Src. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

You can find documentation for this module with the perldoc command.
perldoc FreeBSD::Src
You can also look for information at:


Copyright 2008 Zane C. Bowers, all rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.