#
# Conditional build:
-%bcond_without ada # do not build Ada95 bindings
+%bcond_with 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).
%bcond_without gpm # build without (dynamically loadable) libgpm support
-%ifarch sparc64
+%ifarch sparc64 x32
%undefine with_ada
%endif
-%define basever 5.9
-%define patchlevel 20130816
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: %{basever}.%{patchlevel}
-Release: 4
+Version: 6.0
+Release: 1
License: distributable
Group: Libraries
-Source0: ftp://dickey.his.com/ncurses/%{name}-%{basever}.tar.gz
-# Source0-md5: 8cb9c412e5f2d96bc6f459aa8c6282a1
+Source0: ftp://dickey.his.com/ncurses/%{name}-%{version}.tar.gz
+# Source0-md5: ee13d052e1ead260d7c28071f46eefb1
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.9/
-Patch0: ftp://dickey.his.com/ncurses/5.9/%{name}-%{basever}-20130504-patch.sh.bz2
-# Patch0-md5: 328966f1daa16c045b16a22d1b0020ec
-Patch1: ftp://dickey.his.com/ncurses/5.9/%{name}-%{basever}-20130511.patch.gz
-# Patch1-md5: 090c30bb83e286e9cea22ad62c6136ff
-Patch2: ftp://dickey.his.com/ncurses/5.9/%{name}-%{basever}-20130518.patch.gz
-# Patch2-md5: 3300610567774c441bd4a014db76db11
-Patch3: ftp://dickey.his.com/ncurses/5.9/%{name}-%{basever}-20130525.patch.gz
-# Patch3-md5: c35aa6d8d6dc3a0620904045b5a8f6bc
-Patch4: ftp://dickey.his.com/ncurses/5.9/%{name}-%{basever}-20130608.patch.gz
-# Patch4-md5: 7d05e562085055466e4b25c7098c5242
-Patch5: ftp://dickey.his.com/ncurses/5.9/%{name}-%{basever}-20130615.patch.gz
-# Patch5-md5: a9c7114a801a5176c64941da4bee2e4d
-Patch6: ftp://dickey.his.com/ncurses/5.9/%{name}-%{basever}-20130622.patch.gz
-# Patch6-md5: ce16d6b9d41749a368fa5ddc237ad93a
-Patch7: ftp://dickey.his.com/ncurses/5.9/%{name}-%{basever}-20130706.patch.gz
-# Patch7-md5: 906c7aeb4c60fdcb0426d5d86937735f
-Patch8: ftp://dickey.his.com/ncurses/5.9/%{name}-%{basever}-20130713.patch.gz
-# Patch8-md5: 0e542db5a3b6d832203d350ec273aaef
-Patch9: ftp://dickey.his.com/ncurses/5.9/%{name}-%{basever}-20130720.patch.gz
-# Patch9-md5: 3a6be27672d10ddf29e12483ea83f846
-Patch10: ftp://dickey.his.com/ncurses/5.9/%{name}-%{basever}-20130727.patch.gz
-# Patch10-md5: a6a72d5b6b74ad92ac351df981fed46b
-Patch11: ftp://dickey.his.com/ncurses/5.9/%{name}-%{basever}-20130805.patch.gz
-# Patch11-md5: b26c73ec2465e0bddf0a57d9ce3ffb88
-Patch12: ftp://dickey.his.com/ncurses/5.9/%{name}-%{basever}-20130816.patch.gz
-# Patch12-md5: a281c29f4f4a468aa06f627f4e81a6ba
Patch100: %{name}-screen_hpa_fix.patch
Patch101: %{name}-xterm_hpa_fix.patch
Patch102: %{name}-meta.patch
%{?with_ada:BuildRequires: m4}
BuildRequires: pkgconfig
BuildRequires: sharutils
-# for compatibility with old PLD packages
-%ifarch %{x8664} ppc64 sparc64 s390x
-Provides: libtinfo.so.5()(64bit)
-Provides: libtinfow.so.5()(64bit)
-Provides: libtinfow.so.6()(64bit)
-%else
-Provides: libtinfo.so.5
-Provides: libtinfow.so.5
-Provides: libtinfow.so.6
-%endif
Obsoletes: libncurses5
Conflicts: terminfo < 5.4-0.6
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
tworzenia aplikacji używających ncurses w języku Ada95.
%prep
-%setup -qc
-mv %{name}-%{basever}/* .
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
-%patch4 -p1
-%patch5 -p1
-%patch6 -p1
-%patch7 -p1
-%patch8 -p1
-%patch9 -p1
-%patch10 -p1
-%patch11 -p1
-%patch12 -p1
-
+%setup -q
%patch100 -p1
%patch101 -p1
%patch102 -p1
--with-manpage-format=normal \
--with-ada-include=%{_libdir}/gcc/$gcc_target/$gcc_version/adainclude/ \
--with-ada-objects=%{_libdir}/gcc/$gcc_target/$gcc_version/adalib/ \
- `[ "$t" = "wideclowcolor" ] && echo --enable-widec --disable-ext-colors` \
- `[ "$t" = "widec" ] && echo --enable-widec --enable-ext-colors` \
+ `[ "$t" = "narrowc" ] && echo --includedir=%{_includedir}/ncursesn` \
+ `[ "$t" = "wideclowcolor" ] && echo --enable-widec --disable-ext-colors --includedir=%{_includedir}/ncurseswlc` \
+ `[ "$t" = "widec" ] && echo --enable-widec --enable-ext-colors --enable-ext-mouse --includedir=%{_includedir}/ncursesw` \
--without-manpage-symlinks
%{__make} -j1
INSTALL_PREFIX=$RPM_BUILD_ROOT
done
-mkdir $RPM_BUILD_ROOT%{_includedir}/ncurses{,w}
-for l in $RPM_BUILD_ROOT%{_includedir}/*.h; do
- ln -s ../$(basename $l) $RPM_BUILD_ROOT%{_includedir}/ncurses
- ln -s ../$(basename $l) $RPM_BUILD_ROOT%{_includedir}/ncursesw
+# make ncursesw headers available also as default and ncurses/*.h headers
+mkdir $RPM_BUILD_ROOT%{_includedir}/ncurses
+for l in $RPM_BUILD_ROOT%{_includedir}/ncursesw/*.h; do
+ bl=$(basename $l)
+ ln -s ../ncursesw/$bl $RPM_BUILD_ROOT%{_includedir}/ncurses/$bl
+ ln -s ncursesw/$bl $RPM_BUILD_ROOT%{_includedir}/$bl
done
+%{__rm} -r $RPM_BUILD_ROOT%{_includedir}/ncursesn
ln -sf ../l/linux $RPM_BUILD_ROOT%{_datadir}/terminfo/c/console
+# used by /{bin,sbin} programs
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}/libtinfo.so
-ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libncursesw.so.6.*) $RPM_BUILD_ROOT%{_libdir}/libtinfow.so
+# adjust symlinks for libncursesw.so.6 in /%{_lib}
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
-mv -f $RPM_BUILD_ROOT%{_libdir}/libncurses.so.* $RPM_BUILD_ROOT/%{_lib}
+
+# force ncursesw also for legacy -lncurses/-lcurses/-ltinfo linking
ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libncursesw.so.6.*) $RPM_BUILD_ROOT%{_libdir}/libcurses.so
ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libncursesw.so.6.*) $RPM_BUILD_ROOT%{_libdir}/libncurses.so
+# force wide ext libraries
+ln -sf $(basename $RPM_BUILD_ROOT%{_libdir}/libformw.so.6.*) $RPM_BUILD_ROOT%{_libdir}/libform.so
+ln -sf $(basename $RPM_BUILD_ROOT%{_libdir}/libmenuw.so.6.*) $RPM_BUILD_ROOT%{_libdir}/libmenu.so
+ln -sf $(basename $RPM_BUILD_ROOT%{_libdir}/libpanelw.so.6.*) $RPM_BUILD_ROOT%{_libdir}/libpanel.so
+# similarly for static linking
ln -sf libncursesw.a $RPM_BUILD_ROOT%{_libdir}/libcursesw.a
-
-# binary compatibility for packages using libncursesw.so.5 (without ext-colors)
-cp -a obj-wideclowcolor/lib/libncursesw.so.5* $RPM_BUILD_ROOT%{_libdir}
-# binary compatibility for packages usign libtinfo.so.5/libtinfow.so.5/libtinfow.so.6
-ln -sf $(basename $RPM_BUILD_ROOT/%{_lib}/libncurses.so.5.*) $RPM_BUILD_ROOT/%{_lib}/libtinfo.so.5
-ln -sf $(basename $RPM_BUILD_ROOT/%{_lib}/libncursesw.so.6.*) $RPM_BUILD_ROOT/%{_lib}/libtinfow.so.6
-ln -sf $(basename $RPM_BUILD_ROOT%{_libdir}/libncursesw.so.5.*) $RPM_BUILD_ROOT%{_libdir}/libtinfow.so.5
+ln -sf libncursesw.a $RPM_BUILD_ROOT%{_libdir}/libncurses.a
+ln -sf libncursesw.a $RPM_BUILD_ROOT%{_libdir}/libcurses.a
+ln -sf libformw.a $RPM_BUILD_ROOT%{_libdir}/libform.a
+ln -sf libmenuw.a $RPM_BUILD_ROOT%{_libdir}/libmenu.a
+ln -sf libpanelw.a $RPM_BUILD_ROOT%{_libdir}/libpanel.a
+ln -sf libncurses++w.a $RPM_BUILD_ROOT%{_libdir}/libncurses++.a
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
%post ext -p /sbin/ldconfig
%postun ext -p /sbin/ldconfig
-%triggerpostun -- %{name} < 5.9-3
-# rpm seems to remove them as those was %ghosts in ncurses < 5.9-3
-# despite existing now as normal files/symlinks
-ln -sf /%{_lib}/libncurses.so.5.* /%{_lib}/libtinfo.so.5
-ln -sf /%{_lib}/libncursesw.so.6.* /%{_lib}/libtinfow.so.6
-ln -sf %{_libdir}/libncursesw.so.5.* %{_libdir}/libtinfow.so.5
-exit 0
-
%files
%defattr(644,root,root,755)
%doc ANNOUNCE README
%attr(755,root,root) %{_bindir}/toe
%attr(755,root,root) %{_bindir}/tput
%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) %{_libdir}/libncurses.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libncurses.so.6
%attr(755,root,root) /%{_lib}/libncursesw.so.*.*
%attr(755,root,root) %ghost /%{_lib}/libncursesw.so.6
-%attr(755,root,root) %{_libdir}/libncursesw.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libncursesw.so.5
-%attr(755,root,root) /%{_lib}/libtinfo.so.5
-%attr(755,root,root) /%{_lib}/libtinfow.so.6
-%attr(755,root,root) %{_libdir}/libtinfow.so.5
%{_datadir}/tabset
%files devel
%defattr(644,root,root,755)
%doc doc/html/ncurses-intro.html
-%attr(755,root,root) %{_bindir}/ncurses5-config
+%attr(755,root,root) %{_bindir}/ncurses6-config
%attr(755,root,root) %{_bindir}/ncursesw6-config
%attr(755,root,root) %{_libdir}/libcurses.so
%attr(755,root,root) %{_libdir}/libncurses.so
-%attr(755,root,root) %{_libdir}/libtinfo.so
%attr(755,root,root) %{_libdir}/libcursesw.so
%attr(755,root,root) %{_libdir}/libncursesw.so
-%attr(755,root,root) %{_libdir}/libtinfow.so
%{_includedir}/curses.h
%{_includedir}/eti.h
%{_includedir}/nc_tparm.h
%{_includedir}/ncursesw/unctrl.h
%{_pkgconfigdir}/ncurses.pc
%{_pkgconfigdir}/ncursesw.pc
-%{_mandir}/man1/ncurses5-config.1*
+%{_mandir}/man1/ncurses6-config.1*
%{_mandir}/man1/ncursesw6-config.1*
%{_mandir}/man3/BC.3x*
%{_mandir}/man3/COLORS.3x*
%files static
%defattr(644,root,root,755)
+%{_libdir}/libcurses.a
%{_libdir}/libncurses.a
+%{_libdir}/libcursesw.a
%{_libdir}/libncursesw.a
%files ext
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libform.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libform.so.[56]
+%attr(755,root,root) %ghost %{_libdir}/libform.so.6
%attr(755,root,root) %{_libdir}/libmenu.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libmenu.so.[56]
+%attr(755,root,root) %ghost %{_libdir}/libmenu.so.6
%attr(755,root,root) %{_libdir}/libpanel.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpanel.so.[56]
+%attr(755,root,root) %ghost %{_libdir}/libpanel.so.6
%attr(755,root,root) %{_libdir}/libformw.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libformw.so.[56]
+%attr(755,root,root) %ghost %{_libdir}/libformw.so.6
%attr(755,root,root) %{_libdir}/libmenuw.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libmenuw.so.[56]
+%attr(755,root,root) %ghost %{_libdir}/libmenuw.so.6
%attr(755,root,root) %{_libdir}/libpanelw.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpanelw.so.[56]
+%attr(755,root,root) %ghost %{_libdir}/libpanelw.so.6
%files ext-devel
%defattr(644,root,root,755)
%{_includedir}/form.h
%{_includedir}/menu.h
%{_includedir}/panel.h
-%{_includedir}/ncurses*/form.h
-%{_includedir}/ncurses*/menu.h
-%{_includedir}/ncurses*/panel.h
+%{_includedir}/ncurses/form.h
+%{_includedir}/ncurses/menu.h
+%{_includedir}/ncurses/panel.h
+%{_includedir}/ncursesw/form.h
+%{_includedir}/ncursesw/menu.h
+%{_includedir}/ncursesw/panel.h
%{_pkgconfigdir}/form.pc
%{_pkgconfigdir}/formw.pc
%{_pkgconfigdir}/menu.pc