Commit graph

154 commits

Author SHA1 Message Date
Lars Wirzenius
3944230624 Add YAML as a dependency, since C4/Record.pm uses it.
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-06-02 07:14:38 -04:00
Lars Wirzenius
2fcc4fe94e Add tools to update debian/control's build dependencies.
The canonical list of Perl module dependencies are in
C4::Installer::PerlDependencies::PERL_DEPS now. Add a script
(debian/list-deps) to turn that into a list of Debian package names.

Because that is a slow process, and the output rarely changes, do
not do that at build time. Also, doing it at build time would require
modifying debian/control in evil ways.

Instead, add another tool, debian/update-control, which reads the
new file debian/control.in, and adds the output of debian/list-deps to
Build-Depends and creates a new debian/control.

debian/control.in is the master file. If changes are needed, that should
be edited. For performance and convenience reasons, the output is also kept
in git, but don't edit debian/control directly, please. Such changes
might get lost by the next commit by someone else.

Whenever PERL_DEPS changes, debian/update-control should be run as well
and the result committed to git.

This is not quite as automatic as it might be, but should be good enough.
It avoids keeping the list of Perl modules in two places.

Note that since it seems impossible to automatically figure out the Debian
package version that corresponds to a Perl module version, I have not
tried to do that at all.

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-06-02 07:14:36 -04:00
Chris Nighswonger
a7f56922eb Backing down the required version of Graphics::Magick
This brings the required version into line with the latest version available in the Debian and Ubuntu repos.

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-05-17 10:29:51 -04:00
Chris Nighswonger
1f32ecbc8e Enhancement Bug 4444: Centralize Code Handling Perl Dependencies
This patch adds two modules: C4::Installer::PerlModule and C4::Installer::PerlDependencies. The latter provides a single point
of reference for cataloging Koha Perl dependencies. The former provides an OO style interface to the dependency catalog.

The format of C4::Installer::PerlDependencies is very simply an anonymous hash of hashes. Each second level hash takes this form:

'Foo::Bar' => {
  'usage'    => 'FooBar Feature',
  'required' => '1', # 0 if optional
  'min_ver'  => '0.01',
},

New modules can be appended to C4::Installer::PerlDependencies as needed and will be picked up by every piece of code which needs
this information.

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-05-17 09:01:37 -04:00