1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
#! /usr/bin/perl package with_fallback; sub import { use File::Basename; use File::Spec::Functions; foreach (@_) { eval "require $_"; if ($@) { unshift @INC, catdir(dirname(__FILE__), "..", "external", "perl"); my $transfer = "transfer::$_"; eval "require $transfer"; shift @INC; warn $@ if $@; } } } 1;