blob: 235cd8c6cfc7ed1f7d3b48004156ae0c4a4444fd [file] [log] [blame]
Andrew Geissler7e0e3c02022-02-25 20:34:39 +00001SUMMARY = "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 = "GPL-3.0-or-later"
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 Williams92b42cb2022-09-03 06:53:57 -050024 file://0001-configure-Add-needed-system-headers-in-checks.patch \
Patrick Williams8e7b46e2023-05-01 14:19:06 -050025 file://signal-permission.patch \
Patrick Williams92b42cb2022-09-03 06:53:57 -050026 "
Andrew Geissler7e0e3c02022-02-25 20:34:39 +000027
28SRC_URI[sha256sum] = "f9335281bb4d1538ed078df78a20c2f39d3af9a4e91c57d084271e0289c730f4"
29
30inherit autotools texinfo
31
32PACKAGECONFIG ??= ""
33PACKAGECONFIG[utempter] = "ac_cv_header_utempter_h=yes,ac_cv_header_utempter_h=no,libutempter,"
34
35EXTRA_OECONF = "--with-pty-mode=0620 --with-pty-group=5 --with-sys-screenrc=${sysconfdir}/screenrc \
36 ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '--enable-pam', '--disable-pam', d)}"
37
38do_install:append () {
39 install -D -m 644 ${S}/etc/etcscreenrc ${D}/${sysconfdir}/screenrc
40 if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then
41 install -D -m 644 ${WORKDIR}/screen.pam ${D}/${sysconfdir}/pam.d/screen
42 fi
43}
44
45pkg_postinst:${PN} () {
46 grep -q "^${bindir}/screen$" $D${sysconfdir}/shells || echo ${bindir}/screen >> $D${sysconfdir}/shells
47}
48
49pkg_postrm:${PN} () {
50 printf "$(grep -v "^${bindir}/screen$" $D${sysconfdir}/shells)\n" > $D${sysconfdir}/shells
51}