Fields.pm 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. package Dpkg::Fields;
  2. use strict;
  3. use warnings;
  4. use base qw(Exporter);
  5. use Dpkg::Gettext;
  6. use Dpkg::ErrorHandling;
  7. use Dpkg::Deps qw(@src_dep_fields @pkg_dep_fields);
  8. our @EXPORT_OK = qw(capit unknown %control_src_fields %control_pkg_fields
  9. $control_src_field_regex $control_pkg_field_regex);
  10. our %EXPORT_TAGS = ('list' => [qw(%control_src_fields %control_pkg_fields
  11. $control_src_field_regex $control_pkg_field_regex)]);
  12. # Some variables (list of fields)
  13. our %control_src_fields;
  14. our %control_pkg_fields;
  15. $control_src_fields{$_} = 1 foreach (qw(Bugs Dm-Upload-Allowed
  16. Homepage Origin Maintainer Priority Section Source Standards-Version
  17. Uploaders Vcs-Browser Vcs-Arch Vcs-Bzr Vcs-Cvs Vcs-Darcs Vcs-Git Vcs-Hg
  18. Vcs-Mtn Vcs-Svn));
  19. $control_src_fields{$_} = 1 foreach (@src_dep_fields);
  20. $control_pkg_fields{$_} = 1 foreach (qw(Architecture Bugs Description Essential
  21. Homepage Installer-Menu-Item Kernel-Version Package Package-Type
  22. Priority Section Subarchitecture Tag Multi-Arch));
  23. $control_pkg_fields{$_} = 1 foreach (@pkg_dep_fields);
  24. our $control_src_field_regex = "(?:" . join("|", keys %control_src_fields) . ")";
  25. our $control_pkg_field_regex = "(?:" . join("|", keys %control_pkg_fields) . ")";
  26. # Some functions
  27. sub capit {
  28. my @pieces = map { ucfirst(lc) } split /-/, $_[0];
  29. return join '-', @pieces;
  30. }
  31. sub unknown($$)
  32. {
  33. my ($field, $desc) = @_;
  34. warning(_g("unknown information field '%s' in input data in %s"),
  35. $field, $desc);
  36. }
  37. 1;