| DhMakePerl documentation | view source | Contained in the DhMakePerl distribution. |
Debian::Control - manage Debian source package control files
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"
);
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.
An instance of Debian::Control::Stanza::Source class. Contains the source stanza of the Debian source package control file.
A hash reference (actually Tie::IxHash instance) 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.
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.
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.
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.
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.
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.
| DhMakePerl documentation | view source | Contained in the DhMakePerl distribution. |