Gentoo Archives: gentoo-commits

From: Sven Wegener <swegener@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-misc/screen/
Date: Fri, 04 Oct 2019 13:27:36
Message-Id: 1570195642.dd77e43cbdbb2459af4c8be45313496391b6f874.swegener@gentoo
1 commit: dd77e43cbdbb2459af4c8be45313496391b6f874
2 Author: Sven Wegener <swegener <AT> gentoo <DOT> org>
3 AuthorDate: Fri Oct 4 13:11:55 2019 +0000
4 Commit: Sven Wegener <swegener <AT> gentoo <DOT> org>
5 CommitDate: Fri Oct 4 13:27:22 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dd77e43c
7
8 app-misc/screen: Version bump to 4.7.0, bug #696050
9
10 Closes: https://bugs.gentoo.org/696050
11 Package-Manager: Portage-2.3.76, Repoman-2.3.16
12 Signed-off-by: Sven Wegener <swegener <AT> gentoo.org>
13
14 app-misc/screen/Manifest | 1 +
15 app-misc/screen/screen-4.7.0.ebuild | 160 ++++++++++++++++++++++++++++++++++++
16 2 files changed, 161 insertions(+)
17
18 diff --git a/app-misc/screen/Manifest b/app-misc/screen/Manifest
19 index 69046bfdc86..f9d35a5e7c2 100644
20 --- a/app-misc/screen/Manifest
21 +++ b/app-misc/screen/Manifest
22 @@ -3,3 +3,4 @@ DIST screen-4.5.1.tar.gz 963153 BLAKE2B 8f7e20a0a3dde58435fc500714b49af97b4f2f22
23 DIST screen-4.6.0.tar.gz 849062 BLAKE2B e08915bb34d4e356eb33c479f1b2dc7a8f4a855e9d1c27490ff31cfc88b4bd9dfb11101dd0e4508f3b37b023b9f9b987dfaff4c6cc930e994d22fcb024cf341d SHA512 2ee7cc51c62a478e72eda0647f3f347e63f40384e19bc11b074158bd94cdb628c6425b1dd7a472496d56bff11a30a9dc58859c2e7e539fae2a8718ed9b0f96d7
24 DIST screen-4.6.1.tar.gz 848979 BLAKE2B e78874b6d8723c52f827ab5e6b665102d7fd831f03a0006f9d31e000535ccce95ce08e2d302e34ba2d567167a917c8bd3b875843828d1951bcb38ab6ae4e0acf SHA512 e5d029400ed5b509ebddc1f55812c33536d6f5ce91119537c7d06e1fa7dee84939c43337df4638f61c818ce0412f4d08fe212202162a4483a9e84bbc4b3e4336
25 DIST screen-4.6.2.tar.gz 845210 BLAKE2B feea244e2e0c8f638442a524cd7cac93c6c5e576541bf1321fb32bc9424abf53415d00ebcb4a13a9613788c1baad6e132f209bd0a017b100e0687b3658603aea SHA512 224bd16ad5ae501d1b8bb7d2ba9cc19e6a0743de5a5b320109c2f6bf3b1ca564cc7094ed9211be13733d9d769cde77d13fe236341d448cad0518038ab1e85c99
26 +DIST screen-4.7.0.tar.gz 854192 BLAKE2B f22ee3f3ad7591ee2641ba9667b131298f3cb9b7712b0f0db28516c60d0a0768893eda2f4ce35d9c641871247a638a03c2550328f1af1f85ab5ce8ffa9b77d54 SHA512 44c7a33e2ed772ce91998cdc07556ef7b972e5b100335e14702b273a234e437fe6415de459e7b6d34c6086282a432778629047424ef9159ac6fcf26d22b45745
27
28 diff --git a/app-misc/screen/screen-4.7.0.ebuild b/app-misc/screen/screen-4.7.0.ebuild
29 new file mode 100644
30 index 00000000000..b3063ef4e24
31 --- /dev/null
32 +++ b/app-misc/screen/screen-4.7.0.ebuild
33 @@ -0,0 +1,160 @@
34 +# Copyright 1999-2019 Gentoo Authors
35 +# Distributed under the terms of the GNU General Public License v2
36 +
37 +EAPI=7
38 +
39 +inherit autotools flag-o-matic pam tmpfiles toolchain-funcs user
40 +
41 +DESCRIPTION="screen manager with VT100/ANSI terminal emulation"
42 +HOMEPAGE="https://www.gnu.org/software/screen/"
43 +
44 +if [[ "${PV}" != 9999 ]] ; then
45 + SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
46 + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
47 +else
48 + inherit git-r3
49 + EGIT_REPO_URI="https://git.savannah.gnu.org/git/screen.git"
50 + EGIT_CHECKOUT_DIR="${WORKDIR}/${P}" # needed for setting S later on
51 + S="${WORKDIR}"/${P}/src
52 +fi
53 +
54 +LICENSE="GPL-2"
55 +SLOT="0"
56 +IUSE="debug nethack pam selinux multiuser"
57 +
58 +CDEPEND="
59 + >=sys-libs/ncurses-5.2:0=
60 + pam? ( virtual/pam )"
61 +RDEPEND="${CDEPEND}
62 + selinux? ( sec-policy/selinux-screen )"
63 +DEPEND="${CDEPEND}
64 + sys-apps/texinfo"
65 +
66 +PATCHES=(
67 + # Don't use utempter even if it is found on the system.
68 + "${FILESDIR}"/${PN}-4.3.0-no-utempter.patch
69 + "${FILESDIR}"/${PN}-4.6.2-utmp-exit.patch
70 +)
71 +
72 +pkg_setup() {
73 + # Make sure utmp group exists, as it's used later on.
74 + enewgroup utmp 406
75 +}
76 +
77 +src_prepare() {
78 + default
79 +
80 + # sched.h is a system header and causes problems with some C libraries
81 + mv sched.h _sched.h || die
82 + sed -i '/include/ s:sched.h:_sched.h:' screen.h || die
83 +
84 + # Fix manpage.
85 + sed -i \
86 + -e "s:/usr/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \
87 + -e "s:/usr/local/screens:${EPREFIX}/tmp/screen:g" \
88 + -e "s:/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \
89 + -e "s:/etc/utmp:${EPREFIX}/var/run/utmp:g" \
90 + -e "s:/local/screens/S\\\-:${EPREFIX}/tmp/screen/S\\\-:g" \
91 + doc/screen.1 \
92 + || die
93 +
94 + if [[ ${CHOST} == *-darwin* ]] || use elibc_musl ; then
95 + sed -i -e '/^#define UTMPOK/s/define/undef/' acconfig.h || die
96 + fi
97 +
98 + # disable musl dummy headers for utmp[x]
99 + use elibc_musl && append-cppflags "-D_UTMP_H -D_UTMPX_H"
100 +
101 + # reconfigure
102 + eautoreconf
103 +}
104 +
105 +src_configure() {
106 + append-cppflags "-DMAXWIN=${MAX_SCREEN_WINDOWS:-100}"
107 +
108 + if [[ ${CHOST} == *-solaris* ]] ; then
109 + # enable msg_header by upping the feature standard compatible
110 + # with c99 mode
111 + append-cppflags -D_XOPEN_SOURCE=600
112 + fi
113 +
114 + use nethack || append-cppflags "-DNONETHACK"
115 + use debug && append-cppflags "-DDEBUG"
116 +
117 + econf \
118 + --with-socket-dir="${EPREFIX}/tmp/screen" \
119 + --with-sys-screenrc="${EPREFIX}/etc/screenrc" \
120 + --with-pty-mode=0620 \
121 + --with-pty-group=5 \
122 + --enable-rxvt_osc \
123 + --enable-telnet \
124 + --enable-colors256 \
125 + $(use_enable pam)
126 +}
127 +
128 +src_compile() {
129 + LC_ALL=POSIX emake comm.h term.h
130 + emake osdef.h
131 +
132 + emake -C doc screen.info
133 + default
134 +}
135 +
136 +src_install() {
137 + local DOCS=(
138 + README ChangeLog INSTALL TODO NEWS* patchlevel.h
139 + doc/{FAQ,README.DOTSCREEN,fdpat.ps,window_to_display.ps}
140 + )
141 +
142 + emake DESTDIR="${D}" SCREEN=screen-${PV} install
143 +
144 + local tmpfiles_perms tmpfiles_group
145 +
146 + if use multiuser || use prefix
147 + then
148 + fperms 4755 /usr/bin/screen-${PV}
149 + tmpfiles_perms="0755"
150 + tmpfiles_group="root"
151 + else
152 + fowners root:utmp /usr/bin/screen-${PV}
153 + fperms 2755 /usr/bin/screen-${PV}
154 + tmpfiles_perms="0775"
155 + tmpfiles_group="utmp"
156 + fi
157 +
158 + newtmpfiles - screen.conf <<<"d /tmp/screen ${tmpfiles_perms} root ${tmpfiles_group}"
159 +
160 + insinto /usr/share/screen
161 + doins terminfo/{screencap,screeninfo.src}
162 +
163 + insinto /etc
164 + doins "${FILESDIR}"/screenrc
165 +
166 + pamd_mimic_system screen auth
167 +
168 + dodoc "${DOCS[@]}"
169 +}
170 +
171 +pkg_postinst() {
172 + if [[ -z ${REPLACING_VERSIONS} ]]
173 + then
174 + elog "Some dangerous key bindings have been removed or changed to more safe values."
175 + elog "We enable some xterm hacks in our default screenrc, which might break some"
176 + elog "applications. Please check /etc/screenrc for information on these changes."
177 + fi
178 +
179 + # Add /tmp/screen in case it doesn't exist yet. This should solve
180 + # problems like bug #508634 where tmpfiles.d isn't in effect.
181 + local rundir="${EROOT%/}/tmp/screen"
182 + if [[ ! -d ${rundir} ]] ; then
183 + if use multiuser || use prefix ; then
184 + tmpfiles_group="root"
185 + else
186 + tmpfiles_group="utmp"
187 + fi
188 + mkdir -m 0775 "${rundir}"
189 + chgrp ${tmpfiles_group} "${rundir}"
190 + fi
191 +
192 + ewarn "This revision changes the screen socket location to ${rundir}"
193 +}