1*4882a593Smuzhiyunrequire sudo.inc 2*4882a593Smuzhiyun 3*4882a593SmuzhiyunSRC_URI = "https://www.sudo.ws/dist/sudo-${PV}.tar.gz \ 4*4882a593Smuzhiyun ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)} \ 5*4882a593Smuzhiyun file://0001-sudo.conf.in-fix-conflict-with-multilib.patch \ 6*4882a593Smuzhiyun file://0001-lib-util-mksigname.c-correctly-include-header-for-ou.patch \ 7*4882a593Smuzhiyun " 8*4882a593Smuzhiyun 9*4882a593SmuzhiyunPAM_SRC_URI = "file://sudo.pam" 10*4882a593Smuzhiyun 11*4882a593SmuzhiyunSRC_URI[sha256sum] = "92334a12bb93e0c056b09f53e255ccb7d6f67c6350e2813cd9593ceeca78560b" 12*4882a593Smuzhiyun 13*4882a593SmuzhiyunDEPENDS += " virtual/crypt ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}" 14*4882a593SmuzhiyunRDEPENDS:${PN} += " ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam-plugin-limits pam-plugin-keyinit', '', d)}" 15*4882a593Smuzhiyun 16*4882a593SmuzhiyunCACHED_CONFIGUREVARS = " \ 17*4882a593Smuzhiyun ac_cv_type_rsize_t=no \ 18*4882a593Smuzhiyun ac_cv_path_MVPROG=${base_bindir}/mv \ 19*4882a593Smuzhiyun ac_cv_path_BSHELLPROG=${base_bindir}/sh \ 20*4882a593Smuzhiyun ac_cv_path_SENDMAILPROG=${sbindir}/sendmail \ 21*4882a593Smuzhiyun ac_cv_path_VIPROG=${base_bindir}/vi \ 22*4882a593Smuzhiyun " 23*4882a593Smuzhiyun 24*4882a593SmuzhiyunEXTRA_OECONF += " \ 25*4882a593Smuzhiyun ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '--with-pam', '--without-pam', d)} \ 26*4882a593Smuzhiyun ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '--enable-tmpfiles.d=${nonarch_libdir}/tmpfiles.d', '--disable-tmpfiles.d', d)} \ 27*4882a593Smuzhiyun --with-rundir=/run/sudo \ 28*4882a593Smuzhiyun --with-vardir=/var/lib/sudo \ 29*4882a593Smuzhiyun --libexecdir=${libdir} \ 30*4882a593Smuzhiyun " 31*4882a593Smuzhiyun 32*4882a593Smuzhiyundo_install:append () { 33*4882a593Smuzhiyun if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then 34*4882a593Smuzhiyun install -D -m 644 ${WORKDIR}/sudo.pam ${D}/${sysconfdir}/pam.d/sudo 35*4882a593Smuzhiyun if ${@bb.utils.contains('PACKAGECONFIG', 'pam-wheel', 'true', 'false', d)} ; then 36*4882a593Smuzhiyun echo 'auth required pam_wheel.so use_uid' >>${D}${sysconfdir}/pam.d/sudo 37*4882a593Smuzhiyun sed -i 's/# \(%wheel ALL=(ALL) ALL\)/\1/' ${D}${sysconfdir}/sudoers 38*4882a593Smuzhiyun fi 39*4882a593Smuzhiyun fi 40*4882a593Smuzhiyun 41*4882a593Smuzhiyun chmod 4111 ${D}${bindir}/sudo 42*4882a593Smuzhiyun chmod 0440 ${D}${sysconfdir}/sudoers 43*4882a593Smuzhiyun 44*4882a593Smuzhiyun # Explicitly remove the /sudo directory to avoid QA error 45*4882a593Smuzhiyun rmdir -p --ignore-fail-on-non-empty ${D}/run/sudo 46*4882a593Smuzhiyun} 47*4882a593Smuzhiyun 48*4882a593SmuzhiyunFILES:${PN}-dev += "${libdir}/${BPN}/lib*${SOLIBSDEV} ${libdir}/${BPN}/*.la \ 49*4882a593Smuzhiyun ${libdir}/lib*${SOLIBSDEV} ${libdir}/*.la" 50*4882a593Smuzhiyun 51*4882a593SmuzhiyunCONFFILES:${PN}-lib = "${sysconfdir}/sudoers" 52*4882a593Smuzhiyun 53*4882a593SmuzhiyunSUDO_PACKAGES = "${PN}-sudo\ 54*4882a593Smuzhiyun ${PN}-lib" 55*4882a593Smuzhiyun 56*4882a593SmuzhiyunPACKAGE_BEFORE_PN = "${SUDO_PACKAGES}" 57*4882a593Smuzhiyun 58*4882a593SmuzhiyunRDEPENDS:${PN}-sudo = "${PN}-lib" 59*4882a593SmuzhiyunRDEPENDS:${PN} += "${SUDO_PACKAGES}" 60*4882a593Smuzhiyun 61*4882a593SmuzhiyunFILES:${PN}-sudo = "${bindir}/sudo ${bindir}/sudoedit" 62*4882a593SmuzhiyunFILES:${PN}-lib = "${localstatedir} ${libexecdir} ${sysconfdir} ${libdir} ${nonarch_libdir}" 63