1 # Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. 2 # 3 # Licensed under the OpenSSL license (the "License"). You may not use 4 # this file except in compliance with the License. You can obtain a copy 5 # in the file LICENSE in the source distribution or at 6 # https://www.openssl.org/source/license.html 7 8 package with_fallback; 9 10 sub import { 11 shift; 12 13 use File::Basename; 14 use File::Spec::Functions; 15 foreach (@_) { 16 eval "use $_"; 17 if ($@) { 18 unshift @INC, catdir(dirname(__FILE__), 19 "..", "..", "external", "perl"); 20 my $transfer = "transfer::$_"; 21 eval "use $transfer"; 22 shift @INC; 23 warn $@ if $@; 24 } 25 } 26 } 27 1; 28