Magellan Linux

Contents of /branches/R11-stable/core/screen/screen-4.0.3-r7.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 20809 - (show annotations) (download)
Tue Feb 11 09:51:25 2014 UTC (10 years, 2 months ago) by niro
File size: 2444 byte(s)
-release branches/R11-stable
1 # $Id$
2
3 PNAME="screen"
4 PVER="4.0.3"
5 PBUILD="r7"
6
7 PCAT="app-misc"
8
9 DESCRIPTION="Screen is a full-screen window manager that multiplexes a physical terminal between several processes."
10 HOMEPAGE="http://www.gnu.org/software/screen/"
11
12 DEPEND=">= sys-libs/ncurses-5.9
13 >= sys-libs/pam-1.1"
14
15 SDEPEND=">= virtual/sed
16 >= sys-dev/automake-4
17 >= sys-dev/autoconf-5"
18
19 SRCFILE="${PNAME}-${PVER}.tar.gz"
20 SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
21
22 sminclude mtools
23
24 SRC_URI=(
25 gnu://${PNAME}/${SRCFILE}
26 mirror://${PNAME}/${SRCFILE}
27 mirror://${PNAME}/screen.pamd-systemauth
28 mirror://${PNAME}/${PNAME}-4.0.1-int-overflow-fix.patch
29 mirror://${PNAME}/${PNAME}-4.0.2-no-libelfs-or-elfutils-dep.patch
30 mirror://${PNAME}/${PNAME}-4.0.2-no-utempter-dep.patch
31 )
32
33 UP2DATE="updatecmd_gnu ${PNAME} gz"
34
35 src_prepare()
36 {
37 munpack ${SRCFILE} || die
38 cd ${SRCDIR}
39
40 # fix integer overflow vulnerability
41 mpatch ${PNAME}-4.0.1-int-overflow-fix.patch || die
42
43 # remove libelf and elfutil dep even when they are found on the system
44 mpatch ${PNAME}-4.0.2-no-libelfs-or-elfutils-dep.patch || die
45
46 # same for utempter
47 mpatch ${PNAME}-4.0.2-no-utempter-dep.patch || die
48
49 # fix some pathes
50 sed -i \
51 -e "s:/usr/local/etc/screenrc:/etc/screenrc:g;
52 s:/usr/local/screens:/var/run/screen:g;
53 s:/local/etc/screenrc:/etc/screenrc:g;
54 s:/etc/utmp:/var/run/utmp:g;
55 s:/local/screens/S-:/var/run/screen/S-:g" doc/screen.1 || die
56
57 # rebuild configure
58 export WANT_AUTOCONF=2.5
59 autoconf || die
60 }
61
62 src_compile()
63 {
64 cd ${SRCDIR}
65
66 # screen needs some special cflags ...
67 export CFLAGS="${CFLAGS} -DPTYMODE=0620 -DPTYGROUP=4 -DUSE_PAM" || die
68 export CXXFLAGS="${CFLAGS}" || die
69
70 mconfigure \
71 --with-socket-dir=/var/run/screen \
72 --with-sys-screenrc=/etc/screenrc \
73 --enable-rxvt_osc \
74 --enable-telnet \
75 --enable-colors256 \
76 --enable-pam || die
77
78 LC_ALL=POSIX make term.h || die
79 mmake || die
80 }
81
82 src_install()
83 {
84 cd ${SRCDIR}
85
86 # needed directories
87 minstalldir /usr/share/terminfo || die
88
89 mmake DESTDIR=${BINDIR} install || die
90
91 # install pam auth
92 minstallpam screen.pamd-systemauth screen || die
93
94 # install termcap
95 minstallfile terminfo/screencap /usr/share/terminfo || die
96
97 # install screenrc
98 minstalletc etc/etcscreenrc screenrc || die
99
100 # mark this dir undeletable
101 mkeepdir /var/run/screen || die
102
103 # fix some permissions
104 mchmod u+s /usr/bin/screen || die
105 mchmod go-w /var/run/screen || die
106
107 minstalldocs ChangeLog COPYING FAQ NEWS* README TODO || die
108 }