Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Hongxu Jia <hongxu.jia@windriver.com>
To: <richard.purdie@linuxfoundation.org>,
	<openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH] openssl: use nativeperl to build
Date: Fri, 12 Oct 2018 15:54:49 +0800	[thread overview]
Message-ID: <3012dac0-ec3a-bfd8-fb58-27be91642b4d@windriver.com> (raw)
In-Reply-To: <8fe4eb7c-a838-e1da-a1a2-7acd201d9977@windriver.com>

On 2018年10月11日 22:58, Hongxu Jia wrote:
> On 2018年10月11日 20:00, richard.purdie@linuxfoundation.org wrote:
>> On Thu, 2018-10-11 at 02:55 -0700, Hongxu Jia wrote:
>>> If host perl is old version (such as perl v5.16.3 on CentOS-7.5),
>>> the openssl-native failed at do_install, the reason is its Makefile
>>> is not correct which is generated at do_configure by perl script.
>>>
>>> Use nativeperl to assure latest perl on host for openssl build.
>>>
>>> Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
>>> ---
>>>   meta/recipes-connectivity/openssl/openssl_1.1.1.bb | 6 ++++--
>>>   1 file changed, 4 insertions(+), 2 deletions(-)
>> I think this will have a noticeable effect on built times unfortunately
>> since it means openssl-native would then depend upon perl-native...
Hi RP,

With some digging on upstream, more than perl version,
the building also requires to install perl Text::Template module
which does not exist in core perl, I think we have to add the recipe

[snip]
  Notes on Perl modules we use
  ----------------------------
  We make increasing use of Perl modules, and do our best to limit
  ourselves to core Perl modules to keep the requirements down. There
  are just a few exceptions:
  Test::More         We require the minimum version to be 0.96, which
                     appeared in Perl 5.13.4, because that version was
                     the first to have all the features we're using.
                     This module is required for testing only!  If you
                     don't plan on running the tests, you don't need to
                     bother with this one.

  Text::Template     This module is not part of the core Perl modules.
                     As a matter of fact, the core Perl modules do not
                     include any templating module to date.
                     This module is absolutely needed, configuration
depends on it.
[snip]

https://github.com/openssl/openssl/blob/master/NOTES.PERL
https://github.com/openssl/openssl/commit/4e351ca92e3a1f447cef3d2e330f13941f9412c6

//Hongxu



> Hi RP,
>
> Yes, I do the test to build openssl-native from scratch, it requires 
> extra 4 minutes
>
> 1. Use host perl
> 18 task
> real    1m33.978s
> user    0m0.728s
> sys     0m0.080s
>
> 2. Use nativeperl
> 114 tasks
> real    5m49.911s
> user    0m1.372s
> sys     0m0.140s
>
> But for a image build, the cost is not much
> (To exclude network affect, we assure all tarball/git exist in downloads)
> But build a image from scratch:
>
> time bitbake core-image-minimal
>
> 1. Use host perl
> NOTE: Tasks Summary: Attempted 1655 tasks of which 5 didn't need to be 
> rerun and all succeeded.
>
> real    28m29.625s
> user    0m7.296s
> sys     0m0.988s
>
> 2. Use native perl
> NOTE: Tasks Summary: Attempted 1655 tasks of which 5 didn't need to be 
> rerun and all succeeded.
>
> real    28m42.619s
> user    0m7.496s
> sys     0m0.952s
>
>
> As upstream said, it indeed require specific PERL version
>
> `If you are building OpenSSL 1.1.0 and above, then you will also need 
> PERL 5.10 or high'
>
> https://wiki.openssl.org/index.php/Compilation_and_Installation
>
> And I found at least PERL 5.16.3 not work for OpenSSL 1.1.1
>
> Or add a perl version detecting in insane check? We should report a 
> lowest
> workable perl version number when detect failed. But we may update the 
> version
> number in insane check when openssl is upgraded.
>
> //Hongxu
>
>> Cheers,
>>
>> Richard
>>
>



  reply	other threads:[~2018-10-12  7:54 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-11  9:55 [PATCH] openssl: use nativeperl to build Hongxu Jia
2018-10-11 12:00 ` richard.purdie
2018-10-11 14:58   ` Hongxu Jia
2018-10-12  7:54     ` Hongxu Jia [this message]
2018-10-12  8:57       ` richard.purdie
2018-10-12  9:03         ` Hongxu Jia
2018-10-12  9:26           ` Hongxu Jia

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3012dac0-ec3a-bfd8-fb58-27be91642b4d@windriver.com \
    --to=hongxu.jia@windriver.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=richard.purdie@linuxfoundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox