summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHaris Okanovic <haris.okanovic@ni.com>2019-11-07 16:04:19 -0600
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-11-10 14:04:55 +0000
commit6686c64ad30481d4d67af6a7b9bec7e7ae1a83fe (patch)
treef7d871626b84fcc721ba80cae72f905b310d95c2
parentd10e8384bfa08d928dfec3a00c59006badfc88ee (diff)
downloadopenembedded-core-contrib-6686c64ad30481d4d67af6a7b9bec7e7ae1a83fe.tar.gz
gnupg: Split gpg and gpg-agent into a minimal gnupg-gpg package
Add minimal "gnupg-gpg" package containing just enough binaries to run gpg and gpg-agent. Add dependency in normal "gnupg" package to preserve old behavior. Some applications like opkg don't need all functionality provided by normal gnupg installations. This minimal package provides just enough functionality to verify and manage keys in opkg, in order to minimize disk overhead. Signed-off-by: Haris Okanovic <haris.okanovic@ni.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-support/gnupg/gnupg_2.2.17.bb15
1 files changed, 15 insertions, 0 deletions
diff --git a/meta/recipes-support/gnupg/gnupg_2.2.17.bb b/meta/recipes-support/gnupg/gnupg_2.2.17.bb
index 689cf8a75e..ab19a1ad11 100644
--- a/meta/recipes-support/gnupg/gnupg_2.2.17.bb
+++ b/meta/recipes-support/gnupg/gnupg_2.2.17.bb
@@ -29,6 +29,21 @@ EXTRA_OECONF = "--disable-ldap \
--with-readline=${STAGING_LIBDIR}/.. \
--enable-gpg-is-gpg2 \
"
+
+# A minimal package containing just enough to run gpg+gpgagent (E.g. use gpgme in opkg)
+PACKAGES =+ "${PN}-gpg"
+FILES_${PN}-gpg = " \
+ ${bindir}/gpg \
+ ${bindir}/gpg2 \
+ ${bindir}/gpg-agent \
+"
+
+# Normal package (gnupg) should depend on minimal package (gnupg-gpg)
+# to ensure all tools are included. This is done only in non-native
+# builds. Native builds don't have sub-packages, so appending RDEPENDS
+# in this case breaks recipe parsing.
+RDEPENDS_${PN} += "${@ "" if ("native" in d.getVar("PN")) else (d.getVar("PN") + "-gpg")}"
+
RRECOMMENDS_${PN} = "pinentry"
do_configure_prepend () {