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

NAME

    LCFG::Build::Tools - LCFG software release tools

VERSION

This documentation refers to LCFG::Build::Tools version 0.9.30

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/

COMMAND MODULES

This is a list of the LCFG build tool modules in this suite. You should see the separate perl documentation for information on how to use the modules.

LCFG::Build::Utils

Generic utilities for building packages.

LCFG::Build::Utils::RPM

Utilities for building RPM packages.

LCFG::Build::Utils::MacOSX

Utilities for building MacOSX packages.

LCFG::Build::Tool

Build tool base class, only tool developers need to care about this.

LCFG::Build::Tool::CheckMacros

Tool for checking the macro usage in your project.

LCFG::Build::Tool::MicroVersion

Tool for tagging source code as a particular (micro-version) release.

LCFG::Build::Tool::MinorVersion

Tool for tagging source code as a particular minor-version release.

LCFG::Build::Tool::MajorVersion

Tool for tagging source code as a particular major-version release.

LCFG::Build::Tool::Pack

Tool for packaging tagged source code into a tar file.

LCFG::Build::Tool::DevPack

Tool for packaging tagged development code into a tar file.

LCFG::Build::Tool::RPM

Tool for packaging tagged source code into a tar file and generating RPMs

LCFG::Build::Tool::SRPM

Tool for packaging tagged source code into a tar file and generating an SRPM

LCFG::Build::Tool::DevRPM

Tool for packaging tagged development code into a tar file and generating RPMs.

LCFG::Build::Tool::OSXPkg

Tool for packaging tagged source code into a tar file and generating packages for MacOSX

LCFG::Build::Tool::DevOSXPkg

Tool for packaging tagged development code into a tar file and generating packages for MacOSX

CONFIGURATION AND ENVIRONMENT

Some of the tools use template files, by default it is assumed that the standard template directory is /usr/local/share/lcfgbuild/templates on MacOSX and /usr/share/lcfgbuild/templates on all other platforms. You can override this using the LCFG_BUILD_TMPLDIR environment variable. If you have done a local (i.e. non-root) install of this module then this will almost certainly be necessary.

EXIT STATUS

After successfully running a command it will exit with code zero. An error will result in a non-zero error code.

DEPENDENCIES

The LCFG build tools are Moose powered and the MooseX::App::Cmd module is used to handle the command-line interface.

This module is part of the LCFG build tools suite and as such requires LCFG::Build::Pkgspec and LCFG::Build::VCS.

The templates are processed using the perl Template Toolkit.

For building RPM packages you will need rpmbuild.

You will also need Archive::Tar, DateTime, File::Find::Rule, IO::Zlib, Text::Abbreviate, UNIVERSAL::require and YAML::Syck.

SEE ALSO

LCFG::Build::Skeleton, lcfg-reltool(1)

PLATFORMS

This is the list of platforms on which we have tested this software. We expect this software to work on any Unix-like platform which is supported by Perl.

Fedora12, Fedora13, ScientificLinux5, ScientificLinux6, MacOSX7

BUGS AND LIMITATIONS

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>

LICENSE AND COPYRIGHT

    Copyright (C) 2008-2019 University of Edinburgh. All rights reserved.

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