xref: /OK3568_Linux_fs/yocto/meta-openembedded/meta-oe/recipes-extended/polkit/polkit_0.119.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1SUMMARY = "PolicyKit Authorization Framework"
2DESCRIPTION = "The polkit package is an application-level toolkit for defining and handling the policy that allows unprivileged processes to speak to privileged processes."
3HOMEPAGE = "http://www.freedesktop.org/wiki/Software/polkit"
4LICENSE = "LGPL-2.0-or-later"
5LIC_FILES_CHKSUM = "file://COPYING;md5=155db86cdbafa7532b41f390409283eb \
6                    file://src/polkit/polkit.h;beginline=1;endline=20;md5=0a8630b0133176d0504c87a0ded39db4"
7
8DEPENDS = "expat glib-2.0 intltool-native duktape"
9
10inherit autotools gtk-doc pkgconfig useradd systemd gobject-introspection features_check
11
12REQUIRED_DISTRO_FEATURES = "polkit"
13
14PACKAGECONFIG = "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)} \
15                 ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', \
16                    bb.utils.contains('DISTRO_FEATURES', 'x11', 'consolekit', '', d), d)} \
17                "
18
19PACKAGECONFIG[pam] = "--with-authfw=pam,--with-authfw=shadow,libpam,libpam"
20PACKAGECONFIG[systemd] = "--enable-libsystemd-login=yes --with-systemdsystemunitdir=${systemd_unitdir}/system/,--enable-libsystemd-login=no --with-systemdsystemunitdir=,systemd"
21# there is no --enable/--disable option for consolekit and it's not picked by shlibs, so add it to RDEPENDS
22PACKAGECONFIG[consolekit] = ",,,consolekit"
23
24PAM_SRC_URI = "file://polkit-1_pam.patch"
25SRC_URI = "http://www.freedesktop.org/software/polkit/releases/polkit-${PV}.tar.gz \
26           ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)} \
27           file://0001-pkexec-local-privilege-escalation-CVE-2021-4034.patch \
28           file://0002-CVE-2021-4115-GHSL-2021-077-fix.patch \
29           file://0003-Added-support-for-duktape-as-JS-engine.patch \
30           file://0004-Make-netgroup-support-optional.patch \
31           "
32SRC_URI[sha256sum] = "c8579fdb86e94295404211285fee0722ad04893f0213e571bd75c00972fd1f5c"
33
34EXTRA_OECONF = "--with-os-type=moblin \
35                --disable-man-pages \
36                --disable-libelogind \
37                --with-duktape \
38               "
39
40do_configure:prepend () {
41    rm -f ${S}/buildutil/lt*.m4 ${S}/buildutil/libtool.m4
42}
43
44do_compile:prepend () {
45    export GIR_EXTRA_LIBS_PATH="${B}/src/polkit/.libs"
46}
47
48PACKAGES =+ "${PN}-examples"
49
50FILES:${PN}:append = " \
51    ${libdir}/${BPN}-1 \
52    ${nonarch_libdir}/${BPN}-1 \
53    ${datadir}/dbus-1 \
54    ${datadir}/${BPN}-1 \
55    ${datadir}/gettext \
56"
57
58FILES:${PN}-examples = "${bindir}/*example*"
59
60USERADD_PACKAGES = "${PN}"
61USERADD_PARAM:${PN} = "--system --no-create-home --user-group --home-dir ${sysconfdir}/${BPN}-1 --shell /bin/nologin polkitd"
62
63SYSTEMD_SERVICE:${PN} = "${BPN}.service"
64SYSTEMD_AUTO_ENABLE = "disable"
65