Skip to contentSkip to conversation

gpgme: correctly avoid host contamination

PATCH New Alexander Kanavin 1 participant 2 messages Apr 13, 2017

lore
Share & tools
lore
#0 lore raw

PATCH 1/2 gpgme: correctly avoid host contamination

Existing patch was actually doing the wrong thing and sometimes removing a linking flag (-lgpgme) that should be present.

Instead, gpgme-config actually has internal logic to remove /usr/lib from the output, which works only in non-multilib setups, so it is adjusted to include all possible /usr/lib* and /lib* directories.

---
 ...-Avoid-host-contamination-from-gpg-config.patch | 30 ---------------------
 ...g-skip-all-lib-or-usr-lib-directories-in-.patch | 31 ++++++++++++++++++++++
 meta/recipes-support/gpgme/gpgme_1.8.0.bb          |  2 +-
 3 files changed, 32 insertions(+), 31 deletions(-)
 delete mode 100644 meta/recipes-support/gpgme/gpgme/0001-Avoid-host-contamination-from-gpg-config.patch
 create mode 100644 meta/recipes-support/gpgme/gpgme/0001-gpgme-config-skip-all-lib-or-usr-lib-directories-in-.patch
meta/recipes-support/gpgme/gpgme/0001-Avoid-host-contamination-from-gpg-config.patch deleted +0 -30
deleted file mode 100644
index 6ce58ba3f65..00000000000
@@ -1,30 +0,0 @@
-From 96cfc76def123141d0cecaab857da3880396d5ef Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <[email protected]>
-Date: Thu, 9 Mar 2017 22:11:00 +0200
-Subject: [PATCH] Avoid host contamination from gpg-config
-
-getconfig is calling gpgme-config (from the source tree) and it
-gives -L{libdir} (i.e. -L/usr/lib) as the first item for linking.
-
-Upstream-Status: Inappropriate [oe-core specific]
-Signed-off-by: Alexander Kanavin <[email protected]>
----
- lang/python/setup.py.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in
-index 213fe33..22629e2 100755
---- a/lang/python/setup.py.in
-+++ b/lang/python/setup.py.in
-@@ -86,7 +86,7 @@ subprocess.check_call([sys.executable, "gpgme-h-clean.py", gpg_error_h],
-                       stdout=open("errors.i", "w"))
- 
- define_macros = []
--libs = getconfig('libs')
-+libs = getconfig('libs')[1:]
- 
- # Define extra_macros for both the SWIG and C code
- for k, v in extra_macros.items():
--- 
-2.11.0
-
meta/recipes-support/gpgme/gpgme/0001-gpgme-config-skip-all-lib-or-usr-lib-directories-in-.patch new file +31 -0
new file mode 100644
index 00000000000..84d55b96859
@@ -0,0 +1,31 @@
+From 8c317f6186bd3a9a1c80b4d1e872b3db95934bb6 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <[email protected]>
+Date: Thu, 13 Apr 2017 16:40:27 +0300
+Subject: [PATCH] gpgme-config: skip all /lib* or /usr/lib* directories in
+ output
+
+The logic was not working in multilib setups which use other
+directory names than plain /lib or /usr/lib.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <[email protected]>
+---
+ src/gpgme-config.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/gpgme-config.in b/src/gpgme-config.in
+index a4d152e..8342865 100644
+--- a/src/gpgme-config.in
++++ b/src/gpgme-config.in
+@@ -154,7 +154,7 @@ while test $# -gt 0; do
+             for i in $libs $tmp_l $assuan_libs $gpg_error_libs $tmp_x; do
+               skip=no
+               case $i in
+-                  -L/usr/lib|-L/lib)
++                  -L/usr/lib*|-L/lib*)
+                       skip=yes
+                       ;;
+                   -L*|-l*)
+-- 
+2.11.0
+
meta/recipes-support/gpgme/gpgme_1.8.0.bb +1 -1
index eddf3a0399e..cb9143aded8 100644
@@ -14,8 +14,8 @@ SRC_URI = "${GNUPG_MIRROR}/gpgme/${BP}.tar.bz2 \
            file://pkgconfig.patch \
            file://python-lang-config.patch \
            file://0001-Correctly-install-python-modules.patch \
-           file://0001-Avoid-host-contamination-from-gpg-config.patch \
            file://python-import.patch \
+           file://0001-gpgme-config-skip-all-lib-or-usr-lib-directories-in-.patch \
           "
 
 SRC_URI[md5sum] = "722a4153904b9b5dc15485a22d29263b"
Signature · 1 line
2.11.0
#1 lore raw

PATCH 2/2 gpgme: add a dependency on python-unixadmin to Python bindings package

---
 meta/recipes-support/gpgme/gpgme_1.8.0.bb | 3 +++
 1 file changed, 3 insertions(+)
meta/recipes-support/gpgme/gpgme_1.8.0.bb +3 -0
index cb9143aded8..4ddf6ed9996 100644
@@ -24,6 +24,9 @@ SRC_URI[sha256sum] = "596097257c2ce22e747741f8ff3d7e24f6e26231fa198a41b2a072e62d
 DEPENDS = "libgpg-error libassuan"
 RDEPENDS_${PN}-cpp += "libstdc++"
 
+RDEPENDS_python2-gpg += "python-unixadmin"
+RDEPENDS_python3-gpg += "python3-unixadmin"
+
 BINCONFIG = "${bindir}/gpgme-config"
 
 # Note select python2 or python3, but you can't select both at the same time
Signature · 1 line
2.11.0