<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">On 2018年10月12日 17:03, Hongxu Jia wrote:<br>
</div>
<blockquote type="cite"
cite="mid:d79efe64-c2a1-fb09-d174-7d27ab741442@windriver.com">
<blockquote type="cite"
cite="mid:62308c8aac0596271b7ca1f12aabb78547f1a7a9.camel@linuxfoundation.org">
<blockquote type="cite" style="color: #000000;"> </blockquote>
<pre wrap=""><a class="moz-txt-link-freetext" href="https://github.com/openssl/openssl/commit/4e351ca92e3a1f447cef3d2e330f13941f9412c6" moz-do-not-send="true">https://github.com/openssl/openssl/commit/4e351ca92e3a1f447cef3d2e330f13941f9412c6</a>
That is a good find. Perhaps we could check for that in sanity.bbclass?
Is it commonly available in distributions like centos?
</pre>
</blockquote>
I am afraid the perl module (Text::Template) is not common,<br>
available on most distro, since they do not need to build<br>
openssl :(<br>
<br>
But I am curious that without that perl module, the build seem<br>
ok with newer perl (perl v5.22.1 in ubuntu 1804 and without
Text::Template)<br>
<br>
I am going on digging the root cause why the build works well<br>
without the perl module<br>
<br>
</blockquote>
<br>
I know the reason<br>
<br>
It will try to use Text::Template, if failed it fallback to load the
old one in perl source<br>
<br>
[snip util/dofile.pl]<br>
use with_fallback "Text::Template 1.46";<br>
[snip util/dofile.pl]<br>
<br>
[snip util/perl/with_fallback.pm]<br>
sub import {<br>
shift;<br>
<br>
use File::Basename;<br>
use File::Spec::Functions;<br>
foreach (@_) {<br>
eval "use $_";<br>
if ($@) {<br>
unshift @INC, catdir(dirname(__FILE__),<br>
"..", "..", "external", "perl");<br>
my $transfer = "transfer::$_";<br>
eval "use $transfer";<br>
shift @INC;<br>
warn $@ if $@;<br>
}<br>
}<br>
}<br>
[snip util/perl/with_fallback.pm]<br>
<br>
<a class="moz-txt-link-freetext" href="https://github.com/openssl/openssl/commit/8ff2af548303d311ce3591406111f77862875a60">https://github.com/openssl/openssl/commit/8ff2af548303d311ce3591406111f77862875a60</a><br>
[comments]<br>
Bundle the non core Perl module Text::Template<br>
<br>
Because we're using Text::Template and we know it's a non core Perl<br>
module, we choose to bundle it into our source, for convenience.<br>
<br>
external/perl/Downloaded.txt document what modules we choose to
bundle<br>
this way and exactly where we downloaded it from.<br>
<br>
With this changes comes the transfer module for with_fallback.<br>
<br>
Reviewed-by: Rich Salz <a class="moz-txt-link-rfc2396E" href="mailto:rsalz@openssl.org"><rsalz@openssl.org></a><br>
[comments]<br>
<br>
//Hongxu<br>
<br>
<blockquote type="cite"
cite="mid:d79efe64-c2a1-fb09-d174-7d27ab741442@windriver.com">
//Hongxu</blockquote>
<p><br>
</p>
</body>
</html>