perl: generalize the Git::LoadCPAN facility
[gitweb.git] / perl / Git / LoadCPAN / Error.pm
index 3513fe745b82f2a5033b9989b605e0f0ca8a8112..c6d2c45d808b2ec553f53f15ad5f495844199ac0 100644 (file)
@@ -2,45 +2,9 @@ package Git::LoadCPAN::Error;
 use 5.008;
 use strict;
 use warnings;
-
-=head1 NAME
-
-Git::LoadCPAN::Error - Wrapper for the L<Error> module, in case it's not installed
-
-=head1 DESCRIPTION
-
-Wraps the import function for the L<Error> module.
-
-This module is only intended to be used for code shipping in the
-C<git.git> repository. Use it for anything else at your peril!
-
-=cut
-
-sub import {
-    shift;
-    my $caller = caller;
-
-    eval {
-       require Error;
-       1;
-    } or do {
-       my $error = $@ || "Zombie Error";
-
-       my $Git_Error_pm_path = $INC{"Git/LoadCPAN/Error.pm"} || die "BUG: Should have our own path from %INC!";
-
-       require File::Basename;
-       my $Git_Error_pm_root = File::Basename::dirname($Git_Error_pm_path) || die "BUG: Can't figure out lib/Git dirname from '$Git_Error_pm_path'!";
-
-       require File::Spec;
-       my $Git_pm_FromCPAN_root = File::Spec->catdir($Git_Error_pm_root, '..', 'FromCPAN');
-       die "BUG: '$Git_pm_FromCPAN_root' should be a directory!" unless -d $Git_pm_FromCPAN_root;
-
-       local @INC = ($Git_pm_FromCPAN_root, @INC);
-       require Error;
-    };
-
-    unshift @_, $caller;
-    goto &Error::import;
-}
+use Git::LoadCPAN (
+       module => 'Error',
+       import => 1,
+);
 
 1;