else if (ParseSaveStr(act, &BufferFile))
break;
if (msgok)
---- ./screen.c.org Mon Feb 11 13:39:06 2002
-+++ ./screen.c Wed Jun 19 14:00:37 2002
+--- screen-4.1/screen.c~ 2010-02-24 14:46:32.000000000 +0200
++++ screen-4.1/screen.c 2010-02-24 14:47:04.352924220 +0200
@@ -109,6 +109,7 @@
FILE *dfp;
#endif
(c >= '0' && c <= '9') ||
(c >= 'a' && c <= 'z') ||
(c >= 'A' && c <= 'Z')))
-@@ -435,9 +441,6 @@
+@@ -479,9 +479,6 @@
timestring = SaveStr("%c:%s %M %d %H%? %l%?");
- wlisttit = SaveStr("Num Name%=Flags");
- wliststr = SaveStr("%3n %t%=%f");
+ wlisttit = SaveStr(" Num Name%=Flags");
+ wliststr = SaveStr("%4n %t%=%f");
-#ifdef COPY_PASTE
- BufferFile = SaveStr(DEFAULT_BUFFERFILE);
-#endif
--- /dev/null
+--- screen-4.1/Makefile.in~ 2010-02-24 08:36:22.000000000 +0200
++++ screen-4.1/Makefile.in 2010-03-08 16:40:56.173597614 +0200
+@@ -25,7 +25,7 @@
+ GIT_REV = "`git describe --always 2>/dev/null`"
+ DEFS = @DEFS@ -DGIT_REV=\"$(GIT_REV)\"
+
+-ETCSCREENRC = $(prefix)/etc/screenrc
++ETCSCREENRC = /etc/screenrc
+ SCREENENCODINGS = $(datadir)/screen/utf8encodings
+
+ CC = @CC@
---- screen-4.0.2/doc/screen.texinfo.orig 2003-12-05 14:51:46.000000000 +0100
-+++ screen-4.0.2/doc/screen.texinfo 2003-12-06 21:29:32.264574064 +0100
+--- screen-4.1/doc/screen.texinfo~ 2010-02-24 14:44:59.000000000 +0200
++++ screen-4.1/doc/screen.texinfo 2010-02-24 14:45:42.346265479 +0200
@@ -3,14 +3,14 @@
@c vi:set wm=5
@setfilename screen.info
@finalout
@setchapternewpage odd
@c %**end of header
- @set version 4.0.2
+ @set version 4.1.0
+@dircategory Shell utilities:
@direntry
-diff -u screen-4.0.2/input.c screen-4.0.2/input.c
---- screen-4.0.2/input.c 2006-02-22 23:38:20.000000000 +0200
-+++ screen-4.0.2/input.c 2006-02-23 00:31:34.000000000 +0200
+--- screen-4.1/input.c~ 2010-02-24 14:51:55.000000000 +0200
++++ screen-4.1/input.c 2010-02-24 14:53:38.919505608 +0200
@@ -38,7 +38,7 @@
struct inpline
char *inpstring; /* the prompt */
int inpstringlen; /* length of the prompt */
int inpmode; /* INP_NOECHO, INP_RAW, INP_EVERY */
-@@ -116,8 +116,8 @@
- int maxlen;
- struct inpdata *inpdata;
-
+@@ -133,8 +133,8 @@
+ if (!flayer)
+ return;
+
- if (len > 100)
- len = 100;
+ if (len > MAX_INPUTLINE - 1)
if (!(mode & INP_NOECHO))
{
maxlen = flayer->l_width - 1 - strlen(istr);
-diff -u screen-4.0.2/process.c screen-4.0.2/process.c
---- screen-4.0.2/process.c 2006-02-23 00:27:01.000000000 +0200
-+++ screen-4.0.2/process.c 2006-02-23 00:32:27.000000000 +0200
-@@ -1891,7 +1891,7 @@
+--- screen-4.1/process.c~ 2010-02-24 15:30:55.000000000 +0200
++++ screen-4.1/process.c 2010-02-24 15:32:17.993069465 +0200
+@@ -1777,7 +1777,7 @@
+ s = *args;
+ if (!args[0])
+ {
+- Input("Stuff:", 100, INP_COOKED, StuffFin, NULL, 0);
++ Input("Stuff:", MAX_INPUTLINE - 1, INP_COOKED, StuffFin, NULL, 0);
+ break;
+ }
+ n = *argl;
+@@ -2063,7 +2063,7 @@
ChangeAKA(fore, *args, strlen(*args));
break;
case RC_COLON:
-- Input(":", 100, INP_COOKED, Colonfin, NULL);
-+ Input(":", MAX_INPUTLINE - 1, INP_COOKED, Colonfin, NULL);
+- Input(":", 100, INP_EVERY, Colonfin, NULL, 0);
++ Input(":", MAX_INPUTLINE - 1, INP_EVERY, Colonfin, NULL, 0);
if (*args && **args)
{
s = *args;
-@@ -3004,7 +3004,7 @@
+@@ -3236,7 +3236,7 @@
Msg(0, "%s: password: window required", rc_name);
break;
}
-- Input("New screen password:", 100, INP_NOECHO, pass1, display ? (char *)D_user : (char *)users);
-+ Input("New screen password:", MAX_INPUTLINE - 1, INP_NOECHO, pass1, display ? (char *)D_user : (char *)users);
+- Input("New screen password:", 100, INP_NOECHO, pass1, display ? (char *)D_user : (char *)users, 0);
++ Input("New screen password:", MAX_INPUTLINE - 1, INP_NOECHO, pass1, display ? (char *)D_user : (char *)users, 0);
}
break;
#endif /* PASSWORD */
-only in patch2:
-unchanged:
+@@ -6258,7 +6258,7 @@
+ free((char *)u->u_password);
+ u->u_password = SaveStr(buf);
+ bzero(buf, strlen(buf));
+- Input("Retype new password:", 100, INP_NOECHO, pass2, data, 0);
++ Input("Retype new password:", MAX_INPUTLINE - 1, INP_NOECHO, pass2, data, 0);
+ }
+
+ static void
--- screen-4.0.2/screen.h~ 2006-02-23 00:27:51.000000000 +0200
+++ screen-4.0.2/screen.h 2006-02-23 00:31:32.000000000 +0200
@@ -270,6 +270,7 @@
---- screen-3.9.11/configure.in.orig Fri Jun 28 20:35:41 2002
-+++ screen-3.9.11/configure.in Fri Jun 28 20:48:05 2002
-@@ -195,14 +195,6 @@
+--- screen-4.1/configure.in~ 2010-02-24 14:49:45.000000000 +0200
++++ screen-4.1/configure.in 2010-02-24 14:51:15.206024475 +0200
+@@ -201,14 +201,6 @@
#endif
], LIBS="$LIBS -lsocket -linet";seqptx=1)
-[AC_CHECK_HEADER(dwarf.h, AC_DEFINE(SVR4) AC_DEFINE(BUGGYGETLOGIN),
-[AC_CHECK_HEADER(elf.h, AC_DEFINE(SVR4) AC_DEFINE(BUGGYGETLOGIN))])]
-,LIBS="$oldlibs")
+ AC_CHECK_HEADERS([stropts.h string.h strings.h])
AC_CHECKING(for Solaris 2.x)
- AC_EGREP_CPP(yes,
-@@ -850,9 +842,6 @@
+@@ -885,9 +877,6 @@
dnl
dnl **** loadav ****
dnl
---- screen-3.9.9/configure.in.orig Mon Jun 11 20:11:26 2001
-+++ screen-3.9.9/configure.in Mon Jun 11 20:25:12 2001
-@@ -619,14 +619,17 @@
+--- screen-4.1/configure.in~ 2010-03-08 16:29:51.000000000 +0200
++++ screen-4.1/configure.in 2010-03-08 16:30:07.081578872 +0200
+@@ -664,6 +656,12 @@
tgetent((char *)0, (char *)0);
#endif
],,
LIBS="-ltermcap $olibs"
AC_CHECKING(libtermcap)
AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
- LIBS="-ltermlib $olibs"
- AC_CHECKING(libtermlib)
--AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
+@@ -673,10 +671,7 @@
+ LIBS="-lncursesw $olibs"
+ AC_CHECKING(libncursesw)
+ AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
-LIBS="-lncurses $olibs"
-AC_CHECKING(libncurses)
- AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
--AC_MSG_ERROR(!!! no tgetent - no screen))))))
-+AC_MSG_ERROR(!!! no tgetent - no screen)))))))
+-AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
+-AC_MSG_ERROR(!!! no tgetent - no screen)))))))
++AC_MSG_ERROR(!!! no tgetent - no screen))))))))
+
+ AC_TRY_RUN([
-diff -ur -x Makefile -x configure -x screen.info screen-4.0.3/ansi.c screen-4.0.3.wiget/ansi.c
---- screen-4.0.3/ansi.c 2003-12-05 14:57:05.000000000 +0100
-+++ screen-4.0.3.wiget/ansi.c 2008-03-21 22:19:42.000000000 +0100
-@@ -1496,12 +1496,14 @@
+--- screen-4.1/ansi.c~ 2010-02-24 15:33:05.000000000 +0200
++++ screen-4.1/ansi.c 2010-02-24 15:42:23.596133932 +0200
+@@ -1530,12 +1530,14 @@
}
#endif
#ifdef RXVT_OSC
-- if (typ == 0 || typ == 1 || typ == 20 || typ == 39 || typ == 49)
-+ if (typ == 0 || typ == 1 || typ == 20 || typ == 39 || typ == 49 || typ == 10 || typ == 11 )
+- if (typ == 0 || typ == 1 || typ == 2 || typ == 20 || typ == 39 || typ == 49)
++ if (typ == 0 || typ == 1 || typ == 2 || typ == 20 || typ == 39 || typ == 49 || typ == 10 || typ == 11 )
{
int typ2;
typ2 = typ / 10;
Redisplay(0);
}
}
-Tylko w screen-4.0.3.wiget: ansi.c~
-Tylko w screen-4.0.3.wiget: autom4te.cache
-Tylko w screen-4.0.3.wiget: config.h
-Tylko w screen-4.0.3.wiget: config.log
-Tylko w screen-4.0.3.wiget: config.status
-diff -ur -x Makefile -x configure -x screen.info screen-4.0.3/display.c screen-4.0.3.wiget/display.c
--- screen-4.0.3/display.c 2003-12-05 14:45:41.000000000 +0100
+++ screen-4.0.3.wiget/display.c 2008-03-21 22:21:46.000000000 +0100
@@ -3053,7 +3053,7 @@
}
#endif
Tylko w screen-4.0.3.wiget: display.c~
-diff -ur -x Makefile -x configure -x screen.info screen-4.0.3/display.h screen-4.0.3.wiget/display.h
--- screen-4.0.3/display.h 2003-07-01 16:01:42.000000000 +0200
+++ screen-4.0.3.wiget/display.h 2008-03-21 22:08:44.000000000 +0100
@@ -113,7 +113,7 @@
Summary(tr.UTF-8): Bir uçbirimde birden fazla oturumu düzenler
Summary(uk.UTF-8): Менеджер екрану, що підтримує кілька логінів з одного терміналу
Name: screen
-Version: 4.0.3
-Release: 8
+Version: 4.1
+Release: 0.4
License: GPL
Group: Applications/Terminal
-Source0: ftp://ftp.uni-erlangen.de/pub/utilities/screen/%{name}-%{version}.tar.gz
-# Source0-md5: 8506fd205028a96c741e4037de6e3c42
+Source0: http://git.savannah.gnu.org/cgit/screen.git/snapshot/screen-7851249fa3e5a9ce00ad3bf8bd0b417acb335f84.tar.gz
+# Source0-md5: a1b42f6505230ecdb943d95231b3e358
Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
# Source1-md5: 236166e774cee788cf594b05dd1dd70d
Source2: %{name}.pamd
Source3: screenrc
-Patch0: %{name}-tty.patch
Patch1: %{name}-compat21.patch
Patch2: %{name}-manual.patch
Patch3: %{name}-ia64.patch
Patch11: %{name}-inputline-size.patch
Patch12: %{name}-screenrc.patch
Patch13: %{name}-osc.patch
-Patch14: %{name}-comment.patch
Patch15: %{name}-statusline-encoding.patch
+Patch16: %{name}-etcscreenrc.patch
URL: http://www.gnu.org/software/screen/
BuildRequires: autoconf
BuildRequires: automake
машиною.
%prep
-%setup -q
-%patch0 -p1
+%setup -qc
+mv screen-*/src/* .
+
%patch1 -p0
%patch2 -p0
%patch3 -p0
%patch10 -p1
%patch11 -p1
%patch12 -p1
-%patch13 -p1
-%patch14 -p0
+#%patch13 -p1 # my brain farted here, see if you have better luck
%patch15 -p0
%build
%{__aclocal}
+%{__autoheader}
%{__autoconf}
+CFLAGS="%{rpmcflags} -DMAXWIN=128"
%configure \
- --with-sys-screenrc=%{_sysconfdir}/screenrc \
--enable-pam \
--enable-colors256 \
--enable-rxvt_osc \
+ --with-pty-mode=0620 \
+ --with-pty-group=5 \
--disable-socket-dir
-for file in *.dist; do
- cp -f $file ${file%.dist}
-done
-
-%{__make} \
- CFLAGS="%{rpmcflags} -DMAXWIN=128"
+%{__make} -j1
cd doc
rm -f screen.info*
install -d $RPM_BUILD_ROOT{%{_bindir},%{_datadir}/screen/utf8encodings} \
$RPM_BUILD_ROOT{/etc/{skel,pam.d},%{_mandir}/{,pl}/man1,%{_infodir}}
-install screen $RPM_BUILD_ROOT%{_bindir}
-install doc/screen.1 $RPM_BUILD_ROOT%{_mandir}/man1
-install doc/screen.info* $RPM_BUILD_ROOT%{_infodir}
-install etc/etcscreenrc $RPM_BUILD_ROOT%{_sysconfdir}/screenrc
-install %{SOURCE3} $RPM_BUILD_ROOT/etc/skel/.screenrc
-install utf8encodings/* $RPM_BUILD_ROOT%{_datadir}/screen/utf8encodings
+install -p screen $RPM_BUILD_ROOT%{_bindir}
+cp -a doc/screen.1 $RPM_BUILD_ROOT%{_mandir}/man1
+cp -a doc/screen.info* $RPM_BUILD_ROOT%{_infodir}
+cp -a etc/etcscreenrc $RPM_BUILD_ROOT%{_sysconfdir}/screenrc
+cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/skel/.screenrc
+cp -a utf8encodings/* $RPM_BUILD_ROOT%{_datadir}/screen/utf8encodings
+cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/screen
bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
-install %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/screen
rm -f $RPM_BUILD_ROOT%{_mandir}/README.screen-non-english-man-pages
%clean
%defattr(644,root,root,755)
%doc NEWS README ChangeLog doc/{FAQ,README.DOTSCREEN} etc/screenrc
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/screenrc
+%config(noreplace) %verify(not md5 mtime size) /etc/pam.d/*
+%attr(600,root,root) /etc/skel/.screenrc
%attr(755,root,root) %{_bindir}/screen
%{_datadir}/screen
-%attr(600,root,root) /etc/skel/.screenrc
%{_mandir}/man1/*
%lang(ja) %{_mandir}/ja/man1/*
%lang(pl) %{_mandir}/pl/man1/*
%{_infodir}/screen.info*
-%config(noreplace) %verify(not md5 mtime size) /etc/pam.d/*