[OE-core] [PATCH] libevent: enable OpenSSL unconditionally and update packaging

André Draszik git at andred.net
Thu Nov 7 09:40:33 UTC 2019


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