Andrew Geissler | 7e0e3c0 | 2022-02-25 20:34:39 +0000 | [diff] [blame] | 1 | SUMMARY = "Multiplexing terminal manager" |
| 2 | DESCRIPTION = "Screen is a full-screen window manager \ |
| 3 | that multiplexes a physical terminal between several \ |
| 4 | processes, typically interactive shells." |
| 5 | HOMEPAGE = "http://www.gnu.org/software/screen/" |
| 6 | BUGTRACKER = "https://savannah.gnu.org/bugs/?func=additem&group=screen" |
| 7 | |
| 8 | SECTION = "console/utils" |
| 9 | |
| 10 | LICENSE = "GPL-3.0-or-later" |
| 11 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ |
| 12 | file://screen.h;endline=26;md5=b8dc717c9a3dba842ae6c44ca0f73f52 \ |
| 13 | " |
| 14 | |
| 15 | DEPENDS = "ncurses virtual/crypt \ |
| 16 | ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}" |
| 17 | RDEPENDS:${PN} = "base-files" |
| 18 | |
| 19 | SRC_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 \ |
| 24 | " |
| 25 | |
| 26 | SRC_URI[sha256sum] = "f9335281bb4d1538ed078df78a20c2f39d3af9a4e91c57d084271e0289c730f4" |
| 27 | |
| 28 | inherit autotools texinfo |
| 29 | |
| 30 | PACKAGECONFIG ??= "" |
| 31 | PACKAGECONFIG[utempter] = "ac_cv_header_utempter_h=yes,ac_cv_header_utempter_h=no,libutempter," |
| 32 | |
| 33 | EXTRA_OECONF = "--with-pty-mode=0620 --with-pty-group=5 --with-sys-screenrc=${sysconfdir}/screenrc \ |
| 34 | ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '--enable-pam', '--disable-pam', d)}" |
| 35 | |
| 36 | do_install:append () { |
| 37 | install -D -m 644 ${S}/etc/etcscreenrc ${D}/${sysconfdir}/screenrc |
| 38 | if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then |
| 39 | install -D -m 644 ${WORKDIR}/screen.pam ${D}/${sysconfdir}/pam.d/screen |
| 40 | fi |
| 41 | } |
| 42 | |
| 43 | pkg_postinst:${PN} () { |
| 44 | grep -q "^${bindir}/screen$" $D${sysconfdir}/shells || echo ${bindir}/screen >> $D${sysconfdir}/shells |
| 45 | } |
| 46 | |
| 47 | pkg_postrm:${PN} () { |
| 48 | printf "$(grep -v "^${bindir}/screen$" $D${sysconfdir}/shells)\n" > $D${sysconfdir}/shells |
| 49 | } |