+# TODO: check interoperability with 4.0.x and 4.1.x (or don't care about it):
+# 4.2.1 string buffer sizes are enlargered upstream, but to different values than Debian's 4.1.x
#
# Conditional build:
-%bcond_with fifo # force using fifos even if sockets detected
+%bcond_without fifo # force using fifos even if sockets detected
# TODO
-# - should we switch back fifos forcibly (so you could resume 4.0 sessions with 4.1?, stalled for me anyway)
-# configure: checking socket implementation...
-# - you are normal
-# - both sockets and fifos usable. let's take sockets.
# - from changelog: 'maxwin' can now be used to increase the number of maximum windows.
Summary: Screen - Manages multiple sessions on one tty
Summary(de.UTF-8): Screen - Verwaltet mehrere Sitzungen an einem tty
Summary(tr.UTF-8): Bir uçbirimde birden fazla oturumu düzenler
Summary(uk.UTF-8): Менеджер екрану, що підтримує кілька логінів з одного терміналу
Name: screen
-# 4.0 stable is on SCREEN_4_0 brach
-Version: 4.1.0
-Release: 1.5
+Version: 4.5.1
+Release: 1
License: GPL v3+
Group: Applications/Terminal
-Source0: http://git.savannah.gnu.org/cgit/screen.git/snapshot/%{name}-cbaa666d4f21988164068a38ac915f8b4f3c4da3.tar.gz
-# Source0-md5: 8acbe428e5d3071c20c3981183009b73
+Source0: http://ftp.gnu.org/gnu/screen/%{name}-%{version}.tar.gz
+# Source0-md5: a8c5da2f42f8a18fa4dada2419d1549b
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: %{name}rc
-Patch1: %{name}-compat21.patch
Patch2: %{name}-manual.patch
Patch3: %{name}-ia64.patch
Patch4: %{name}-info.patch
Patch5: %{name}-debian_fixed.patch
-Patch6: %{name}-nolibtermcap.patch
Patch7: %{name}-no_hardcoded_term_sequences.patch
Patch8: %{name}-home_etc.patch
Patch9: %{name}-no-libs.patch
-Patch10: %{name}-varargs.patch
-Patch11: %{name}-inputline-size.patch
Patch12: %{name}-screenrc.patch
Patch13: %{name}-osc.patch
Patch15: %{name}-statusline-encoding.patch
-Patch16: screen-ipv6.patch
-Patch17: screen-E3.patch
-Patch18: screen-4.1.0-suppress_remap.patch
+Patch17: %{name}-E3.patch
+Patch18: %{name}-4.1.0-suppress_remap.patch
+Patch22: 52fix_%{name}_utf8_nfd.patch
+Patch24: 60-644788-%{name}-4.1.0-4.0.3-interoperability.patch
URL: http://www.gnu.org/software/screen/
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: texinfo
BuildRequires: utempter-devel
Requires: pam >= 0.77.3
-Requires: systemd-units >= 38
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
машиною.
%prep
-%setup -qc
-mv screen-*/src/* .
-
-%patch1 -p0
-%patch2 -p0
+%setup -q
+%patch2 -p1
%patch3 -p0
%patch4 -p1
%patch5 -p1
-%patch6 -p1
# DON'T ENABLE IT UNLESS YOU REALLY FIX IT
# (it's heavily broken - note that some sequences should be get for
# $TERM before running screen instance, and others for TERM=screen!)
###%patch7 -p1
#%patch8 -p1
%patch9 -p1
-%patch10 -p1
-%patch11 -p1
%patch12 -p1
#%patch13 -p1 # my brain farted here, see if you have better luck
-%patch15 -p0
-%patch16 -p2
+%patch15 -p1
%patch17 -p2
%patch18 -p1
+%patch22 -p1
+%patch24 -p1
%build
%{__aclocal}
--with-pty-group=5 \
--disable-socket-dir
+%if %{with fifo}
+if ! grep -q "define.*NAMEDPIPE.*1" config.h; then
+ echo "bcond with fifo but fifos not enabled!"
+ exit 1
+fi
+%endif
+
%{__make} -j1
cd doc
cp -a doc/screen.1 $RPM_BUILD_ROOT%{_mandir}/man1
cp -a doc/screen.info* $RPM_BUILD_ROOT%{_infodir}
-install etc/etcscreenrc $RPM_BUILD_ROOT%{_sysconfdir}/screenrc
+cp -p etc/etcscreenrc $RPM_BUILD_ROOT%{_sysconfdir}/screenrc
echo -e "\n\n" >> $RPM_BUILD_ROOT%{_sysconfdir}/screenrc
cat %{SOURCE3} > $RPM_BUILD_ROOT%{_sysconfdir}/screenrc
cp -a utf8encodings/* $RPM_BUILD_ROOT%{_datadir}/screen/utf8encodings
-cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/screen
+cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/screen
bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
rm -f $RPM_BUILD_ROOT%{_mandir}/README.screen-non-english-man-pages
%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/*
+%config(noreplace) %verify(not md5 mtime size) /etc/pam.d/screen
%attr(755,root,root) %{_bindir}/screen
%{_datadir}/screen
-%{_mandir}/man1/*
-%lang(ja) %{_mandir}/ja/man1/*
-%lang(pl) %{_mandir}/pl/man1/*
+%{_mandir}/man1/screen.1*
+%lang(ja) %{_mandir}/ja/man1/screen.1*
+%lang(pl) %{_mandir}/pl/man1/screen.1*
%{_infodir}/screen.info*