==== NAME ====

LCFG::Build::Tools - Tools for managing the release of LCFG projects

==== DESCRIPTION ====

LCFG::Build::Tools is a suite of tools designed to handle the
releasing of LCFG software projects and the creation of
packages. Support is available for developing projects within a
version-control systems (currently either CVS or None). By default a
source tar file is generated along with a specfile for building binary
RPMs. Support is provided for building binary RPMs directly. Work is
under way to also fully support the generation of MacOSX packages.

Although this software is designed for managing LCFG projects there is
nothing that requires the software be for LCFG. All the tools included
are designed to more widely applicable.

This suite has been intentionally designed to be easy to extend to
support new version-control systems (e.g. subversion, git, etc) and
new package formats (e.g. for Debian). It has also been designed to
ensure that it is easy to extend with additional command modules. For
further details see the online documentation at
http://www.lcfg.org/doc/buildtools/

==== DEPENDENCIES ====

This module needs perl 5.10 or newer.

To build this module you will need the following:

        Module::Build

To use this module you will need the following:

        Archive::Tar
        DateTime
        File::Copy::Recursive
        File::Find::Rule
        File::HomeDir
        File::pushd
        IO::Zlib
        LCFG::Build::PkgSpec >= 0.2.6
        LCFG::Build::VCS >= 0.3.7
        Module::Pluggable >= 3.10
        Moose >= 0.57
        MooseX::App::Cmd >= 0.06
        Readonly
        Template Toolkit >= 2.14
        UNIVERSAL::require
        YAML::Syck >= 0.98

==== INSTALLATION ====

Make sure you have the dependencies installed first! (see DEPENDENCIES above)

If you don't know how to install these, try using the CPAN module, an easy
way of auto-installing modules from the Comprehensive Perl Archive Network,
where the above modules reside. Do "perldoc perlmodinstall" or "perldoc
CPAN" for more information.

To install this module type the following:

   perl Build.PL
   ./Build
   ./Build test
   ./Build install

Or, if you're on a platform (like DOS or Windows) that doesn't like the "./"
notation, you can do this:

   perl Build.PL
   perl Build
   perl Build test
   perl Build install

In order to install somewhere other than the default, such as in a directory
under your home directory, like "/home/fred/perl" go

   perl Build.PL --install_base /home/fred/perl

as the first step instead.

This will install the files underneath /home/fred/perl.

You will also need to ensure the lcfgbuild files are installed into a
writable location. So you will normally need something like:

   ./Build --install_base /home/fred/perl \
           --install_path lcfgbuild=/home/fred/lcfgbuild

If they are not in the standard location the LCFG::Build::Utils
module needs to know where the templates are stored. You can override
the default location with the LCFG_BUILD_TMPLDIR environment variable,
for example:

        export LCFG_BUILD_TMPLDIR=/home/fred/lcfgbuild/templates

You will also need to make sure that you alter the PERL5LIB variable
to find the modules, and the PATH variable to find the script.

Therefore you will need to change: your path, to include
/home/fred/perl/script (where the script will be)

        export PATH=/home/fred/perl/script:${PATH}

the PERL5LIB variable to add /home/fred/perl/lib

        export PERL5LIB=/home/fred/perl/lib:${PERL5LIB}

If you want to install in a temporary install directory (such as if you are
building a package) then instead of going

   perl Build install

go

   perl Build install destdir=/my/temp/dir

and it will be installed there, with a directory structure under
/my/temp/dir the same as it would be if it were installed plain. Note that
this is NOT the same as setting --install_base, because certain things are
done at build-time which use the install_base info.

See "perldoc perlrun" for more information on PERL5LIB, and see "perldoc
Module::Build" for more information on installation options.

==== PROBLEMS AND FEEDBACK ====

There are no known bugs in this application. Please report any
problems to bugs@lcfg.org, feedback and patches are also always very
welcome.

==== AUTHOR ====

Stephen Quinney <squinney@inf.ed.ac.uk>

==== COPYRIGHT AND LICENCE ====

Copyright (C) 2008-2019 University of Edinburgh

This program is free software; you can redistribute it and/or modify it
under the terms of the GPL, version 2 or later.

