Just fix the build issue. Look into how opensslconf.h gets created and where the -32 suffix comes from and why the included file is absent.

Seriously - that is less effort than trying to make Yocto do what it really was not designed for, and certainly takes less than one week to resolve.

Also, you do not have to use core-image-minimal or -sato, or any of the standard images, if they pull in things that you do not want. Write your own image recipe, and specify there precisely what you want.

Alex

2018-07-09 2:32 GMT+02:00 Raymond Yeung <rksyeung@hotmail.com>:


+ yocto mailing list.


From: Raymond Yeung <rksyeung@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@intel.com>
Sent: Sunday, July 8, 2018 1:06 AM

To: Raymond Yeung
Cc: yocto@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@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@intel.com>
Sent: Saturday, July 7, 2018 3:41 PM
To: Raymond Yeung
Cc: yocto@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@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@hotmail.com>
> Sent: Monday, July 2, 2018 11:05 PM
> To: yocto@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@yoctoproject.org
> https://lists.yoctoproject.org/listinfo/yocto
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.


>


--
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto