|$object = ExtUtils::Depends->new($name, @deps)||Create a new depends object named $name. Any modules listed in @deps (which may be empty) are added as dependencies and their dependency information is loaded. An exception is raised if any dependency information cannot be loaded.|
|$depends->add_deps (@deps)||Add modules listed in @deps as dependencies.|
|(hashes) = $depends->get_deps||Fetch information on the dependencies of $depends as a hash of hashes, which are dependency information indexed by module name. See load.|
|$depends->set_inc (@newinc)||Add strings to the includes or cflags variables.|
|$depends->set_libs (@newlibs)||Add strings to the libs (linker flags) variable.|
|$depends->add_pm (%pm_files)||Add files to the hash to be passed through ExtUtils::WriteMakefiles PM key.|
|$depends->add_xs (@xs_files)||Add xs files to be compiled.|
|$depends->add_c (@c_files)||Add C files to be compiled.|
|$depends->add_typemaps (@typemaps)||Add typemap files to be used and installed.|
|$depends->add_headers (list)||No-op, for backward compatibility.|
Install @files to the data directory for $depends.
This actually works by adding them to the hash of pm files that gets passed through WriteMakefiles PM key.
Save the important information from $depends to $filename, and
set it up to be installed as name::Install::Files.
Note: the actual value of $filename is unimportant so long as it doesnt clash with any other local files. It will be installed as name::Install::Files.
|hash = $depends->get_makefile_vars||
Return the information in $depends in a format digestible by
This sets at least the following keys:
And these if there is data to fill them:
|hashref = ExtUtils::Depends::load (name)||
Load and return dependency information for name. Croaks if no such
information can be found. The information is returned as an anonymous
hash containing these keys:
If you want to make module name support this, you must provide a module name::Install::Files, which on loading will implement the following class methods:
An easy way to achieve this is to use the method $depends->save_config ($filename), but your package may have different facilities already.
|$depends->load_deps||Load $depends dependencies, by calling load on each dependency module. This is usually done for you, and should only be needed if you want to call get_deps after calling add_deps manually.|
Version 0.2 discards some of the more esoteric features provided by the older versions. As they were completely undocumented, and this module has yet to reach 1.0, this may not exactly be a bug.
This module is tightly coupled to the ExtUtils::MakeMaker architecture.
You can submit new bugs/feature requests by using one of two bug trackers (below).
Patches that implement new features with test cases, and/or test cases that exercise existing bugs are always welcome.
CPAN Request Tracker You can submit bugs/feature requests via the web by going to <https://rt.cpan.org/Public/Bug/Report.html?Queue=ExtUtils-Depends> (requires PAUSE ID or Bitcard), or by sending an e-mail to bug-ExtUtils-Depends at rt.cpan.org. Gnome.org Bugzilla Report bugs/feature requests to the gnome-perl product (requires login) <http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-perl>
The Gtk-Perl mailing list is at gtk-perl-list at gnome dot org.
The source code to ExtUtils::Depends is available at the Gnome.org Git repo (<https://git.gnome.org/browse/perl-ExtUtils-Depends/>). Create your own copy of the Git repo with:
git clone git://git.gnome.org/perl-ExtUtils-Depends (Git protocol) git clone https://git.gnome.org/browse/perl-ExtUtils-Depends/ (HTTPS)
Paolo Molaro <lupus at debian dot org> wrote the original version for Gtk-Perl. muppet <scott at asofyet dot org> rewrote the innards for version 0.2, borrowing liberally from Paolos code.
The Gtk2 project, <http://gtk2-perl.sf.net>/gtk-perl-list at gnome dot org.
This library is free software; you may redistribute it and/or modify it under the same terms as Perl itself.
|perl v5.20.3||EXTUTILS::DEPENDS (3)||2015-11-30|