1SUMMARY = "Delayed job execution and batch processing"
2HOMEPAGE = "http://blog.calhariz.com/"
3DESCRIPTION = "At allows for commands to be run at a particular time.  Batch will execute commands when \
4the system load levels drop to a particular level."
5SECTION = "base"
6LICENSE = "GPL-2.0-or-later"
7LIC_FILES_CHKSUM = "file://COPYING;md5=4325afd396febcb659c36b49533135d4"
8DEPENDS = "flex flex-native bison-native \
9           ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
10
11PACKAGECONFIG ?= "\
12    ${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux', '', d)} \
13"
14
15PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux,"
16
17RDEPENDS:${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_DEPS}', '', d)} \
18"
19
20PAM_DEPS = "libpam libpam-runtime pam-plugin-env pam-plugin-limits"
21
22RCONFLICTS:${PN} = "atd"
23RREPLACES:${PN} = "atd"
24
25SRC_URI = "${DEBIAN_MIRROR}/main/a/at/${BPN}_${PV}.orig.tar.gz \
26           file://posixtm.c \
27           file://posixtm.h \
28           file://file_replacement_with_gplv2.patch \
29           file://atd.init \
30           file://atd.service \
31           ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)} \
32           file://makefile-fix-parallel.patch \
33           file://0001-remove-glibc-assumption.patch \
34           "
35
36PAM_SRC_URI = "file://pam.conf.patch \
37               file://configure-add-enable-pam.patch"
38
39SRC_URI[sha256sum] = "bb066b389d7c9bb9d84a35738032b85c30cba7d949f758192adc72c9477fd3b8"
40
41EXTRA_OECONF += "ac_cv_path_SENDMAIL=/bin/true \
42                 --with-daemon_username=root \
43                 --with-daemon_groupname=root \
44                 --with-jobdir=/var/spool/at/jobs \
45                 --with-atspool=/var/spool/at/spool \
46                 ac_cv_header_security_pam_appl_h=${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'yes', 'no', d)} "
47
48inherit autotools-brokensep systemd update-rc.d
49
50INITSCRIPT_NAME = "atd"
51INITSCRIPT_PARAMS = "defaults"
52
53SYSTEMD_SERVICE:${PN} = "atd.service"
54
55do_patch[postfuncs] += "copy_posix_files"
56
57copy_posix_files() {
58    cp -f ${WORKDIR}/posixtm.[ch] ${S}
59}
60
61do_install () {
62	oe_runmake -e "IROOT=${D}" install
63
64	install -d ${D}${sysconfdir}/init.d
65	install -m 0755    ${WORKDIR}/atd.init		${D}${sysconfdir}/init.d/atd
66
67	# install systemd unit files
68	install -d ${D}${systemd_system_unitdir}
69	install -m 0644 ${WORKDIR}/atd.service ${D}${systemd_system_unitdir}
70	sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_system_unitdir}/atd.service
71
72	if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then
73		install -D -m 0644 ${WORKDIR}/${BP}/pam.conf ${D}${sysconfdir}/pam.d/atd
74	fi
75        rm -f ${D}${datadir}/at/batch-job
76}
77