[OE-core] [PATCH] libevent: enable OpenSSL unconditionally and update packaging
André Draszik
git at andred.net
Thu Nov 7 14:01:24 UTC 2019
On Thu, 2019-11-07 at 13:26 +0100, Alexander Kanavin wrote:
> I would rather keep the option to disable openssl, but simply switch it on by default
Why complicate things, what's the use-case? If libevent_openssl.so is not
used by anything, that library will not be pulled in, as it is a
separate package now.
Cheers,
A.
> .
>
> Alex
>
> On Thu, 7 Nov 2019 at 13:11, André Draszik <git at andred.net> wrote:
> > The original commit describes the reason for disabling openssl
> > so as to get 'more deterministic build[s]' and size-reduction:
> > commit 6c36fde6ce2e ("libevent: disable openssl by default"),
> > commit ad130b97a51a in poky.
> >
> > Since the introduction of per-recipe sysroots, we always have
> > deterministic builds.
> >
> > Size reduction can be achieved by splitting the package into
> > multiple sub-packages, which each only provide one of the
> > shared libraries.
> >
> > Hence there appears no reason anymore to disable OpenSSL
> > support.
> >
> > Because this recipe only provides shared libraries which are
> > handled automatically by bitbake, there is no need to add
> > the subpackages to the RDEPENDS of PN for backwards
> > compatibility. The packageing process of dependees will
> > simply pull in the sub-packages as runtime dependency as
> > needed.
> >
> > This also how Debian splits this up.
> >
> > While updating the packaging, we can also drop event_rpcgen.py
> > which appears to be a tool for generating rpc bindings, i.e.
> > something that should normally be in -dev. Given Debian
> > doesn't package this at all, and given it actually requires
> > python to run but no runtime dependency is stated at the
> > moment, it would appear that no users of this exist.
> >
> > These changes also allow us to build all of nghttp2
> > out-of-the-box, without affecting existing users.
> >
> > Signed-off-by: André Draszik <git at andred.net>
> > ---
> > meta/recipes-support/libevent/libevent_2.1.11.bb | 13 +++++++++----
> > 1 file changed, 9 insertions(+), 4 deletions(-)
> >
> > diff --git a/meta/recipes-support/libevent/libevent_2.1.11.bb b/meta/recipes-support/libevent/libevent_2.1.11.bb
> > index f005ab8bda..c746f22118 100644
> > --- a/meta/recipes-support/libevent/libevent_2.1.11.bb
> > +++ b/meta/recipes-support/libevent/libevent_2.1.11.bb
> > @@ -19,9 +19,6 @@ UPSTREAM_CHECK_URI = "http://libevent.org/"
> >
> > S = "${WORKDIR}/${BPN}-${PV}-stable"
> >
> > -PACKAGECONFIG ??= ""
> > -PACKAGECONFIG[openssl] = "--enable-openssl,--disable-openssl,openssl"
> > -
> > inherit autotools
> >
> > # Needed for Debian packaging
> > @@ -29,11 +26,19 @@ LEAD_SONAME = "libevent-2.1.so"
> >
> > inherit ptest multilib_header
> >
> > -DEPENDS = "zlib"
> > +DEPENDS = "openssl zlib"
> > +
> > +PACKAGES =+ "${PN}-core ${PN}-extra ${PN}-openssl ${PN}-pthreads"
> > +FILES_${PN}-core = "${libdir}/libevent_core*${SOLIBS}"
> > +FILES_${PN}-extra = "${libdir}/libevent_extra*${SOLIBS}"
> > +FILES_${PN}-openssl = "${libdir}/libevent_openssl*${SOLIBS}"
> > +FILES_${PN}-pthreads = "${libdir}/libevent_pthreads-*${SOLIBS}"
> >
> > BBCLASSEXTEND = "native nativesdk"
> >
> > do_install_append() {
> > + rm ${D}${bindir}/event_rpcgen.py
> > + rmdir ${D}${bindir}
> > oe_multilib_header event2/event-config.h
> > }
> >
> > --
> > 2.23.0.rc1
> >
More information about the Openembedded-core
mailing list