diff options
Diffstat (limited to 'sys-auth/fprintd')
3 files changed, 113 insertions, 14 deletions
diff --git a/sys-auth/fprintd/files/fprintd-1.90.7_0001-add-test-feature-and-make-tests-optional.patch b/sys-auth/fprintd/files/fprintd-1.90.7_0001-add-test-feature-and-make-tests-optional.patch new file mode 100644 index 0000000..67fb29b --- /dev/null +++ b/sys-auth/fprintd/files/fprintd-1.90.7_0001-add-test-feature-and-make-tests-optional.patch @@ -0,0 +1,74 @@ +From 7820465f078e9655af70036d8c570fd644b38f22 Mon Sep 17 00:00:00 2001 +From: Martin Gysel <me@bearsh.org> +Date: Thu, 19 Nov 2020 07:04:10 +0100 +Subject: [PATCH 1/2] add test feature and make tests optional + +--- + meson.build | 14 ++++++++++---- + meson_options.txt | 4 ++++ + 2 files changed, 14 insertions(+), 4 deletions(-) + +diff --git a/meson.build b/meson.build +index 66aa2f7..ba44788 100644 +--- a/meson.build ++++ b/meson.build +@@ -125,7 +125,7 @@ endif + polkit_policy_directory = polkit_gobject_dep.get_pkgconfig_variable('policydir') + + # Tests dependencies +-pam_wrapper_dep = dependency('pam_wrapper', required: get_option('pam')) ++pam_wrapper_dep = dependency('pam_wrapper', required: get_option('pam') and get_option('test').enabled() ) + + xmllint = find_program('xmllint', required: false) + python3 = find_program('python3') # No meson without it! +@@ -139,11 +139,13 @@ python3_test_modules = { + } + python3_available_modules = [] + ++if get_option('test').enabled() + foreach module, required : python3_test_modules + if required and run_command(python3, '-c', 'import @0@'.format(module)).returncode() != 0 + error('Python3 module \'' + module + '\' required by test suite not found') + endif + endforeach ++endif + + cdata = configuration_data() + cdata.set_quoted('GETTEXT_PACKAGE', meson.project_name()) +@@ -167,7 +169,9 @@ endif + if get_option('gtk_doc') + subdir('doc') + endif +-subdir('tests') ++if get_option('test').enabled() ++ subdir('tests') ++endif + subdir('po') + + output = [] +@@ -189,7 +193,9 @@ output += ' PAM module: ' + pam_dep.found().to_string() + output += ' Manuals: ' + get_option('man').to_string() + output += ' GTK Doc: ' + get_option('gtk_doc').to_string() + output += ' XML Linter ' + xmllint.found().to_string() +-output += '\nTest setup:\n' +-output += ' With address sanitizer: ' + address_sanitizer.to_string() ++if get_option('test').enabled() ++ output += '\nTest setup:\n' ++ output += ' With address sanitizer: ' + address_sanitizer.to_string() ++endif + + message('\n'+'\n'.join(output)+'\n') +diff --git a/meson_options.txt b/meson_options.txt +index be31fe1..92c01cd 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -19,3 +19,7 @@ option('gtk_doc', + type: 'boolean', + value: false, + description: 'Use gtk-doc to build documentation') ++option('test', ++ type: 'feature', ++ value: 'disabled', ++ description: 'Enable tests') +-- +2.29.2 diff --git a/sys-auth/fprintd/files/fprintd-1.90.8_0002-add-configure-option-for-libsystemd-provider.patch b/sys-auth/fprintd/files/fprintd-1.90.8_0002-add-configure-option-for-libsystemd-provider.patch new file mode 100644 index 0000000..a10026f --- /dev/null +++ b/sys-auth/fprintd/files/fprintd-1.90.8_0002-add-configure-option-for-libsystemd-provider.patch @@ -0,0 +1,24 @@ +--- fprintd-v1.90.8/meson.build.orig 2020-12-13 08:08:13.886367478 +0100 ++++ fprintd-v1.90.8/meson.build 2020-12-13 08:30:16.056756878 +0100 +@@ -84,7 +84,7 @@ + libfprint_dep = dependency('libfprint-2', version: '>=' + libfprint_min_version) + polkit_gobject_dep = dependency('polkit-gobject-1', version: '>= 0.91') + dbus_dep = dependency('dbus-1', required: false) +-libsystemd_dep = dependency('libsystemd', required: get_option('pam')) ++libsystemd_dep = dependency(get_option('libsystemd'), required: get_option('pam')) + pam_dep = cc.find_library('pam', + required: get_option('pam'), + has_headers: 'security/pam_modules.h', +--- fprintd-v1.90.8/meson_options.txt.orig 2020-12-13 08:08:13.886367478 +0100 ++++ fprintd-v1.90.8/meson_options.txt 2020-12-13 08:26:57.111919403 +0100 +@@ -10,6 +10,10 @@ + description: 'Install system service files', + type: 'boolean', + value: true) ++option('libsystemd', ++ description: 'Libsystemd provider (libsystemd or libelogind)', ++ type: 'string', ++ value: 'libsystemd') + option('systemd_system_unit_dir', + description: 'Directory for systemd service files', + type: 'string') diff --git a/sys-auth/fprintd/fprintd-1.94.0.ebuild b/sys-auth/fprintd/fprintd-1.94.0.ebuild index 11125a8..c4cc4c0 100644 --- a/sys-auth/fprintd/fprintd-1.94.0.ebuild +++ b/sys-auth/fprintd/fprintd-1.94.0.ebuild @@ -24,7 +24,11 @@ RDEPEND="dev-libs/dbus-glib >=sys-auth/libfprint-${PV} sys-auth/polkit systemd? ( sys-apps/systemd ) - pam? ( sys-libs/pam )" + pam? ( + systemd? ( sys-apps/systemd ) + !systemd? ( sys-auth/elogind ) + sys-libs/pam + )" DEPEND="${RDEPEND} dev-util/intltool gtk-doc? ( @@ -37,27 +41,24 @@ BDEPEND="test? ( pam? ( sys-libs/pam_wrapper ) )" +PATCHES=( + "${FILESDIR}/${PN}-1.90.7_0001-add-test-feature-and-make-tests-optional.patch" + "${FILESDIR}/${PN}-1.90.8_0002-add-configure-option-for-libsystemd-provider.patch" +) + S="${WORKDIR}/${PN}-v${PV}-${SHA}" DOCS=( pam/README ) -src_prepare() { - # Remove test dep checks - if ! use test; then - sed -e "/.*'dbusmock': true.*/d" -i meson.build || die "sed failed" - sed -e "/.*'pypamtest': .*/d" -i meson.build || die "sed failed" - sed -e '/pam_wrapper_dep =.*/d' -i meson.build || die "sed failed" - sed -e "/^subdir('tests')/d" -i meson.build || die "sed failed" - sed -e "/With address sanitizer: /d" -i meson.build || die "sed failed" - fi - default -} - src_configure() { local emesonargs=( + $(meson_feature test) + $(meson_use pam) -Dsystemd_system_unit_dir=$(systemd_get_systemunitdir) -Dman=true -Dgtk_doc=$(usex gtk-doc true false) + -Dpam_modules_dir=$(getpam_mod_dir) + -Dlibsystemd=$(usex systemd libsystemd libelogind) ) meson_src_configure } @@ -77,4 +78,4 @@ src_install() { pkg_postinst() { elog "Please take a look at README.pam_fprintd for integration docs." -}
\ No newline at end of file +} |