Provided by: libdebian-source-perl_0.122_all
NAME
Debian::Control - manage Debian source package control files
SYNOPSIS
my $c = Debian::Control->new(); # construct a new $c->read($file); # parse debian/control file $c->write($file); # write to file print $c->source->Source; print $c->source->Build_Depends; # Debian::Dependencies object $c->binary->{'libfoo-perl'}->Description( "Foo Perl module\n" . " Foo makes this and that" );
DESCRIPTION
Debian::Control can be used for representation and manipulation of Debian source package control files in an object-oriented way. It provides easy reading and writing of the debian/control file found in Debian source packages.
FIELDS
source An instance of Debian::Control::Stanza::Source class. Contains the source stanza of the Debian source package control file. binary A hash reference with keys being binary package names and values instances of Debian::Control::Stanza::Binary class. Contains the information of the binary package stanzas of Debian source package control file. binary_tie A Tie::IxHash object tied to the binary hash.
CONSTRUCTOR
new Constructs a new Debian::Control instance. The "source" field is initialized with an empty instance of Debian::Control::Stanza::Source and "binary" field is initialized with an empty instance of Tie::IxHash.
METHODS
read file Parse "control" in debian and populate "source" and "binary" accessors. file can be either a file name, an opened file handle or a string scalar reference. write file Writes a debian/control-like file in file with the contents defined in the "source" and "binary" fields. file can be either a file name, an opened file handle or a string scalar reference. All dependency lists are sorted before writing. is_arch_dep Returns true if the package is architecture-dependent. This is determined by the "Architecture" field of the first binary package. If it equals to "all", then the package is architecture-independent; otherwise it is architecture-dependent. Returns undef if it is not possible to determine whether the package is architecture- dependent or not. This is the case when there are no binary package stanzas present or the first has no "Archiitecture" field.
SEE ALSO
Debian::Control::Stanza::Source, Debian::Control::Stanza::Binary, Debian::Control::FromCPAN
COPYRIGHT & LICENSE
Copyright (C) 2009 Damyan Ivanov dmn@debian.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.