[PATCH V3 1/2] multilib_header_wrapper.h: Use #pragma once #pragma


Khem Raj
 

Avoid infinite include loops, especially with bits/wordsize.h which is
now possible with the synthesized headers since we now also synthesize
bits/wordsize.h itelf for some arches e.g. arm/aarch64

In cases where extra preprocessing tools are used such as clang-tidy
e.g. and these tools are not passed the knowledge about architecture
then case comes where we enter into header include loop for
bits/wordsize.h, since this template does explicitly include
bits/wordsize.h

To fix this emits the pragma once at beginning of file, this is better
solution than include guards, and pragma once is practically supported
on all compilers except few e.g. cray c/c++ compiler

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
V2:
- No Changes, just rebased
V3:
- Do it using pragma once instead

scripts/multilib_header_wrapper.h | 1 +
1 file changed, 1 insertion(+)

diff --git a/scripts/multilib_header_wrapper.h b/scripts/multilib_header_wrapper.h
index 9660225fdd..4824790783 100644
--- a/scripts/multilib_header_wrapper.h
+++ b/scripts/multilib_header_wrapper.h
@@ -21,6 +21,7 @@
*
*/

+#pragma once

#if defined (__bpf__)
#define __MHWORDSIZE 64
--
2.20.1


Alex Kiernan
 

On Tue, Feb 5, 2019 at 12:36 AM Khem Raj <raj.khem@gmail.com> wrote:

Avoid infinite include loops, especially with bits/wordsize.h which is
now possible with the synthesized headers since we now also synthesize
bits/wordsize.h itelf for some arches e.g. arm/aarch64

In cases where extra preprocessing tools are used such as clang-tidy
e.g. and these tools are not passed the knowledge about architecture
then case comes where we enter into header include loop for
bits/wordsize.h, since this template does explicitly include
bits/wordsize.h

To fix this emits the pragma once at beginning of file, this is better
solution than include guards, and pragma once is practically supported
on all compilers except few e.g. cray c/c++ compiler

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Something about this is breaking a local recipe (for tlsdate fwiw, but
I don't think that's relevant):

| checking openssl/ssl.h usability... no
| checking openssl/ssl.h presence... yes
| configure: WARNING: openssl/ssl.h: present but cannot be compiled
| configure: WARNING: openssl/ssl.h: check for missing prerequisite headers?
| configure: WARNING: openssl/ssl.h: see the Autoconf documentation
| configure: WARNING: openssl/ssl.h: section "Present But Cannot
Be Compiled"
| configure: WARNING: openssl/ssl.h: proceeding with the compiler's result
| configure: WARNING: ## ------------------------------------- ##
| configure: WARNING: ## Report this to jacob at appelbaum.net ##
| configure: WARNING: ## ------------------------------------- ##
| checking for openssl/ssl.h... no
| configure: error: OpenSSL is not installed, openssl/sslh is missing

Somehow it's not getting the definition for THIRTY_TWO_BIT from
openssl/opensslconf.h (from openssl10) when testing for openssl/ssl.h
so BN_ULONG ends up undefined... still digging as to what's going on.

--
Alex Kiernan


Khem Raj
 

On Wed, Feb 6, 2019 at 12:41 PM Alex Kiernan <alex.kiernan@gmail.com> wrote:

On Tue, Feb 5, 2019 at 12:36 AM Khem Raj <raj.khem@gmail.com> wrote:

Avoid infinite include loops, especially with bits/wordsize.h which is
now possible with the synthesized headers since we now also synthesize
bits/wordsize.h itelf for some arches e.g. arm/aarch64

In cases where extra preprocessing tools are used such as clang-tidy
e.g. and these tools are not passed the knowledge about architecture
then case comes where we enter into header include loop for
bits/wordsize.h, since this template does explicitly include
bits/wordsize.h

To fix this emits the pragma once at beginning of file, this is better
solution than include guards, and pragma once is practically supported
on all compilers except few e.g. cray c/c++ compiler

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Something about this is breaking a local recipe (for tlsdate fwiw, but
I don't think that's relevant):

| checking openssl/ssl.h usability... no
| checking openssl/ssl.h presence... yes
| configure: WARNING: openssl/ssl.h: present but cannot be compiled
| configure: WARNING: openssl/ssl.h: check for missing prerequisite headers?
| configure: WARNING: openssl/ssl.h: see the Autoconf documentation
| configure: WARNING: openssl/ssl.h: section "Present But Cannot
Be Compiled"
| configure: WARNING: openssl/ssl.h: proceeding with the compiler's result
| configure: WARNING: ## ------------------------------------- ##
| configure: WARNING: ## Report this to jacob at appelbaum.net ##
| configure: WARNING: ## ------------------------------------- ##
| checking for openssl/ssl.h... no
| configure: error: OpenSSL is not installed, openssl/sslh is missing

Somehow it's not getting the definition for THIRTY_TWO_BIT from
openssl/opensslconf.h (from openssl10) when testing for openssl/ssl.h
so BN_ULONG ends up undefined... still digging as to what's going on.
thanks, is it using openssl10 ?

--
Alex Kiernan


Alex Kiernan
 

On Wed, Feb 6, 2019 at 8:50 PM Khem Raj <raj.khem@gmail.com> wrote:

On Wed, Feb 6, 2019 at 12:41 PM Alex Kiernan <alex.kiernan@gmail.com> wrote:

On Tue, Feb 5, 2019 at 12:36 AM Khem Raj <raj.khem@gmail.com> wrote:

Avoid infinite include loops, especially with bits/wordsize.h which is
now possible with the synthesized headers since we now also synthesize
bits/wordsize.h itelf for some arches e.g. arm/aarch64

In cases where extra preprocessing tools are used such as clang-tidy
e.g. and these tools are not passed the knowledge about architecture
then case comes where we enter into header include loop for
bits/wordsize.h, since this template does explicitly include
bits/wordsize.h

To fix this emits the pragma once at beginning of file, this is better
solution than include guards, and pragma once is practically supported
on all compilers except few e.g. cray c/c++ compiler

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Something about this is breaking a local recipe (for tlsdate fwiw, but
I don't think that's relevant):

| checking openssl/ssl.h usability... no
| checking openssl/ssl.h presence... yes
| configure: WARNING: openssl/ssl.h: present but cannot be compiled
| configure: WARNING: openssl/ssl.h: check for missing prerequisite headers?
| configure: WARNING: openssl/ssl.h: see the Autoconf documentation
| configure: WARNING: openssl/ssl.h: section "Present But Cannot
Be Compiled"
| configure: WARNING: openssl/ssl.h: proceeding with the compiler's result
| configure: WARNING: ## ------------------------------------- ##
| configure: WARNING: ## Report this to jacob at appelbaum.net ##
| configure: WARNING: ## ------------------------------------- ##
| checking for openssl/ssl.h... no
| configure: error: OpenSSL is not installed, openssl/sslh is missing

Somehow it's not getting the definition for THIRTY_TWO_BIT from
openssl/opensslconf.h (from openssl10) when testing for openssl/ssl.h
so BN_ULONG ends up undefined... still digging as to what's going on.
thanks, is it using openssl10 ?
It is... I'm sure that's relevant, but I'm failing to spot it.

--
Alex Kiernan


Khem Raj
 

On Wed, Feb 6, 2019 at 12:58 PM Alex Kiernan <alex.kiernan@gmail.com> wrote:

On Wed, Feb 6, 2019 at 8:50 PM Khem Raj <raj.khem@gmail.com> wrote:

On Wed, Feb 6, 2019 at 12:41 PM Alex Kiernan <alex.kiernan@gmail.com> wrote:

On Tue, Feb 5, 2019 at 12:36 AM Khem Raj <raj.khem@gmail.com> wrote:

Avoid infinite include loops, especially with bits/wordsize.h which is
now possible with the synthesized headers since we now also synthesize
bits/wordsize.h itelf for some arches e.g. arm/aarch64

In cases where extra preprocessing tools are used such as clang-tidy
e.g. and these tools are not passed the knowledge about architecture
then case comes where we enter into header include loop for
bits/wordsize.h, since this template does explicitly include
bits/wordsize.h

To fix this emits the pragma once at beginning of file, this is better
solution than include guards, and pragma once is practically supported
on all compilers except few e.g. cray c/c++ compiler

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Something about this is breaking a local recipe (for tlsdate fwiw, but
I don't think that's relevant):

| checking openssl/ssl.h usability... no
| checking openssl/ssl.h presence... yes
| configure: WARNING: openssl/ssl.h: present but cannot be compiled
| configure: WARNING: openssl/ssl.h: check for missing prerequisite headers?
| configure: WARNING: openssl/ssl.h: see the Autoconf documentation
| configure: WARNING: openssl/ssl.h: section "Present But Cannot
Be Compiled"
| configure: WARNING: openssl/ssl.h: proceeding with the compiler's result
| configure: WARNING: ## ------------------------------------- ##
| configure: WARNING: ## Report this to jacob at appelbaum.net ##
| configure: WARNING: ## ------------------------------------- ##
| checking for openssl/ssl.h... no
| configure: error: OpenSSL is not installed, openssl/sslh is missing

Somehow it's not getting the definition for THIRTY_TWO_BIT from
openssl/opensslconf.h (from openssl10) when testing for openssl/ssl.h
so BN_ULONG ends up undefined... still digging as to what's going on.
thanks, is it using openssl10 ?
It is... I'm sure that's relevant, but I'm failing to spot it.
so where all do you have opensslconf.h in target sysroot ?

--
Alex Kiernan


Alex Kiernan
 

On Wed, Feb 6, 2019 at 9:23 PM Khem Raj <raj.khem@gmail.com> wrote:

On Wed, Feb 6, 2019 at 12:58 PM Alex Kiernan <alex.kiernan@gmail.com> wrote:

On Wed, Feb 6, 2019 at 8:50 PM Khem Raj <raj.khem@gmail.com> wrote:

On Wed, Feb 6, 2019 at 12:41 PM Alex Kiernan <alex.kiernan@gmail.com> wrote:

On Tue, Feb 5, 2019 at 12:36 AM Khem Raj <raj.khem@gmail.com> wrote:

Avoid infinite include loops, especially with bits/wordsize.h which is
now possible with the synthesized headers since we now also synthesize
bits/wordsize.h itelf for some arches e.g. arm/aarch64

In cases where extra preprocessing tools are used such as clang-tidy
e.g. and these tools are not passed the knowledge about architecture
then case comes where we enter into header include loop for
bits/wordsize.h, since this template does explicitly include
bits/wordsize.h

To fix this emits the pragma once at beginning of file, this is better
solution than include guards, and pragma once is practically supported
on all compilers except few e.g. cray c/c++ compiler

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Something about this is breaking a local recipe (for tlsdate fwiw, but
I don't think that's relevant):

| checking openssl/ssl.h usability... no
| checking openssl/ssl.h presence... yes
| configure: WARNING: openssl/ssl.h: present but cannot be compiled
| configure: WARNING: openssl/ssl.h: check for missing prerequisite headers?
| configure: WARNING: openssl/ssl.h: see the Autoconf documentation
| configure: WARNING: openssl/ssl.h: section "Present But Cannot
Be Compiled"
| configure: WARNING: openssl/ssl.h: proceeding with the compiler's result
| configure: WARNING: ## ------------------------------------- ##
| configure: WARNING: ## Report this to jacob at appelbaum.net ##
| configure: WARNING: ## ------------------------------------- ##
| checking for openssl/ssl.h... no
| configure: error: OpenSSL is not installed, openssl/sslh is missing

Somehow it's not getting the definition for THIRTY_TWO_BIT from
openssl/opensslconf.h (from openssl10) when testing for openssl/ssl.h
so BN_ULONG ends up undefined... still digging as to what's going on.
thanks, is it using openssl10 ?
It is... I'm sure that's relevant, but I'm failing to spot it.
so where all do you have opensslconf.h in target sysroot ?
$ find tmp -name opensslconf.h -ls
1589118 8 -rw-r--r-- 3 vagrant vagrant 4534 Feb 6
11:40 tmp/work/x86_64-linux/qemu-helper-native/1.0-r1/recipe-sysroot-native/usr/include/openssl/opensslconf.h
1451388 4 -rw-r--r-- 4 vagrant vagrant 1971 Feb 6
21:31 tmp/work/armv7at2hf-neon-poky-linux-gnueabi/tlsdate/0.0.13+gitAUTOINC+751f82dc6f-r0/recipe-sysroot/usr/include/openssl/opensslconf.h
1589118 8 -rw-r--r-- 3 vagrant vagrant 4534 Feb 6
11:40 tmp/work/armv7at2hf-neon-poky-linux-gnueabi/openssl10/1.0.2q-r0/recipe-sysroot-native/usr/include/openssl/opensslconf.h
1451388 4 -rw-r--r-- 4 vagrant vagrant 1971 Feb 6
21:31 tmp/work/armv7at2hf-neon-poky-linux-gnueabi/openssl10/1.0.2q-r0/sysroot-destdir/usr/include/openssl/opensslconf.h
1574753 8 -rw-r--r-- 1 vagrant vagrant 7423 Feb 6
21:30 tmp/work/armv7at2hf-neon-poky-linux-gnueabi/openssl10/1.0.2q-r0/openssl-1.0.2q/crypto/opensslconf.h
1717763 4 -rw-r--r-- 1 vagrant vagrant 3201 Nov 20
13:44 tmp/work/armv7at2hf-neon-poky-linux-gnueabi/openssl10/1.0.2q-r0/openssl-1.0.2q/MacOS/opensslconf.h
1574836 0 lrwxrwxrwx 1 vagrant vagrant 26 Feb 6
21:30 tmp/work/armv7at2hf-neon-poky-linux-gnueabi/openssl10/1.0.2q-r0/openssl-1.0.2q/include/openssl/opensslconf.h
-> ../../crypto/opensslconf.h
1451388 4 -rw-r--r-- 4 vagrant vagrant 1971 Feb 6
21:31 tmp/work/armv7at2hf-neon-poky-linux-gnueabi/openssl10/1.0.2q-r0/image/usr/include/openssl/opensslconf.h
1589118 8 -rw-r--r-- 3 vagrant vagrant 4534 Feb 6
11:40 tmp/sysroots-components/x86_64/openssl-native/usr/include/openssl/opensslconf.h
1849804 4 -rw-r--r-- 1 vagrant vagrant 1971 Feb 6
13:28 tmp/sysroots-components/armv7at2hf-neon/openssl/usr/include/openssl/opensslconf.h
1451388 4 -rw-r--r-- 4 vagrant vagrant 1971 Feb 6
21:31 tmp/sysroots-components/armv7at2hf-neon/openssl10/usr/include/openssl/opensslconf.h

--
Alex Kiernan


Andre McCurdy
 

On Wed, Feb 6, 2019 at 1:49 PM Alex Kiernan <alex.kiernan@gmail.com> wrote:

On Wed, Feb 6, 2019 at 9:23 PM Khem Raj <raj.khem@gmail.com> wrote:

On Wed, Feb 6, 2019 at 12:58 PM Alex Kiernan <alex.kiernan@gmail.com> wrote:

On Wed, Feb 6, 2019 at 8:50 PM Khem Raj <raj.khem@gmail.com> wrote:

On Wed, Feb 6, 2019 at 12:41 PM Alex Kiernan <alex.kiernan@gmail.com> wrote:

On Tue, Feb 5, 2019 at 12:36 AM Khem Raj <raj.khem@gmail.com> wrote:

Avoid infinite include loops, especially with bits/wordsize.h which is
now possible with the synthesized headers since we now also synthesize
bits/wordsize.h itelf for some arches e.g. arm/aarch64

In cases where extra preprocessing tools are used such as clang-tidy
e.g. and these tools are not passed the knowledge about architecture
then case comes where we enter into header include loop for
bits/wordsize.h, since this template does explicitly include
bits/wordsize.h

To fix this emits the pragma once at beginning of file, this is better
solution than include guards, and pragma once is practically supported
on all compilers except few e.g. cray c/c++ compiler

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Something about this is breaking a local recipe (for tlsdate fwiw, but
I don't think that's relevant):

| checking openssl/ssl.h usability... no
| checking openssl/ssl.h presence... yes
| configure: WARNING: openssl/ssl.h: present but cannot be compiled
| configure: WARNING: openssl/ssl.h: check for missing prerequisite headers?
| configure: WARNING: openssl/ssl.h: see the Autoconf documentation
| configure: WARNING: openssl/ssl.h: section "Present But Cannot
Be Compiled"
| configure: WARNING: openssl/ssl.h: proceeding with the compiler's result
| configure: WARNING: ## ------------------------------------- ##
| configure: WARNING: ## Report this to jacob at appelbaum.net ##
| configure: WARNING: ## ------------------------------------- ##
| checking for openssl/ssl.h... no
| configure: error: OpenSSL is not installed, openssl/sslh is missing

Somehow it's not getting the definition for THIRTY_TWO_BIT from
openssl/opensslconf.h (from openssl10) when testing for openssl/ssl.h
so BN_ULONG ends up undefined... still digging as to what's going on.
thanks, is it using openssl10 ?
I'm also seeing build issues with openssl10 which seem to be related
to this change:

| i586-oe-linux-gcc -m32 -march=i586
--sysroot=/.../tmp-glibc/work/i586-oe-linux/mosquitto/1.4.8-r0/recipe-sysroot
-O2 -pipe -g -feliminate-unused-debug-types
-fdebug-prefix-map=/.../tmp-glibc/work/i586-oe-linux/mosquitto/1.4.8-r0=/usr/src/debug/mosquitto/1.4.8-r0
-fdebug-prefix-map=/.../tmp-glibc/work/i586-oe-linux/mosquitto/1.4.8-r0/recipe-sysroot=
-fdebug-prefix-map=/.../tmp-glibc/work/i586-oe-linux/mosquitto/1.4.8-r0/recipe-sysroot-native=
-I. -I.. -I../lib -fPIC -DWITH_TLS -DWITH_TLS_PSK -DWITH_THREADING
-DWITH_SOCKS -c read_handle_shared.c -o read_handle_shared.o
| In file included from
/.../tmp-glibc/work/i586-oe-linux/mosquitto/1.4.8-r0/recipe-sysroot/usr/include/openssl/engine.h:75,
| from net_mosq.c:55:
| /.../tmp-glibc/work/i586-oe-linux/mosquitto/1.4.8-r0/recipe-sysroot/usr/include/openssl/bn.h:321:5:
error: unknown type name 'BN_ULONG'
| BN_ULONG *d; /* Pointer to an array of 'BN_BITS2' bit
| ^~~~~~~~
| /.../tmp-glibc/work/i586-oe-linux/mosquitto/1.4.8-r0/recipe-sysroot/usr/include/openssl/bn.h:337:5:
error: unknown type name 'BN_ULONG'
| BN_ULONG n0[2]; /* least significant word(s) of Ni; (type
| ^~~~~~~~


Khem Raj
 

Please try the patch I posted for openssl10 and report back
https://patchwork.openembedded.org/patch/158573/

On Wed, Feb 6, 2019 at 1:49 PM Alex Kiernan <alex.kiernan@gmail.com> wrote:

On Wed, Feb 6, 2019 at 9:23 PM Khem Raj <raj.khem@gmail.com> wrote:

On Wed, Feb 6, 2019 at 12:58 PM Alex Kiernan <alex.kiernan@gmail.com> wrote:

On Wed, Feb 6, 2019 at 8:50 PM Khem Raj <raj.khem@gmail.com> wrote:

On Wed, Feb 6, 2019 at 12:41 PM Alex Kiernan <alex.kiernan@gmail.com> wrote:

On Tue, Feb 5, 2019 at 12:36 AM Khem Raj <raj.khem@gmail.com> wrote:

Avoid infinite include loops, especially with bits/wordsize.h which is
now possible with the synthesized headers since we now also synthesize
bits/wordsize.h itelf for some arches e.g. arm/aarch64

In cases where extra preprocessing tools are used such as clang-tidy
e.g. and these tools are not passed the knowledge about architecture
then case comes where we enter into header include loop for
bits/wordsize.h, since this template does explicitly include
bits/wordsize.h

To fix this emits the pragma once at beginning of file, this is better
solution than include guards, and pragma once is practically supported
on all compilers except few e.g. cray c/c++ compiler

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Something about this is breaking a local recipe (for tlsdate fwiw, but
I don't think that's relevant):

| checking openssl/ssl.h usability... no
| checking openssl/ssl.h presence... yes
| configure: WARNING: openssl/ssl.h: present but cannot be compiled
| configure: WARNING: openssl/ssl.h: check for missing prerequisite headers?
| configure: WARNING: openssl/ssl.h: see the Autoconf documentation
| configure: WARNING: openssl/ssl.h: section "Present But Cannot
Be Compiled"
| configure: WARNING: openssl/ssl.h: proceeding with the compiler's result
| configure: WARNING: ## ------------------------------------- ##
| configure: WARNING: ## Report this to jacob at appelbaum.net ##
| configure: WARNING: ## ------------------------------------- ##
| checking for openssl/ssl.h... no
| configure: error: OpenSSL is not installed, openssl/sslh is missing

Somehow it's not getting the definition for THIRTY_TWO_BIT from
openssl/opensslconf.h (from openssl10) when testing for openssl/ssl.h
so BN_ULONG ends up undefined... still digging as to what's going on.
thanks, is it using openssl10 ?
It is... I'm sure that's relevant, but I'm failing to spot it.
so where all do you have opensslconf.h in target sysroot ?
$ find tmp -name opensslconf.h -ls
1589118 8 -rw-r--r-- 3 vagrant vagrant 4534 Feb 6
11:40 tmp/work/x86_64-linux/qemu-helper-native/1.0-r1/recipe-sysroot-native/usr/include/openssl/opensslconf.h
1451388 4 -rw-r--r-- 4 vagrant vagrant 1971 Feb 6
21:31 tmp/work/armv7at2hf-neon-poky-linux-gnueabi/tlsdate/0.0.13+gitAUTOINC+751f82dc6f-r0/recipe-sysroot/usr/include/openssl/opensslconf.h
1589118 8 -rw-r--r-- 3 vagrant vagrant 4534 Feb 6
11:40 tmp/work/armv7at2hf-neon-poky-linux-gnueabi/openssl10/1.0.2q-r0/recipe-sysroot-native/usr/include/openssl/opensslconf.h
1451388 4 -rw-r--r-- 4 vagrant vagrant 1971 Feb 6
21:31 tmp/work/armv7at2hf-neon-poky-linux-gnueabi/openssl10/1.0.2q-r0/sysroot-destdir/usr/include/openssl/opensslconf.h
1574753 8 -rw-r--r-- 1 vagrant vagrant 7423 Feb 6
21:30 tmp/work/armv7at2hf-neon-poky-linux-gnueabi/openssl10/1.0.2q-r0/openssl-1.0.2q/crypto/opensslconf.h
1717763 4 -rw-r--r-- 1 vagrant vagrant 3201 Nov 20
13:44 tmp/work/armv7at2hf-neon-poky-linux-gnueabi/openssl10/1.0.2q-r0/openssl-1.0.2q/MacOS/opensslconf.h
1574836 0 lrwxrwxrwx 1 vagrant vagrant 26 Feb 6
21:30 tmp/work/armv7at2hf-neon-poky-linux-gnueabi/openssl10/1.0.2q-r0/openssl-1.0.2q/include/openssl/opensslconf.h
-> ../../crypto/opensslconf.h
1451388 4 -rw-r--r-- 4 vagrant vagrant 1971 Feb 6
21:31 tmp/work/armv7at2hf-neon-poky-linux-gnueabi/openssl10/1.0.2q-r0/image/usr/include/openssl/opensslconf.h
1589118 8 -rw-r--r-- 3 vagrant vagrant 4534 Feb 6
11:40 tmp/sysroots-components/x86_64/openssl-native/usr/include/openssl/opensslconf.h
1849804 4 -rw-r--r-- 1 vagrant vagrant 1971 Feb 6
13:28 tmp/sysroots-components/armv7at2hf-neon/openssl/usr/include/openssl/opensslconf.h
1451388 4 -rw-r--r-- 4 vagrant vagrant 1971 Feb 6
21:31 tmp/sysroots-components/armv7at2hf-neon/openssl10/usr/include/openssl/opensslconf.h

--
Alex Kiernan


Alex Kiernan
 

On Thu, Feb 7, 2019 at 6:27 AM Khem Raj <raj.khem@gmail.com> wrote:

Please try the patch I posted for openssl10 and report back
https://patchwork.openembedded.org/patch/158573/
LGTM.

--
Alex Kiernan