blob: c4faa27023d5a1687b9692e32d7efb077efbe228 [file] [log] [blame]
Andrew Geissler82c905d2020-04-13 13:39:40 -05001SUMMARY = "Multiplexing terminal manager"
2DESCRIPTION = "Screen is a full-screen window manager \
3that multiplexes a physical terminal between several \
4processes, typically interactive shells."
5HOMEPAGE = "http://www.gnu.org/software/screen/"
6BUGTRACKER = "https://savannah.gnu.org/bugs/?func=additem&group=screen"
7
8SECTION = "console/utils"
9
10LICENSE = "GPLv3+"
11LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
12 file://screen.h;endline=26;md5=b8dc717c9a3dba842ae6c44ca0f73f52 \
13 "
14
15DEPENDS = "ncurses virtual/crypt \
16 ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
17RDEPENDS_${PN} = "base-files"
18
19SRC_URI = "${GNU_MIRROR}/screen/screen-${PV}.tar.gz \
20 ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'file://screen.pam', '', d)} \
21 file://0002-comm.h-now-depends-on-term.h.patch \
22 file://0001-fix-for-multijob-build.patch \
23 file://0001-Remove-more-compatibility-stuff.patch \
Patrick Williams776d5d22021-03-11 14:29:47 -060024 file://CVE-2021-26937.patch \
Patrick Williams841583d2023-05-03 21:37:45 -050025 file://CVE-2023-24626.patch \
Andrew Geissler82c905d2020-04-13 13:39:40 -050026 "
27
28SRC_URI[md5sum] = "d276213d3acd10339cd37848b8c4ab1e"
29SRC_URI[sha256sum] = "6e11b13d8489925fde25dfb0935bf6ed71f9eb47eff233a181e078fde5655aa1"
30
31inherit autotools texinfo
32
33PACKAGECONFIG ??= ""
34PACKAGECONFIG[utempter] = "ac_cv_header_utempter_h=yes,ac_cv_header_utempter_h=no,libutempter,"
35
36EXTRA_OECONF = "--with-pty-mode=0620 --with-pty-group=5 --with-sys-screenrc=${sysconfdir}/screenrc \
37 ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '--enable-pam', '--disable-pam', d)}"
38
39do_install_append () {
40 install -D -m 644 ${S}/etc/etcscreenrc ${D}/${sysconfdir}/screenrc
41 if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then
42 install -D -m 644 ${WORKDIR}/screen.pam ${D}/${sysconfdir}/pam.d/screen
43 fi
44}
45
46pkg_postinst_${PN} () {
47 grep -q "^${bindir}/screen$" $D${sysconfdir}/shells || echo ${bindir}/screen >> $D${sysconfdir}/shells
48}
49
50pkg_postrm_${PN} () {
51 printf "$(grep -v "^${bindir}/screen$" $D${sysconfdir}/shells)\n" > $D${sysconfdir}/shells
52}