diff options
author | Jeremy Olexa <darkside@gentoo.org> | 2012-05-24 04:13:41 +0000 |
---|---|---|
committer | Jeremy Olexa <darkside@gentoo.org> | 2012-05-24 04:13:41 +0000 |
commit | e767fa95cc5871988d05de6150f075cc5c5c792f (patch) | |
tree | 9821caadec4adc48f2e194c010ed96e2a33a346e /app-misc/screen | |
parent | Inherit user for enewuser/etc... (diff) | |
download | historical-e767fa95cc5871988d05de6150f075cc5c5c792f.tar.gz historical-e767fa95cc5871988d05de6150f075cc5c5c792f.tar.bz2 historical-e767fa95cc5871988d05de6150f075cc5c5c792f.zip |
Revision bump to disable socket dir (and use ~/.screen/ instead) for cases where /var/run is tmpfs, etc. This seems more portable and has been the best solution proposed on bug 333821
Package-Manager: portage-2.1.10.62/cvs/Linux x86_64
Diffstat (limited to 'app-misc/screen')
-rw-r--r-- | app-misc/screen/ChangeLog | 11 | ||||
-rw-r--r-- | app-misc/screen/Manifest | 13 | ||||
-rw-r--r-- | app-misc/screen/screen-4.0.3-r5.ebuild | 166 |
3 files changed, 177 insertions, 13 deletions
diff --git a/app-misc/screen/ChangeLog b/app-misc/screen/ChangeLog index 18974c0ead53..57c54e5071e8 100644 --- a/app-misc/screen/ChangeLog +++ b/app-misc/screen/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for app-misc/screen -# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-misc/screen/ChangeLog,v 1.163 2011/10/18 19:25:31 jer Exp $ +# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/app-misc/screen/ChangeLog,v 1.164 2012/05/24 04:13:41 darkside Exp $ + +*screen-4.0.3-r5 (24 May 2012) + + 24 May 2012; Jeremy Olexa <darkside@gentoo.org> +screen-4.0.3-r5.ebuild: + Revision bump to disable socket dir (and use ~/.screen/ instead) for cases + where /var/run is tmpfs, etc. This seems more portable and has been the best + solution proposed on bug 333821 18 Oct 2011; Jeroen Roovers <jer@gentoo.org> -files/4.0.3-extend-d_termname.patch, diff --git a/app-misc/screen/Manifest b/app-misc/screen/Manifest index 308dc14bdc77..908db77a6aeb 100644 --- a/app-misc/screen/Manifest +++ b/app-misc/screen/Manifest @@ -1,6 +1,3 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - AUX 4.0.2-64bit-time.patch 298 RMD160 3278d227f1f5c5bce8b7369e9c44fd7e35ac804c SHA1 ab4f298c3c46fe9dad550009def0db8c44b13d22 SHA256 d974e14a1d8e32a0a05b211cd76d9335a066c6b85538505f1d95f25209c99057 AUX 4.0.2-no-libelf.patch 555 RMD160 4af1c158b0a4e0124fec8347090bf5d25634fdf5 SHA1 fe33038030600e60369374b994c47e68e2bb6bd3 SHA256 56cc1f7b2d02ba230501c7c87da170fa791639cb1f36b2b0b87d8644e5372059 AUX 4.0.2-no-pty.patch 392 RMD160 d29aec55c6b76f66a8340096f627afe2e4dca3e8 SHA1 bd1328e0dbb321397692846b5c2ac62df1885a9c SHA256 edc29bc7b7bea89c2f937ca9c95f2ce51b437e4ea042741d9f4ac6d7954178d5 @@ -16,12 +13,6 @@ AUX screen-4.0.3-setenv_autoconf.patch 2485 RMD160 232a7c531f2382ac4a0c618948b13 AUX screenrc 10409 RMD160 198c26126bce3f51352166d83d124606a922b396 SHA1 f0f34eb17abffb0bc0435cd33f17c2ea91b8d04f SHA256 f2fbb2de649df9d6b0afbb913d002eb7fdabec5525930515452c286dffcde072 DIST screen-4.0.3.tar.gz 840602 RMD160 8c3903c1642ae30fd9d5706298919428552f7754 SHA1 7bc6e2f0959ffaae6f52d698c26c774e7dec3545 SHA256 78f0d5b1496084a5902586304d4a73954b2bfe33ea13edceecf21615c39e6c77 EBUILD screen-4.0.3-r4.ebuild 5253 RMD160 6fdc9f46cf7cb88cd38244fda03fe7d10492b19c SHA1 019f81a7ed4240a15e73e4edfa7521329e572aef SHA256 18dcaa3f241a96a3347f41db7e27ce97c5321f29e0c483910b323d19c594cab5 -MISC ChangeLog 22995 RMD160 f14154fb9ebbd95287253cecb73a4a5ad6a8d2a4 SHA1 fdfdd94663730ea00cedf17a0018d1694369fbf5 SHA256 ef1246e83cf9e927de8e4f6b0914d18707ec929359c0d9f9ee74c38512037dac +EBUILD screen-4.0.3-r5.ebuild 5287 RMD160 c562721357908cdb658769d9dd31a82238e76a91 SHA1 51b95ddf43b1a6eca5d8d0695fe6929796d8085f SHA256 12b19555f8785f7a6b2230515707aaac23cb4f15103b4419ec313cb63fbeace9 +MISC ChangeLog 23298 RMD160 3e811d5dea87fa787a9cd0955753321309dfa530 SHA1 a7f8d768a071be5ba8f05d12fcd0bc1891b25626 SHA256 449ae0deab7ef8314e5a901e62aba050431f49538ec338b8823878a7fce92021 MISC metadata.xml 1697 RMD160 e3f187509d13f8e939814733c9876407006ca0ab SHA1 53a6d55362e68c62329b6a644b5b3f74c436f272 SHA256 58279e41070c88041df5acd625067c947b9df46ca68fb3ae3cd72c268ae30c81 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2.0.17 (GNU/Linux) - -iEYEARECAAYFAk6d0rUACgkQVWmRsqeSphPrEQCffxqNIdHFGcE3Qurg3N3cyAm1 -fJ4AnRAefE29n1aAY0rRC9CI2OkK1BAV -=jUMP ------END PGP SIGNATURE----- diff --git a/app-misc/screen/screen-4.0.3-r5.ebuild b/app-misc/screen/screen-4.0.3-r5.ebuild new file mode 100644 index 000000000000..1ae34912cb7d --- /dev/null +++ b/app-misc/screen/screen-4.0.3-r5.ebuild @@ -0,0 +1,166 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-misc/screen/screen-4.0.3-r5.ebuild,v 1.1 2012/05/24 04:13:41 darkside Exp $ + +EAPI="3" + +WANT_AUTOCONF="2.5" + +inherit eutils flag-o-matic toolchain-funcs pam autotools + +DESCRIPTION="Full-screen window manager that multiplexes physical terminals between several processes" +HOMEPAGE="http://www.gnu.org/software/screen/" +SRC_URI="ftp://ftp.uni-erlangen.de/pub/utilities/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~hppa-hpux ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="debug nethack pam selinux multiuser" + +RDEPEND=">=sys-libs/ncurses-5.2 + pam? ( virtual/pam ) + selinux? ( sec-policy/selinux-screen )" +DEPEND="${RDEPEND}" + +pkg_setup() { + # Make sure utmp group exists, as it's used later on. + enewgroup utmp 406 +} + +src_prepare() { + # Bug 34599: integer overflow in 4.0.1 + # (Nov 29 2003 -solar) + epatch "${FILESDIR}"/screen-4.0.1-int-overflow-fix.patch + + # Bug 31070: configure problem which affects alpha + # (13 Jan 2004 agriffis) + epatch "${FILESDIR}"/screen-4.0.1-vsprintf.patch + + # uclibc doesnt have sys/stropts.h + if ! (echo '#include <sys/stropts.h>' | $(tc-getCC) -E - &>/dev/null) ; then + epatch "${FILESDIR}"/4.0.2-no-pty.patch + fi + + # Don't use utempter even if it is found on the system + epatch "${FILESDIR}"/4.0.2-no-utempter.patch + + # Don't link against libelf even if it is found on the system + epatch "${FILESDIR}"/4.0.2-no-libelf.patch + + # Patch for time function on 64bit systems + epatch "${FILESDIR}"/4.0.2-64bit-time.patch + + # Patch that makes %u work for windowlist -b formats + epatch "${FILESDIR}"/4.0.2-windowlist-multiuser-fix.patch + + # Open tty in non-blocking mode + epatch "${FILESDIR}"/4.0.2-nonblock.patch + + # compability for sys-devel/autoconf-2.62 + epatch "${FILESDIR}"/screen-4.0.3-config.h-autoconf-2.62.patch + + # crosscompile patch + epatch "${FILESDIR}"/"${P}"-crosscompile.patch + + # sched.h is a system header and causes problems with some C libraries + mv sched.h _sched.h || die + sed -i '/include/s:sched.h:_sched.h:' screen.h || die + + # Allow for more rendition (color/attribute) changes in status bars + sed -i \ + -e "s:#define MAX_WINMSG_REND 16:#define MAX_WINMSG_REND 64:" \ + screen.c \ + || die "sed screen.c failed" + + # Fix manpage. + sed -i \ + -e "s:/usr/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \ + -e "s:/usr/local/screens:${EPREFIX}/var/run/screen:g" \ + -e "s:/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \ + -e "s:/etc/utmp:${EPREFIX}/var/run/utmp:g" \ + -e "s:/local/screens/S-:${EPREFIX}/var/run/screen/S-:g" \ + doc/screen.1 \ + || die "sed doc/screen.1 failed" + + # proper setenv detection for Solaris + epatch "${FILESDIR}"/${P}-setenv_autoconf.patch + + # Allow TERM string large enough to use with rxvt-unicode-256color + # Allow usernames up to 32 chars + epatch "${FILESDIR}"/${PV}-extend-d_termname-ng2.patch + + # reconfigure + eautoconf +} + +src_configure() { + append-flags "-DMAXWIN=${MAX_SCREEN_WINDOWS:-100}" + + [[ ${CHOST} == *-solaris* ]] && append-libs -lsocket -lnsl + + use nethack || append-flags "-DNONETHACK" + use debug && append-flags "-DDEBUG" + + econf \ + --with-socket-dir="${EPREFIX}/var/run/screen" \ + --with-sys-screenrc="${EPREFIX}/etc/screenrc" \ + --with-pty-mode=0620 \ + --with-pty-group=5 \ + --enable-rxvt_osc \ + --enable-telnet \ + --enable-colors256 \ + $(use_enable pam) \ + $(use multiuser || echo --disable-socket-dir) + + # Second try to fix bug 12683, this time without changing term.h + # The last try seemed to break screen at run-time. + # (16 Jan 2003 agriffis) + LC_ALL=POSIX make term.h || die "Failed making term.h" +} + +src_install() { + dobin screen || die "dobin failed" + keepdir /var/run/screen || die "keepdir failed" + + if use multiuser || use prefix + then + fperms 4755 /usr/bin/screen || die "fperms failed" + else + fowners root:utmp /{usr/bin,var/run}/screen \ + || die "fowners failed, use multiuser USE-flag instead" + fperms 2755 /usr/bin/screen || die "fperms failed" + fi + + insinto /usr/share/screen + doins terminfo/{screencap,screeninfo.src} || die "doins failed" + insinto /usr/share/screen/utf8encodings + doins utf8encodings/?? || die "doins failed" + insinto /etc + doins "${FILESDIR}"/screenrc || die "doins failed" + + pamd_mimic_system screen auth || die "pamd_mimic_system failed" + + dodoc \ + README ChangeLog INSTALL TODO NEWS* patchlevel.h \ + doc/{FAQ,README.DOTSCREEN,fdpat.ps,window_to_display.ps} \ + || die "dodoc failed" + + doman doc/screen.1 || die "doman failed" + doinfo doc/screen.info* || die "doinfo failed" +} + +pkg_postinst() { + if use prefix; then + chmod 0777 "${EROOT}"/var/run/screen + elif use multiuser; then + chown root:0 "${EROOT}"/var/run/screen + chmod 0755 "${EROOT}"/var/run/screen + else + chown root:utmp "${EROOT}"/var/run/screen + chmod 0775 "${EROOT}"/var/run/screen + fi + + elog "Some dangerous key bindings have been removed or changed to more safe values." + elog "We enable some xterm hacks in our default screenrc, which might break some" + elog "applications. Please check /etc/screenrc for information on these changes." +} |