+# 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(es.UTF-8): Screen - Administra múltiples sesiones en un tty
Summary(tr.UTF-8): Bir uçbirimde birden fazla oturumu düzenler
Summary(uk.UTF-8): Менеджер екрану, що підтримує кілька логінів з одного терміналу
Name: screen
-Version: 4.1.0
-Release: 1.2
+Version: 4.4.0
+Release: 1
License: GPL v3+
Group: Applications/Terminal
-Source0: http://git.savannah.gnu.org/cgit/screen.git/snapshot/%{name}-a805439f6443fb0e00ac6caff92f99950c1ddda8.tar.gz
-# Source0-md5: 1aca27adebec4ab0c3a8ee683675a7fd
+Source0: http://ftp.gnu.org/gnu/screen/%{name}-%{version}.tar.gz
+# Source0-md5: d26e11a3648c2b11aaefa215a55dfd39
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
+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
машиною.
%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
+%patch17 -p2
+%patch18 -p1
+%patch22 -p1
+%patch24 -p1
%build
%{__aclocal}
%{__autoheader}
%{__autoconf}
+# --enable-locale vs --enable-use-locale - https://savannah.gnu.org/bugs/index.php?37528
CFLAGS="%{rpmcflags} -DMAXWIN=256"
%{?with_fifo:nore=1} \
%configure \
--enable-pam \
--enable-colors256 \
--enable-rxvt_osc \
+ --enable-telnet \
+ --enable-use-locale \
--with-sys-screenrc=/etc/screenrc \
--with-pty-mode=0620 \
--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*