diff mbox series

[PATCHv3] libsecret: add pam support depending on DISTRO_FEATURE

Message ID 20241122114338.2890-1-f_l_k@t-online.de
State New
Headers show
Series [PATCHv3] libsecret: add pam support depending on DISTRO_FEATURE | expand

Commit Message

Markus Volk Nov. 22, 2024, 11:43 a.m. UTC
pam module has been ported from gnome-keyring to libsecret
[https://gitlab.gnome.org/GNOME/libsecret/-/commit/9a37dc839a9be1670afeb647d9f82b6ef1cd0893]

Add a PACKAGECONFIG for pam and enable it if pam is in DISTRO_FEATURES

Add a patch that disables the pam test, because it would require
pam_wrapper recipe

[https://gitlab.com/cwrap/pam_wrapper]

Signed-off-by: Markus Volk <f_l_k@t-online.de>
---
 .../libsecret/0001-pam-disable-tests.patch    | 71 +++++++++++++++++++
 .../libsecret/libsecret_0.21.4.bb             |  3 +
 2 files changed, 74 insertions(+)
 create mode 100644 meta/recipes-gnome/libsecret/libsecret/0001-pam-disable-tests.patch
diff mbox series

Patch

diff --git a/meta/recipes-gnome/libsecret/libsecret/0001-pam-disable-tests.patch b/meta/recipes-gnome/libsecret/libsecret/0001-pam-disable-tests.patch
new file mode 100644
index 0000000000..b7ef6662bc
--- /dev/null
+++ b/meta/recipes-gnome/libsecret/libsecret/0001-pam-disable-tests.patch
@@ -0,0 +1,71 @@ 
+From a028d36dc7b8d0bc33e674d2a0427b171aef2d32 Mon Sep 17 00:00:00 2001
+From: Markus Volk <f_l_k@t-online.de>
+Date: Wed, 20 Nov 2024 16:30:07 +0100
+Subject: [PATCH] pam/meson.build: disable tests
+
+Otherwise a recipe for pam_wrapper would be required:
+https://gitlab.com/cwrap/pam_wrapper
+
+Signed-off-by: Markus Volk <f_l_k@t-online.de>
+
+Upstream-Status: Inappropriate [oe-specific]
+---
+ pam/meson.build | 42 +++++++++++++++++++++---------------------
+ 1 file changed, 21 insertions(+), 21 deletions(-)
+
+diff --git a/pam/meson.build b/pam/meson.build
+index 8413b58..06d41c4 100644
+--- a/pam/meson.build
++++ b/pam/meson.build
+@@ -19,27 +19,27 @@ pam_gnome_keyring = shared_library('pam_gnome_keyring',
+ )
+ 
+ # pam tests
+-pam_wrapper = dependency('pam_wrapper', required: true)
+-libpamtest = dependency('libpamtest', required: true)
++#pam_wrapper = dependency('pam_wrapper', required: true)
++#libpamtest = dependency('libpamtest', required: true)
+ 
+-subdir('servicedir')
++#subdir('servicedir')
+ 
+-test_bin = executable('pam_test',
+-  sources: [
+-    'test-pam.c',
+-  ],
+-  dependencies: [
+-    libpamtest,
+-    glib_deps,
+-  ],
+-)
++#test_bin = executable('pam_test',
++#  sources: [
++#    'test-pam.c',
++#  ],
++#  dependencies: [
++#    libpamtest,
++#    glib_deps,
++#  ],
++#)
+ 
+-test('pam-test',
+-  test_bin,
+-  env: {
+-    'LD_PRELOAD': 'libpam_wrapper.so',
+-    'PAM_WRAPPER': '1',
+-    'PAM_WRAPPER_DEBUGLEVEL': '5',
+-    'PAM_WRAPPER_SERVICE_DIR': meson.current_build_dir() + '/servicedir',
+-  },
+-)
++#test('pam-test',
++#  test_bin,
++#  env: {
++#    'LD_PRELOAD': 'libpam_wrapper.so',
++#    'PAM_WRAPPER': '1',
++#    'PAM_WRAPPER_DEBUGLEVEL': '5',
++#    'PAM_WRAPPER_SERVICE_DIR': meson.current_build_dir() + '/servicedir',
++#  },
++#)
+-- 
+2.47.0
+
diff --git a/meta/recipes-gnome/libsecret/libsecret_0.21.4.bb b/meta/recipes-gnome/libsecret/libsecret_0.21.4.bb
index 88c3c73510..1bdd26d500 100644
--- a/meta/recipes-gnome/libsecret/libsecret_0.21.4.bb
+++ b/meta/recipes-gnome/libsecret/libsecret_0.21.4.bb
@@ -13,11 +13,14 @@  inherit gnomebase gi-docgen vala gobject-introspection manpages
 
 DEPENDS += "glib-2.0 libgcrypt gettext-native"
 
+SRC_URI += "file://0001-pam-disable-tests.patch"
 SRC_URI[archive.sha256sum] = "163d08d783be6d4ab9a979ceb5a4fecbc1d9660d3c34168c581301cd53912b20"
 
 GTKDOC_MESON_OPTION = 'gtk_doc'
 
+PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}"
 PACKAGECONFIG[manpages] = "-Dmanpage=true,-Dmanpage=false,libxslt-native xmlto-native"
+PACKAGECONFIG[pam] = "-Dpam=true,-Dpam=false,libpam"
 
 # http://errors.yoctoproject.org/Errors/Details/20228/
 ARM_INSTRUCTION_SET:armv4 = "arm"