package LCFG::Build::Tools; # -*-cperl-*- use strict; use warnings; # $Id: Tools.pm.in 12894 2010-07-12 15:44:11Z squinney@INF.ED.AC.UK $ # $Source: /var/cvs/dice/LCFG-Build-Tools/lib/LCFG/Build/Tools.pm.in,v $ # $Revision: 12894 $ # $HeadURL: https://svn.lcfg.org/svn/source/tags/LCFG-Build-Tools/LCFG_Build_Tools_0_2_2/lib/LCFG/Build/Tools.pm.in $ # $Date: 2010-07-12 16:44:11 +0100 (Mon, 12 Jul 2010) $ our $VERSION = '0.2.2'; use Moose; extends qw(MooseX::App::Cmd); use constant plugin_search_path => 'LCFG::Build::Tool'; use constant allow_any_unambiguous_abbrev => 1; __PACKAGE__->meta->make_immutable; no Moose; 1; __END__ =head1 NAME LCFG::Build::Tools - LCFG software release tools =head1 VERSION This documentation refers to LCFG::Build::Tools version 0.2.2 =head1 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/ =head1 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. =over 4 =item L Generic utilities for building packages. =item L Utilities for building RPM packages. =item L Utilities for building MacOSX packages. =item L Build tool base class, only tool developers need to care about this. =item L Tool for checking the macro usage in your project. =item L Tool for tagging source code as a particular (micro-version) release. =item L Tool for tagging source code as a particular minor-version release. =item L Tool for tagging source code as a particular major-version release. =item L Tool for packaging tagged source code into a tar file. =item L Tool for packaging tagged development code into a tar file. =item L Tool for packaging tagged source code into a tar file and generating RPMs =item L Tool for packaging tagged source code into a tar file and generating an SRPM =item L Tool for packaging tagged development code into a tar file and generating RPMs. =item L Tool for packaging tagged source code into a tar file and generating packages for MacOSX =item L Tool for packaging tagged development code into a tar file and generating packages for MacOSX =head1 CONFIGURATION AND ENVIRONMENT Some of the tools use template files, by default it is assumed that the standard template directory is C. You can override this using the C environment variable. If you have done a local (i.e. non-root) install of this module then this will almost certainly be necessary. =head1 EXIT STATUS After successfully running a command it will exit with code zero. An error will result in a non-zero error code. =head1 DEPENDENCIES The LCFG build tools are L powered and the L module is used to handle the command-line interface. This module is part of the LCFG build tools suite and as such requires L and L. The templates are processed using the perl Template Toolkit. For building RPM packages you will need C. You will also need L, L, L, L, L, L and L. =head1 SEE ALSO L, lcfg-reltool(1) =head1 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 =head1 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. =head1 AUTHOR Stephen Quinney =head1 LICENSE AND COPYRIGHT Copyright (C) 2008 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. =cut