X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=ncurses.spec;h=347833dcaf9bed54b926517f6906ba465f5f3c12;hb=3c3d65b3910bb7332a77d2a7d2c02b7762a039ad;hp=7db4dc4453e2448f07b1c0e03f97fdc5b4c34fbc;hpb=67ab943fe2aff36cd11b1d8b0a97f6bbae04d187;p=packages%2Fcompat-ncurses5.git diff --git a/ncurses.spec b/ncurses.spec index 7db4dc4..347833d 100644 --- a/ncurses.spec +++ b/ncurses.spec @@ -2,9 +2,13 @@ # 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 @@ -16,7 +20,7 @@ Summary(tr.UTF-8): Terminal kontrol kitaplığı Summary(uk.UTF-8): ncurses - нова бібліотека керування терміналами Name: ncurses Version: 5.7 -Release: 6 +Release: 31 License: distributable Group: Libraries Source0: ftp://dickey.his.com/ncurses/%{name}-%{version}.tar.gz @@ -25,21 +29,10 @@ Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-ma # 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 +Patch0: patch-5.7-20110108.sh.gz +Patch1: ncurses-5.7-20110115.patch.gz +Patch2: ncurses-5.7-20110122.patch.gz +Patch3: ncurses-5.7-20110205.patch.gz Patch100: %{name}-screen_hpa_fix.patch Patch101: %{name}-xterm_hpa_fix.patch @@ -47,16 +40,19 @@ Patch102: %{name}-meta.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 +# https://bugzilla.redhat.com/show_bug.cgi?id=613407 +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 @@ -303,7 +299,7 @@ Summary: Header files for develop Ada95 ncurses based application Summary(pl.UTF-8): Pliki nagłówkowe do biblioteki Ada95 ncurses Group: Development/Libraries Requires: %{name}-devel = %{version}-%{release} -%requires_eq gcc-ada +%{?with_ada:%requires_eq gcc-ada} %description ada-devel This package includes the header files and libraries necessary to @@ -315,21 +311,10 @@ tworzenia aplikacji używających ncurses w języku Ada95. %prep %setup -q -%patch0 -p1 +zcat %{PATCH0} | /bin/sh - || exit 1 %patch1 -p1 %patch2 -p1 %patch3 -p1 -%patch4 -p1 -%patch5 -p1 -%patch6 -p1 -%patch7 -p1 -%patch8 -p1 -%patch9 -p1 -%patch10 -p1 -%patch11 -p1 -%patch12 -p1 -%patch13 -p1 -%patch14 -p1 %patch100 -p1 %patch101 -p1 @@ -337,16 +322,21 @@ tworzenia aplikacji używających ncurses w języku Ada95. %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" for t in narrowc widec; do +%else +for t in narrowc wideclowcolor widec; do +%endif install -d obj-$t cd obj-$t ../%configure \ @@ -361,7 +351,12 @@ cd obj-$t --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 \ @@ -369,10 +364,16 @@ cd obj-$t --without-manpage-symlinks \ --with-ada-include=%{_libdir}/gcc/$gcc_target/$gcc_version/adainclude/ \ --with-ada-objects=%{_libdir}/gcc/$gcc_target/$gcc_version/adalib/ \ +%if "%{pld_release}" == "ti" `[ "$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` +%endif -%{__make} +%{__make} -j1 cd .. done @@ -381,23 +382,52 @@ done rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT{/%{_lib},%{_mandir}} +%if "%{pld_release}" == "ti" for t in widec narrowc; do +%else +for t in narrowc widec; do +%endif %{__make} -C obj-$t install \ INSTALL_PREFIX=$RPM_BUILD_ROOT done ln -sf ../l/linux $RPM_BUILD_ROOT%{_datadir}/terminfo/c/console +%if "%{pld_release}" != "ti" +mv -f $RPM_BUILD_ROOT%{_libdir}/libtinfow.so.6* $RPM_BUILD_ROOT/%{_lib} +mv -f $RPM_BUILD_ROOT%{_libdir}/libncursesw.so.6* $RPM_BUILD_ROOT/%{_lib} +ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libtinfow.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}/libtinfo.so.* $RPM_BUILD_ROOT/%{_lib} 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}/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} +%endif 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 + +# FIXME: should be fixed properly +# fix too many w's +sed -i -e 's/tinfoww/tinfow/' $RPM_BUILD_ROOT%{_bindir}/ncurses*-config $RPM_BUILD_ROOT%{_pkgconfigdir}/*.pc + %clean rm -rf $RPM_BUILD_ROOT @@ -422,23 +452,37 @@ 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}/libncursesw.so.*.* +%if "%{pld_release}" != "ti" +%attr(755,root,root) %ghost /%{_lib}/libncursesw.so.6 +%endif %attr(755,root,root) /%{_lib}/libtinfo.so.*.* %attr(755,root,root) %ghost /%{_lib}/libtinfo.so.5 +%attr(755,root,root) /%{_lib}/libtinfow.so.*.* +%if "%{pld_release}" != "ti" +%attr(755,root,root) %ghost /%{_lib}/libtinfow.so.6 %attr(755,root,root) %{_libdir}/libncursesw.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libncursesw.so.6 +%attr(755,root,root) %ghost %{_libdir}/libncursesw.so.5 %attr(755,root,root) %{_libdir}/libtinfow.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libtinfow.so.6 +%attr(755,root,root) %ghost %{_libdir}/libtinfow.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/[dklsvx] +%dir %{_datadir}/terminfo/[dgklprsvx] %{_datadir}/terminfo/d/dumb +%{_datadir}/terminfo/g/gnome* %{_datadir}/terminfo/k/klone+color -%{_datadir}/terminfo/k/konsole +%{_datadir}/terminfo/k/konsole* %{_datadir}/terminfo/l/linux* +%{_datadir}/terminfo/p/putty* +%{_datadir}/terminfo/r/rxvt* %{_datadir}/terminfo/s/screen* %{_datadir}/terminfo/v/vt100 %{_datadir}/terminfo/v/vt220 @@ -459,9 +503,12 @@ rm -rf $RPM_BUILD_ROOT %{_datadir}/terminfo/[1-9ALMNPQXa-ce-jm-rt-uwz] %{_datadir}/terminfo/[dklsvx]/* %exclude %{_datadir}/terminfo/d/dumb +%exclude %{_datadir}/terminfo/g/gnome* %exclude %{_datadir}/terminfo/k/klone+color %exclude %{_datadir}/terminfo/k/konsole* %exclude %{_datadir}/terminfo/l/linux* +%exclude %{_datadir}/terminfo/p/putty* +%exclude %{_datadir}/terminfo/r/rxvt* %exclude %{_datadir}/terminfo/s/screen* %exclude %{_datadir}/terminfo/v/vt100 %exclude %{_datadir}/terminfo/v/vt220 @@ -473,7 +520,11 @@ rm -rf $RPM_BUILD_ROOT %defattr(644,root,root,755) %doc doc/html/ncurses-intro.html %attr(755,root,root) %{_bindir}/ncurses5-config +%if "%{pld_release}" == "ti" +%attr(755,root,root) %{_bindir}/ncursesw5-config +%else %attr(755,root,root) %{_bindir}/ncursesw6-config +%endif %attr(755,root,root) %{_libdir}/libcurses.so %attr(755,root,root) %{_libdir}/libncurses.so %attr(755,root,root) %{_libdir}/libtinfo.so @@ -502,6 +553,8 @@ rm -rf $RPM_BUILD_ROOT %{_includedir}w/termcap.h %{_includedir}w/tic.h %{_includedir}w/unctrl.h +%{_pkgconfigdir}/*.pc + %{_mandir}/man3/* %exclude %{_mandir}/man3/form* %exclude %{_mandir}/man3/menu* @@ -517,12 +570,27 @@ rm -rf $RPM_BUILD_ROOT %files ext %defattr(644,root,root,755) +%if "%{pld_release}" == "ti" %attr(755,root,root) %{_libdir}/libform.so.* %attr(755,root,root) %{_libdir}/libmenu.so.* %attr(755,root,root) %{_libdir}/libpanel.so.* %attr(755,root,root) %{_libdir}/libformw.so.* %attr(755,root,root) %{_libdir}/libmenuw.so.* %attr(755,root,root) %{_libdir}/libpanelw.so.* +%else +%attr(755,root,root) %{_libdir}/libform.so.*.* +%attr(755,root,root) %ghost %{_libdir}/libform.so.[56] +%attr(755,root,root) %{_libdir}/libmenu.so.*.* +%attr(755,root,root) %ghost %{_libdir}/libmenu.so.[56] +%attr(755,root,root) %{_libdir}/libpanel.so.*.* +%attr(755,root,root) %ghost %{_libdir}/libpanel.so.[56] +%attr(755,root,root) %{_libdir}/libformw.so.*.* +%attr(755,root,root) %ghost %{_libdir}/libformw.so.[56] +%attr(755,root,root) %{_libdir}/libmenuw.so.*.* +%attr(755,root,root) %ghost %{_libdir}/libmenuw.so.[56] +%attr(755,root,root) %{_libdir}/libpanelw.so.*.* +%attr(755,root,root) %ghost %{_libdir}/libpanelw.so.[56] +%endif %files ext-devel %defattr(644,root,root,755)