sourCEntral - mobile manpages

pdf

Debian::Control

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 AT debian DOT 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.

pdf