Crypt-SSLeay

 view release on metacpan or  search on metacpan

Makefile.PL  view on Meta::CPAN


    my $builder = ExtUtils::CBuilder->new(quiet => !($opt->{verbose} ? 1 : 0));

    my $object = $builder->compile(
        source => $source,
        $opt->{incpath} ? (include_dirs => "$opt->{incpath}") : (),
    );

    my $executable = $builder->link_executable(
        objects => $object,
    );

    return file($executable)->absolute->resolve;
}

sub filter_libs {
    my $opt = shift;
    my $libs = shift;

    return $libs unless eval {
        require Devel::CheckLib;
        Devel::CheckLib->import;
        1;
    };

    my @found;

    for my $lib (@$libs) {
       eval {
           assert_lib(
                debug => ($opt->{verbose} ? 1 : 0),
                lib => $lib,
                header => 'openssl/ssl.h',
                $opt->{libpath} ? (libpath => "$opt->{libpath}") : (),
                $opt->{incpath} ? (incpath => "$opt->{incpath}") : (),
            );
            push @found, $lib;
        };
    }
    unless (grep /crypt|ssl|eay/, @found) {
        printf(
            "Cannot link with any of the requested SSL libraries '%s'\n",
            join(', ' => @$libs),
        );
        exit 0;
    }

    printf "Found libraries '%s'\n", join(', ' => @found);
    return \@found;
}

sub show_do_you_need_crypt_ssleay {
    print <<EO_DO_YOU_NEED_CRYPT_SSLEAY;

    *** THIS IS NOT AN ERROR, JUST A MESSAGE FOR YOUR INFORMATION ***

    Do you really need Crypt::SSLeay?

    Starting with version 6.02 of LWP, https support was unbundled into
    LWP::Protocol::https. This module specifies as one of its prerequisites
    IO::Socket::SSL which is automatically used by LWP::UserAgent unless
    this preference is overridden separately. IO::Socket::SSL is a more
    complete implementation, and, crucially, it allows hostname
    verification. Crypt::SSLeay does not support this. At this point,
    Crypt::SSLeay is maintained to support existing software that already
    depends on it.

    However, it is possible that your software does not really depend on
    Crypt::SSLeay, only on the ability of LWP::UserAgent class to
    communicate with sites over SSL/TLS.

    If are using version LWP 6.02 or later, and therefore have installed
    LWP::Protocol::https and its dependencies, and do not explicitly use
    Net::SSL before loading LWP::UserAgent, or override the default socket
    class, you are probably using IO::Socket::SSL and do not really need
    Crypt::SSLeay.

    Before installing Crypt::SSLeay, you may want to try specifying a
    dependency on LWP::Protocol::https.

EO_DO_YOU_NEED_CRYPT_SSLEAY
}



( run in 1.407 second using v1.01-cache-2.11-cpan-39bf76dae61 )