blob: b7a99be6461fa283f5131d29d35bab19ab16c12b [file] [log] [blame]
Patrick Williamsd8c66bc2016-06-20 12:57:21 -05001SUMMARY = "Startup script and systemd unit file for the Weston Wayland compositor"
Patrick Williamsc124f4f2015-09-15 14:41:29 -05002LICENSE = "MIT"
Brad Bishop6e60e8b2018-02-01 10:27:11 -05003LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
Patrick Williamsc124f4f2015-09-15 14:41:29 -05004
Brad Bishopa34c0302019-09-23 22:34:48 -04005PACKAGE_ARCH = "${MACHINE_ARCH}"
6
Patrick Williamsd8c66bc2016-06-20 12:57:21 -05007SRC_URI = "file://init \
Andrew Geissler82c905d2020-04-13 13:39:40 -05008 file://weston.env \
Brad Bishopa34c0302019-09-23 22:34:48 -04009 file://weston.ini \
10 file://weston@.service \
Andrew Geisslerc9f78652020-09-18 14:11:35 -050011 file://weston@.socket \
Brad Bishopa34c0302019-09-23 22:34:48 -040012 file://71-weston-drm.rules \
Andrew Geisslerc9f78652020-09-18 14:11:35 -050013 file://weston-autologin \
Patrick Williamsc0f7c042017-02-23 20:41:17 -060014 file://weston-start"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050015
16S = "${WORKDIR}"
17
Andrew Geissler4c19ea12020-10-27 13:52:24 -050018PACKAGECONFIG ??= ""
19
20PACKAGECONFIG[no-idle-timeout] = ",,"
21
Andrew Geisslerc9f78652020-09-18 14:11:35 -050022DEFAULTBACKEND ??= ""
23DEFAULTBACKEND_qemuall ?= "fbdev"
24DEFAULTBACKEND_qemuarm64 = "drm"
25DEFAULTBACKEND_qemux86 = "drm"
26DEFAULTBACKEND_qemux86-64 = "drm"
27
Patrick Williamsc124f4f2015-09-15 14:41:29 -050028do_install() {
Patrick Williamsc0f7c042017-02-23 20:41:17 -060029 install -Dm755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/weston
Brad Bishopa34c0302019-09-23 22:34:48 -040030 install -D -p -m0644 ${WORKDIR}/weston.ini ${D}${sysconfdir}/xdg/weston/weston.ini
Andrew Geissler82c905d2020-04-13 13:39:40 -050031 install -Dm644 ${WORKDIR}/weston.env ${D}${sysconfdir}/default/weston
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050032
Brad Bishopa34c0302019-09-23 22:34:48 -040033 # Install Weston systemd service and accompanying udev rule
34 install -D -p -m0644 ${WORKDIR}/weston@.service ${D}${systemd_system_unitdir}/weston@.service
Andrew Geisslerc9f78652020-09-18 14:11:35 -050035 install -D -p -m0644 ${WORKDIR}/weston@.socket ${D}${systemd_system_unitdir}/weston@.socket
36 if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then
37 install -D -p -m0644 ${WORKDIR}/weston-autologin ${D}${sysconfdir}/pam.d/weston-autologin
38 fi
Brad Bishopa34c0302019-09-23 22:34:48 -040039 sed -i -e s:/etc:${sysconfdir}:g \
40 -e s:/usr/bin:${bindir}:g \
41 -e s:/var:${localstatedir}:g \
42 ${D}${systemd_unitdir}/system/weston@.service
43 install -D -p -m0644 ${WORKDIR}/71-weston-drm.rules \
44 ${D}${sysconfdir}/udev/rules.d/71-weston-drm.rules
Patrick Williamsc0f7c042017-02-23 20:41:17 -060045 # Install weston-start script
46 install -Dm755 ${WORKDIR}/weston-start ${D}${bindir}/weston-start
47 sed -i 's,@DATADIR@,${datadir},g' ${D}${bindir}/weston-start
48 sed -i 's,@LOCALSTATEDIR@,${localstatedir},g' ${D}${bindir}/weston-start
Andrew Geisslerc9f78652020-09-18 14:11:35 -050049 if [ -n "${DEFAULTBACKEND}" ]; then
50 sed -i -e "/^\[core\]/a backend=${DEFAULTBACKEND}-backend.so" ${D}${sysconfdir}/xdg/weston/weston.ini
51 fi
Andrew Geissler4c19ea12020-10-27 13:52:24 -050052
53 if [ "${@bb.utils.contains('PACKAGECONFIG', 'no-idle-timeout', 'yes', 'no', d)}" = "yes" ]; then
54 echo "idle-time=0" >> ${D}${sysconfdir}/xdg/weston/weston.ini
55 fi
Andrew Geissler82c905d2020-04-13 13:39:40 -050056}
57
Brad Bishop6dbb3162019-11-25 09:41:34 -050058inherit update-rc.d features_check systemd
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050059
60# rdepends on weston which depends on virtual/egl
61REQUIRED_DISTRO_FEATURES = "opengl"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050062
63RDEPENDS_${PN} = "weston kbd"
64
65INITSCRIPT_NAME = "weston"
66INITSCRIPT_PARAMS = "start 9 5 2 . stop 20 0 1 6 ."
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050067
Andrew Geisslerc9f78652020-09-18 14:11:35 -050068FILES_${PN} += "${sysconfdir}/xdg/weston/weston.ini ${systemd_system_unitdir}/weston@.service ${systemd_system_unitdir}/weston@.socket ${sysconfdir}/default/weston ${sysconfdir}/pam.d/"
Brad Bishopa34c0302019-09-23 22:34:48 -040069
Andrew Geissler82c905d2020-04-13 13:39:40 -050070CONFFILES_${PN} += "${sysconfdir}/xdg/weston/weston.ini ${sysconfdir}/default/weston"
Brad Bishopa34c0302019-09-23 22:34:48 -040071
72SYSTEMD_SERVICE_${PN} = "weston@%i.service"
73SYSTEMD_AUTO_ENABLE = "disable"
74