# Conditional build:
%bcond_without ada # do not build Ada95 bindings
%bcond_without cxx # do not build C++ ncurses bindings and demo programs
-# # (this is neccessary to build ncurses linked with uClibc).
+# # (this is neccessary to build ncurses linked with uClibc).
%bcond_without gpm # build without (dynamically loadable) libgpm support
#
+%ifarch sparc64
+%undefine with_ada
+%endif
+
Summary: curses terminal control library
Summary(de.UTF-8): curses-Terminal-Control-Library
Summary(es.UTF-8): Biblioteca de control de terminal curses
Summary(tr.UTF-8): Terminal kontrol kitaplığı
Summary(uk.UTF-8): ncurses - нова бібліотека керування терміналами
Name: ncurses
-Version: 5.7
-Release: 13
+Version: 5.9
+Release: 5
License: distributable
Group: Libraries
Source0: ftp://dickey.his.com/ncurses/%{name}-%{version}.tar.gz
-# Source0-md5: cce05daf61a64501ef6cd8da1f727ec6
+# Source0-md5: 8cb9c412e5f2d96bc6f459aa8c6282a1
Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
# Source1-md5: 3b05ee835dc20c306e9af2a9d3fbf1f1
-# source: ftp://dickey.his.com/ncurses/5.7/
-Patch0: %{name}-5.7-20081115.patch.gz
-Patch1: %{name}-5.7-20081122.patch.gz
-Patch2: %{name}-5.7-20081129.patch.gz
-Patch3: %{name}-5.7-20081206.patch.gz
-Patch4: %{name}-5.7-20081213.patch.gz
-Patch5: %{name}-5.7-20081220.patch.gz
-Patch6: %{name}-5.7-20081227.patch.gz
-Patch7: %{name}-5.7-20090103.patch.gz
-Patch8: %{name}-5.7-20090104.patch.gz
-Patch9: %{name}-5.7-20090105.patch.gz
-Patch10: %{name}-5.7-20090110.patch.gz
-Patch11: %{name}-5.7-20090117.patch.gz
-Patch12: %{name}-5.7-20090124.patch.gz
-Patch13: %{name}-5.7-20090207.patch.gz
-Patch14: %{name}-5.7-20090214.patch.gz
+# source: ftp://dickey.his.com/ncurses/5.9/
+Patch0: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110409.patch.gz
+# Patch0-md5: c26b6e57a553d1589c351fd975db715e
+Patch1: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110416.patch.gz
+# Patch1-md5: 0cd0a279dae5cb10c1f39a6663620f64
+Patch2: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110423.patch.gz
+# Patch2-md5: 5cfe7668aeb60e7d49411171cf7a3794
+Patch3: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110430.patch.gz
+# Patch3-md5: 279b7bc2ee75fd87c203a06f33da7f28
+Patch4: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110507.patch.gz
+# Patch4-md5: 0b49ef1f095782b7ec11443bf65807f6
+Patch5: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110514.patch.gz
+# Patch5-md5: 9259e608ede1cda1be0121ce9ebc09b3
+Patch6: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110521.patch.gz
+# Patch6-md5: 02df6dc377fca5aa657bf433f557f369
+Patch7: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110528.patch.gz
+# Patch7-md5: 8f76dfdda995d28db6aa81df400acfc8
+Patch8: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110604.patch.gz
+# Patch8-md5: 9096cf2939126cf846879805fcacf54f
+Patch9: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110611.patch.gz
+# Patch9-md5: e015ed8feda52fdb42175972bbae524c
+Patch10: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110625.patch.gz
+# Patch10-md5: aef165913af8c4429ea6952ada251050
+Patch11: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110626.patch.gz
+# Patch11-md5: 8b142ba05d78a4ecf544bd332aca0e89
+Patch12: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110702.patch.gz
+# Patch12-md5: 82c3c02925e43fa229a474a6b0bff5b1
+Patch13: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110716.patch.gz
+# Patch13-md5: cd4d1a529ac4c7bc651d098b25103080
+Patch14: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110723.patch.gz
+# Patch14-md5: 41cc27d25b5af10aa44b961ec8e0c4c1
+Patch15: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110730.patch.gz
+# Patch15-md5: ca003e277018cfe72a1c3952423b0c48
+Patch16: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110807.patch.gz
+# Patch16-md5: ebe7c70030af0fe49c6573e43a78f7d8
+Patch17: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110813.patch.gz
+# Patch17-md5: 2766fb18a0d63837558ceae3b499ae01
+Patch18: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110820.patch.gz
+# Patch18-md5: 420ba8a3afeb6bf1309536194499d965
+Patch19: ftp://dickey.his.com/ncurses/5.9/ncurses-5.9-20110903.patch.gz
+# Patch19-md5: 2f63ea871e1895adaf7a9135c2936c4e
Patch100: %{name}-screen_hpa_fix.patch
Patch101: %{name}-xterm_hpa_fix.patch
Patch103: %{name}-xterm-home-end.patch
Patch104: %{name}-mouse_trafo-warning.patch
Patch105: %{name}-gnome-terminal.patch
-# not sure about this one, now all xterms have kbs defined (to ^H, not \177)
-# and only XTerm.ad.pl sets backspace to \177 instead of ^H
-Patch106: %{name}-xterm-kbs.patch
# disable rain demo; triggers gcc bug: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14998
Patch107: %{name}-no-rain-demo.patch
URL: http://dickey.his.com/ncurses/ncurses.html
BuildRequires: automake
-%{?with_ada:BuildRequires: gcc-ada}
+%if %{with ada}
+BuildRequires: gcc-ada
+# gnat bug: https://bugzilla.redhat.com/show_bug.cgi?id=613407
+# gcc patch: https://bugzilla.redhat.com/attachment.cgi?id=435931
+BuildRequires: libgnat-static
+%endif
%{?with_gpm:BuildRequires: gpm-devel}
%{?with_cxx:BuildRequires: libstdc++-devel}
+%{?with_ada:BuildRequires: m4}
+BuildRequires: pkgconfig
BuildRequires: sharutils
Obsoletes: libncurses5
Conflicts: terminfo < 5.4-0.6
%patch12 -p1
%patch13 -p1
%patch14 -p1
+%patch15 -p1
+%patch16 -p1
+%patch17 -p1
+%patch18 -p1
+%patch19 -p1
%patch100 -p1
%patch101 -p1
%patch103 -p1
%patch104 -p1
%patch105 -p1
-%patch106 -p1
%patch107 -p1
%build
unset TERMINFO || :
gcc_target=$(gcc -dumpmachine)
-gcc_version=$(gcc -dumpversion)
+gcc_version=%{cc_version}
CFLAGS="%{rpmcflags} -DPURE_TERMINFO -D_FILE_OFFSET_BITS=64"
+export PKG_CONFIG_LIBDIR=%{_libdir}/pkgconfig
cp -f /usr/share/automake/config.sub .
%if "%{pld_release}" == "ti"
--with%{!?debug:out}-debug \
--with%{!?with_gpm:out}-gpm \
--without-profile \
- --with-termlib \
--with-largefile \
+ --with-ospeed=unsigned \
--disable-lp64 \
+ --enable-hard-tabs \
+ --enable-xmc-glitch \
+ --enable-pc-files \
+ --enable-colorfgbg \
--with-chtype='long' \
--with-mmask-t='long' \
--with-manpage-aliases \
`[ "$t" != "widec" ] && echo --with-termlib=tinfo` \
`[ "$t" = "widec" ] && echo --with-termlib=tinfow --enable-widec --includedir=%{_includedir}w`
%else
- `[ "$t" = "narrowc" ] && echo --with-termlib=tinfo` \
- `[ "$t" = "wideclowcolor" ] && echo --with-termlib=tinfow --enable-widec --disable-ext-colors --includedir=%{_includedir}wlc` \
- `[ "$t" = "widec" ] && echo --with-termlib=tinfow --enable-widec --enable-ext-colors --includedir=%{_includedir}w`
+ `[ "$t" = "wideclowcolor" ] && echo --enable-widec --disable-ext-colors --includedir=%{_includedir}wlc` \
+ `[ "$t" = "widec" ] && echo --enable-widec --enable-ext-colors --includedir=%{_includedir}w`
%endif
%{__make} -j1
ln -sf ../l/linux $RPM_BUILD_ROOT%{_datadir}/terminfo/c/console
-mv -f $RPM_BUILD_ROOT%{_libdir}/libtinfo.so.* $RPM_BUILD_ROOT/%{_lib}
+%if "%{pld_release}" != "ti"
+mv -f $RPM_BUILD_ROOT%{_libdir}/libncursesw.so.6* $RPM_BUILD_ROOT/%{_lib}
+ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libncursesw.so.6.*) $RPM_BUILD_ROOT%{_libdir}/libtinfow.so
+ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libncursesw.so.6.*) $RPM_BUILD_ROOT%{_libdir}/libncursesw.so
+ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libncursesw.so.6.*) $RPM_BUILD_ROOT%{_libdir}/libcursesw.so
+%else
+mv -f $RPM_BUILD_ROOT%{_libdir}/libtinfow.so.5* $RPM_BUILD_ROOT/%{_lib}
+mv -f $RPM_BUILD_ROOT%{_libdir}/libncursesw.so.5* $RPM_BUILD_ROOT/%{_lib}
+ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libtinfow.so.5.*) $RPM_BUILD_ROOT%{_libdir}/libtinfow.so
+ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libncursesw.so.5.*) $RPM_BUILD_ROOT%{_libdir}/libcursesw.so
+ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libncursesw.so.5.*) $RPM_BUILD_ROOT%{_libdir}/libncursesw.so
+%endif
mv -f $RPM_BUILD_ROOT%{_libdir}/libncurses.so.* $RPM_BUILD_ROOT/%{_lib}
-ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libtinfo.so.*.*) $RPM_BUILD_ROOT%{_libdir}/libtinfo.so
+ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libncurses.so.*.*) $RPM_BUILD_ROOT%{_libdir}/libtinfo.so
ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libncurses.so.*.*) $RPM_BUILD_ROOT%{_libdir}/libcurses.so
ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libncurses.so.*.*) $RPM_BUILD_ROOT%{_libdir}/libncurses.so
+
ln -sf libncursesw.a $RPM_BUILD_ROOT%{_libdir}/libcursesw.a
-ln -sf libncursesw.so $RPM_BUILD_ROOT%{_libdir}/libcursesw.so
%if "%{pld_release}" != "ti"
cp -a obj-wideclowcolor/lib/lib*w.so.5* $RPM_BUILD_ROOT%{_libdir}
bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
+rm $RPM_BUILD_ROOT%{_libdir}/libcurses.a
+rm $RPM_BUILD_ROOT%{_libdir}/libcursesw.a
+rm $RPM_BUILD_ROOT%{_mandir}/README.ncurses-non-english-man-pages
+
%clean
rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/tset
%attr(755,root,root) /%{_lib}/libncurses.so.*.*
%attr(755,root,root) %ghost /%{_lib}/libncurses.so.5
-%attr(755,root,root) /%{_lib}/libtinfo.so.*.*
-%attr(755,root,root) %ghost /%{_lib}/libtinfo.so.5
-%attr(755,root,root) %{_libdir}/libncursesw.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libncursesw.so.5
+%attr(755,root,root) /%{_lib}/libncursesw.so.*.*
%if "%{pld_release}" != "ti"
-%attr(755,root,root) %ghost %{_libdir}/libncursesw.so.6
+%attr(755,root,root) %ghost /%{_lib}/libncursesw.so.6
%endif
-%attr(755,root,root) %{_libdir}/libtinfow.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libtinfow.so.5
%if "%{pld_release}" != "ti"
-%attr(755,root,root) %ghost %{_libdir}/libtinfow.so.6
+%attr(755,root,root) %{_libdir}/libncursesw.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libncursesw.so.5
+%else
+%attr(755,root,root) %ghost /%{_lib}/libtinfow.so.5
+%attr(755,root,root) %ghost /%{_lib}/libncursesw.so.5
%endif
%{_datadir}/tabset
%dir %{_datadir}/terminfo
%{_datadir}/terminfo/E
-%dir %{_datadir}/terminfo/[dgklprsvx]
+%dir %{_datadir}/terminfo/[cdgklprsvx]
+%{_datadir}/terminfo/c/cygwin*
%{_datadir}/terminfo/d/dumb
%{_datadir}/terminfo/g/gnome*
%{_datadir}/terminfo/k/klone+color
%defattr(644,root,root,755)
%{_datadir}/terminfo/[1-9ALMNPQXa-ce-jm-rt-uwz]
%{_datadir}/terminfo/[dklsvx]/*
+%exclude %{_datadir}/terminfo/c/cygwin*
%exclude %{_datadir}/terminfo/d/dumb
%exclude %{_datadir}/terminfo/g/gnome*
%exclude %{_datadir}/terminfo/k/klone+color
%{_includedir}w/termcap.h
%{_includedir}w/tic.h
%{_includedir}w/unctrl.h
+%{_pkgconfigdir}/*.pc
+
%{_mandir}/man3/*
%exclude %{_mandir}/man3/form*
%exclude %{_mandir}/man3/menu*
%files static
%defattr(644,root,root,755)
%{_libdir}/libncurses.a
-%{_libdir}/libtinfo.a
%{_libdir}/libncursesw.a
-%{_libdir}/libtinfow.a
%files ext
%defattr(644,root,root,755)