[oe] [meta-perl][PATCH] libnet-ssleay-perl: Fix configure issue

Jens Rehsack sno at netbsd.org
Mon Aug 27 13:27:29 UTC 2018


Fix libnet-ssleay-perl tries to execute found openssl binaries
at the place of ${OPENSSL_PREFIX} and bailing out when either
binaries are missing or can't be executed. From cross-compiling
perspective, both is insane.

Signed-off-by: Jens Rehsack <sno at netbsd.org>
---
 .../no-exec-on-configure.patch                | 33 +++++++++++++++++++
 .../libnet/libnet-ssleay-perl_1.85.bb         |  8 +++--
 2 files changed, 39 insertions(+), 2 deletions(-)
 create mode 100644 meta-perl/recipes-perl/libnet/libnet-ssleay-perl/no-exec-on-configure.patch

diff --git a/meta-perl/recipes-perl/libnet/libnet-ssleay-perl/no-exec-on-configure.patch b/meta-perl/recipes-perl/libnet/libnet-ssleay-perl/no-exec-on-configure.patch
new file mode 100644
index 000000000..6efa7d8f9
--- /dev/null
+++ b/meta-perl/recipes-perl/libnet/libnet-ssleay-perl/no-exec-on-configure.patch
@@ -0,0 +1,33 @@
+--- a/inc/Module/Install/PRIVATE/Net/SSLeay.pm	2018-08-27 14:56:24.788544991 +0200
++++ b/inc/Module/Install/PRIVATE/Net/SSLeay.pm	2018-08-27 15:00:12.847266331 +0200
+@@ -24,20 +24,7 @@
+     $self->requires_external_cc;
+ 
+     my $prefix = $self->find_openssl_prefix;
+-    my $exec   = $self->find_openssl_exec($prefix);
+-
+-    unless (-x $exec) {
+-        print <<EOM;
+-*** Could not find OpenSSL
+-    If it's already installed, please set the OPENSSL_PREFIX environment
+-    variable accordingly. If it isn't installed yet, get the latest version
+-    from http://www.openssl.org/.
+-EOM
+-        exit 0; # according http://wiki.cpantesters.org/wiki/CPANAuthorNotes this is best-practice when "missing library"
+-    }
+-
+-    $self->check_openssl_version($prefix, $exec);
+-    my $opts = $self->ssleay_get_build_opts($prefix, $exec);
++    my $opts = $self->ssleay_get_build_opts($prefix);
+ 
+     $self->makemaker_args(
+         CCCDLFLAGS => $opts->{cccdlflags},
+@@ -58,7 +45,7 @@
+ }
+ 
+ sub ssleay_get_build_opts {
+-    my ($self, $prefix, $exec) = @_;
++    my ($self, $prefix) = @_;
+ 
+     my $opts = {
+         lib_links  => [],
diff --git a/meta-perl/recipes-perl/libnet/libnet-ssleay-perl_1.85.bb b/meta-perl/recipes-perl/libnet/libnet-ssleay-perl_1.85.bb
index a0bb90e7d..6a116459e 100644
--- a/meta-perl/recipes-perl/libnet/libnet-ssleay-perl_1.85.bb
+++ b/meta-perl/recipes-perl/libnet/libnet-ssleay-perl_1.85.bb
@@ -23,6 +23,7 @@ RDEPENDS_${PN} += "\
 "
 
 SRC_URI = "http://search.cpan.org/CPAN/authors/id/M/MI/MIKEM/Net-SSLeay-${PV}.tar.gz \
+           file://no-exec-on-configure.patch \
            file://run-ptest \
           "
 SRC_URI[md5sum] = "d602bdce4e0531c6efc276e3e429ca69"
@@ -32,9 +33,12 @@ S = "${WORKDIR}/Net-SSLeay-${PV}"
 
 inherit cpan ptest
 
-export OPENSSL_PREFIX="${STAGING_LIBDIR}"
+#EXTRA_CPANFLAGS = "INC=-I${STAGING_INCDIR} LIBS='-L${STAGING_LIBDIR} -lcrypto -lssl -L${STAGING_BASELIBDIR} -lz'"
 
-EXTRA_CPANFLAGS = "INC=-I${STAGING_INCDIR} LIBS='-L${STAGING_LIBDIR} -lcrypto -lssl -L${STAGING_BASELIBDIR} -lz'"
+do_configure() {
+    export OPENSSL_PREFIX="${STAGING_DIR_TARGET}/usr"
+    cpan_do_configure
+}
 
 do_install_ptest() {
     cp -r ${B}/t ${D}${PTEST_PATH}
-- 
2.17.1




More information about the Openembedded-devel mailing list