3 # CC0 license applied, see LICENSE.md
10 use File::Spec::Functions;
14 my $app = $p->{app_prove};
17 my $verbose = $ENV{CTEST_INTERACTIVE_DEBUG_MODE} || $app->verbose();
18 $app->verbose( $verbose );
20 my $openssl_libdir = dirname($ENV{OPENSSL_CRYPTO_LIBRARY})
21 if $ENV{OPENSSL_CRYPTO_LIBRARY};
22 my $openssl_bindir = dirname($ENV{OPENSSL_PROGRAM})
23 if $ENV{OPENSSL_PROGRAM};
24 my $openssl_rootdir = $ENV{OPENSSL_ROOT_DIR};
25 my $openssl_rootdir_is_buildtree =
26 $openssl_rootdir && -d catdir($openssl_rootdir, 'configdata.pm');
28 unless ($openssl_libdir) {
29 $openssl_libdir = $openssl_rootdir_is_buildtree
31 : catdir($openssl_rootdir, 'lib');
33 unless ($openssl_bindir) {
34 $openssl_bindir = $openssl_rootdir_is_buildtree
35 ? catdir($openssl_rootdir, 'apps')
36 : catdir($openssl_rootdir, 'bin');
39 if ($openssl_libdir) {
40 # Variants of library paths
41 $ENV{$_} = join(':', $openssl_libdir, $ENV{$_} // ())
43 'LD_LIBRARY_PATH', # Linux, ELF HP-UX
44 'DYLD_LIBRARY_PATH', # MacOS X
45 'LIBPATH', # AIX, OS/2
48 print STDERR "Added $openssl_libdir to:\n";
49 print STDERR " LD_LIBRARY_PATH, DYLD_LIBRARY_PATH, LIBPATH\n";
53 if ($openssl_bindir) {
54 # Binary path, works the same everywhere
55 $ENV{PATH} = join(':', $openssl_bindir, $ENV{PATH});
57 print STDERR "Added $openssl_bindir to:\n";
58 print STDERR " PATH\n";
62 print STDERR "$_=", $ENV{$_} // '', "\n"
63 foreach qw(LD_LIBRARY_PATH DYLD_LIBRARY_PATH LIBPATH PATH);