[yocto] How to remove openssl from sysroots

Raymond Yeung rksyeung at hotmail.com
Sun Jul 8 17:32:31 PDT 2018


+ yocto mailing list.

________________________________
From: Raymond Yeung <rksyeung at hotmail.com>
Sent: Sunday, July 8, 2018 5:31 PM
To: Burton, Ross
Subject: Re: [yocto] How to remove openssl from sysroots


We're not going to integrate everything into one homogeneous package.  Poky and BSP would be together.  Then, we've application codes that we'd build in the same old way with SCONs the way we do before.  The two parts would link together.


And we do have a number of 3rd party vendor packages beside openssl.  Currently, the issue with openssl is that, we run into build issue with the version we got in 2016 release.  See this:




In file included from /volume/tools/x86_64_linux.x86_64/2.1.3/sysroots/corei7-64-poky-linux/usr/include/openssl/evp.h:66:0,

                 from src/infra/utils/obf/cv_obfuscate.c:20:

/volume/tools/x86_64_linux.x86_64/2.1.3/sysroots/corei7-64-poky-linux/usr/include/openssl/opensslconf.h:41:36: fatal error: openssl/opensslconf-32.h: No such file or directory

We plan to use 64-bit kernel, and 32-bit applications.  Perhaps that explains the issue above.  We don't want to spend a lot of effort doing porting simply because we adopt Yocto.  So ideally, if we could remove what's in Yocto, we could integrate our apps with our own openssl; no changes, including upgrade, would be needed.  We'd upgrade when we're ready.

Another question from my team is why the "minimal" package includes connectivity, which includes openssl?

Raymond

________________________________
From: Burton, Ross <ross.burton at intel.com>
Sent: Sunday, July 8, 2018 1:06 AM
To: Raymond Yeung
Cc: yocto at yoctoproject.org
Subject: Re: [yocto] How to remove openssl from sysroots

I strongly recommend you just write a recipe that builds openssl as you wish, instead of building it out of the build system and somehow getting it into the images.  The problem is that how do you intend to build software against openssl if it can't link to the one in oe-core (as you don't want it) or your custom one (because it doesn't exist yet).

The workaround - which is horrible - would be to use a rootfs postprocess hook to forcibly remove the openssl packages from the rootfs, and then drop in your own files.

Ross

On 8 July 2018 at 07:14, Raymond Yeung <rksyeung at hotmail.com<mailto:rksyeung at hotmail.com>> wrote:

We have a shell script that builds openssl.  It uses the native makefiles from the open source project.  There's no  recipe.  I suppose we define a recipe for this out-of-tree sources.


Still, if we could yank out embedded openssl easily, that would be the best.


Raymond


________________________________
From: Burton, Ross <ross.burton at intel.com<mailto:ross.burton at intel.com>>
Sent: Saturday, July 7, 2018 3:41 PM
To: Raymond Yeung
Cc: yocto at yoctoproject.org<mailto:yocto at yoctoproject.org>
Subject: Re: [yocto] How to remove openssl from sysroots

Presumably you've a recipe for the vendor openssl.  If it has the same
name but is a different version then just set PREFERRED_VERSION.  If
it has a different name too, it should PROVIDE openssl and you can
just set PREFERRED_PROVIDER.

If it doesn't do either of those things, then it is broken.

Ross

On 6 July 2018 at 23:06, Raymond Yeung <rksyeung at hotmail.com<mailto:rksyeung at hotmail.com>> wrote:
> I've changed the subject heading to make it more specific to our problem.
> Hopefully this generates some responses.
>
>
> It has been blocking us for close to one week now.  We want to use our 3rd
> party vendor openssl, not the one that comes with the source.  Apparently,
> even with "minimal" instead of "base" or "sato" cannot exclude it.
>
>
> Any idea [e.g. how do we systematically find out how it's included now, and
> possibly what other packages/recipes we may also need to remove due to
> dependency]?
>
>
> Thanks,
>
> Raymond
>
>
>
> ________________________________
> From: Raymond Yeung <rksyeung at hotmail.com<mailto:rksyeung at hotmail.com>>
> Sent: Monday, July 2, 2018 11:05 PM
> To: yocto at yoctoproject.org<mailto:yocto at yoctoproject.org>
> Subject: How to remove a package from a build
>
>
> We've our own non-yocto openssl that we want to use.  At the moment, we're
> using "sato" image, rather than "minimal" and includes its openssl that is
> out-of-date.  What is the best way to exclude it from our image (and from
> sysroots)?
>
>
> We have thought about two ideas -
>
>
> Use smaller image like core-image-base, or core-image-full-cmdline (but not
> -minimal that may remove too much functionality).
> Use INSTALL_IMAGE_remove += " openssl"
>
>
> Would either one work?  Also, how do I follow the .bb files etc (e.g.
> starting from the one for sato) to trace down which sub-package includes
> openssl?
>
>
> Thanks,
>
> Raymond
>
>
> --
> _______________________________________________
> yocto mailing list
> yocto at yoctoproject.org<mailto:yocto at yoctoproject.org>
> https://lists.yoctoproject.org/listinfo/yocto
yocto Info Page<https://lists.yoctoproject.org/listinfo/yocto>
lists.yoctoproject.org<http://lists.yoctoproject.org>
Discussion of all things about the Yocto Project. Read our Community Guidelines or learn more about how to participate in other community discussions. Subscribe before posting to bypass moderation.



>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20180709/9c5d75b9/attachment.html>


More information about the yocto mailing list