Enable libgcrypt nativesdk, add PACKAGECONFIG and allow binconfig
cover Enable libgcrypt nativesdk, add PACKAGECONFIG and allow binconfig
This series enables nativesdk for libgcrypt and libgpg-error (one of its dependencies), enables binconfig to be used when configuring to build against libgcrypt and additionally adds a 'capabilities' PACKAGECONFIG option.
Nathan Rossi (4):
libgpg-error_1.25.bb: Enable nativesdk libgcrypt.inc: Enable nativesdk libgcrypt.inc: Add PACKAGECONFIG for 'capabilities' libgcrypt.inc: Enable use of binconfig
meta/recipes-support/libgcrypt/libgcrypt.inc | 11 +++++++---- meta/recipes-support/libgpg-error/libgpg-error_1.25.bb | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-)
Signature · 1 line
2.11.0
PATCH 1/4 libgpg-error_1.25.bb: Enable nativesdk
Enable nativesdk on this recipe.
--- meta/recipes-support/libgpg-error/libgpg-error_1.25.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-support/libgpg-error/libgpg-error_1.25.bb +1 -1
@@ -51,4 +51,4 @@ do_install_append() { FILES_${PN}-dev += "${bindir}/gpg-error" -BBCLASSEXTEND = "native" +BBCLASSEXTEND = "native nativesdk"
Signature · 1 line
2.11.0
PATCH 2/4 libgcrypt.inc: Enable nativesdk
In reply to Nathan RossiEnable nativesdk on this recipe.
--- meta/recipes-support/libgcrypt/libgcrypt.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-support/libgcrypt/libgcrypt.inc +1 -1
@@ -46,4 +46,4 @@ FILES_dumpsexp-dev += "${bindir}/dumpsexp" ARM_INSTRUCTION_SET = "arm" -BBCLASSEXTEND = "native" +BBCLASSEXTEND = "native nativesdk"
Signature · 1 line
2.11.0
PATCH 3/4 libgcrypt.inc: Add PACKAGECONFIG for 'capabilities'
In reply to Nathan RossiAdd PACKAGECONFIG options for 'capabilities' which enables the libcap dependency.
--- meta/recipes-support/libgcrypt/libgcrypt.inc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)
meta/recipes-support/libgcrypt/libgcrypt.inc +5 -2
@@ -12,7 +12,7 @@ LICENSE_dumpsexp-dev = "GPLv3+" LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ file://COPYING.LIB;md5=bbb461211a33b134d42ed5ee802b37ff" -DEPENDS = "libgpg-error libcap" +DEPENDS = "libgpg-error" UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html" SRC_URI = "${GNUPG_MIRROR}/libgcrypt/libgcrypt-${PV}.tar.gz \
@@ -26,7 +26,10 @@ BINCONFIG = "${bindir}/libgcrypt-config" inherit autotools texinfo binconfig-disabled pkgconfig -EXTRA_OECONF = "--disable-asm --with-capabilities" +EXTRA_OECONF = "--disable-asm" + +PACKAGECONFIG ??= "capabilities" +PACKAGECONFIG[capabilities] = "--with-capabilities,--without-capabilities,libcap" do_configure_prepend () { # Else this could be used in preference to the one in aclocal-copy
Signature · 1 line
2.11.0
PATCH 4/4 libgcrypt.inc: Enable use of binconfig
In reply to Nathan RossiDue to pkg-config support for libgcrypt being un-available for upstream libgcrypt, some packages that depend on libgcrypt rely on the use of libgcrypt-config (e.g. QEMU).
--- meta/recipes-support/libgcrypt/libgcrypt.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-support/libgcrypt/libgcrypt.inc +1 -1
@@ -24,7 +24,7 @@ SRC_URI = "${GNUPG_MIRROR}/libgcrypt/libgcrypt-${PV}.tar.gz \ BINCONFIG = "${bindir}/libgcrypt-config" -inherit autotools texinfo binconfig-disabled pkgconfig +inherit autotools texinfo binconfig pkgconfig EXTRA_OECONF = "--disable-asm"
Signature · 1 line
2.11.0
Re: [PATCH 4/4] libgcrypt.inc: Enable use of binconfig
Quoted 4 lines · Nathan Rossi
Due to pkg-config support for libgcrypt being un-available for upstream libgcrypt, some packages that depend on libgcrypt rely on the use of libgcrypt-config (e.g. QEMU).
We disable those scripts for a good reason: they're generally either broken
entirely in a cross-environment, or fail badly if sstate is used. A
better solution really is to just patch qemu's configure (yes, I know this sucks).
Ross
Re: [PATCH 4/4] libgcrypt.inc: Enable use of binconfig
Quoted 8 lines · Ross
Quoted 4 lines · Nathan Rossi
Due to pkg-config support for libgcrypt being un-available for upstream libgcrypt, some packages that depend on libgcrypt rely on the use of libgcrypt-config (e.g. QEMU).
Quoted 5 lines
We disable those scripts for a good reason: they're generally either broken
entirely in a cross-environment, or fail badly if sstate is used. A
better solution really is to just patch qemu's configure (yes, I know this sucks).
Agreed, at first that was the approach I went for, even went so far as to sending a patch upstream for QEMU (before realizing that libgcrypt upstream doesn't have pkgconfig). But upstream QEMU are not to interested in having such change.
https://patchwork.ozlabs.org/patch/711018/
However since this is not really required for the QEMU in oe-core, this patch can be dropped from the series and I will sort this out by patching the configure in the QEMU recipe that needs this.
Should I send a v2 of this series which removes this patch?
Regards,
Nathan