1# This program is free software; you can redistribute it and/or modify
2# it under the terms of the GNU General Public License as published by
3# the Free Software Foundation; either version 2 of the License, or
4# (at your option) any later version.
5#
6# This program is distributed in the hope that it will be useful,
7# but WITHOUT ANY WARRANTY; without even the implied warranty of
8# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
9# GNU General Public License for more details.
10#
11# You should have received a copy of the GNU General Public License
12# along with this program.  If not, see <https://www.gnu.org/licenses/>.
13
14package Dpkg::Control::Types;
15
16use strict;
17use warnings;
18
19our $VERSION = '0.01';
20our @EXPORT = qw(
21    CTRL_UNKNOWN
22    CTRL_INFO_SRC
23    CTRL_INFO_PKG
24    CTRL_REPO_RELEASE
25    CTRL_INDEX_SRC
26    CTRL_INDEX_PKG
27    CTRL_PKG_SRC
28    CTRL_PKG_DEB
29    CTRL_FILE_BUILDINFO
30    CTRL_FILE_CHANGES
31    CTRL_FILE_VENDOR
32    CTRL_FILE_STATUS
33    CTRL_CHANGELOG
34    CTRL_COPYRIGHT_HEADER
35    CTRL_COPYRIGHT_FILES
36    CTRL_COPYRIGHT_LICENSE
37    CTRL_TESTS
38);
39
40use Exporter qw(import);
41
42=encoding utf8
43
44=head1 NAME
45
46Dpkg::Control::Types - export CTRL_* constants
47
48=head1 DESCRIPTION
49
50You should not use this module directly. Instead you more likely
51want to use Dpkg::Control which also re-exports the same constants.
52
53This module has been introduced solely to avoid a dependency loop
54between Dpkg::Control and Dpkg::Control::Fields.
55
56=cut
57
58use constant {
59    CTRL_UNKNOWN => 0,
60    # First control block in debian/control.
61    CTRL_INFO_SRC => 1,
62    # Subsequent control blocks in debian/control.
63    CTRL_INFO_PKG => 2,
64    # Entry in repository's Sources files.
65    CTRL_INDEX_SRC => 4,
66    # Entry in repository's Packages files.
67    CTRL_INDEX_PKG => 8,
68    # .dsc file of source package.
69    CTRL_PKG_SRC => 16,
70    # DEBIAN/control in binary packages.
71    CTRL_PKG_DEB => 32,
72    # .changes file.
73    CTRL_FILE_CHANGES => 64,
74    # File in $Dpkg::CONFDIR/origins.
75    CTRL_FILE_VENDOR => 128,
76    # $Dpkg::ADMINDIR/status.
77    CTRL_FILE_STATUS => 256,
78    # Output of dpkg-parsechangelog.
79    CTRL_CHANGELOG => 512,
80    # Repository's (In)Release file.
81    CTRL_REPO_RELEASE => 1024,
82    # Header control block in debian/copyright.
83    CTRL_COPYRIGHT_HEADER => 2048,
84    # Files control block in debian/copyright.
85    CTRL_COPYRIGHT_FILES => 4096,
86    # License control block in debian/copyright.
87    CTRL_COPYRIGHT_LICENSE => 8192,
88    # Package test suite control file in debian/tests/control.
89    CTRL_TESTS => 16384,
90    # .buildinfo file
91    CTRL_FILE_BUILDINFO => 32768,
92};
93
94=head1 CHANGES
95
96=head2 Version 0.xx
97
98This is a private module.
99
100=cut
101
1021;
103