3 %bcond_without ada # do not build Ada95 bindings
4 %bcond_without cxx # do not build C++ ncurses bindings and demo programs
5 # # (this is neccessary to build ncurses linked with uClibc).
6 %bcond_without gpm # build without (dynamically loadable) libgpm support
8 Summary: curses terminal control library
9 Summary(de.UTF-8): curses-Terminal-Control-Library
10 Summary(es.UTF-8): Biblioteca de control de terminal curses
11 Summary(fr.UTF-8): La bibliothéque de contrôle de terminal curses
12 Summary(pl.UTF-8): Biblioteki do kontrolowania terminala
13 Summary(pt_BR.UTF-8): Biblioteca de controle de terminal curses
14 Summary(ru.UTF-8): ncurses - новая библиотека управления терминалами
15 Summary(tr.UTF-8): Terminal kontrol kitaplığı
16 Summary(uk.UTF-8): ncurses - нова бібліотека керування терміналами
20 License: distributable
22 Source0: ftp://dickey.his.com/ncurses/%{name}-%{version}.tar.gz
23 # Source0-md5: b6593abe1089d6aab1551c105c9300e3
24 Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
25 # Source1-md5: 3b05ee835dc20c306e9af2a9d3fbf1f1
27 # source: ftp://dickey.his.com/ncurses/5.6/
28 Patch0: %{name}-5.6-20061223.patch.gz
29 Patch1: %{name}-5.6-20061230.patch.gz
30 Patch2: %{name}-5.6-20070106.patch.gz
31 Patch3: %{name}-5.6-20070113.patch.gz
32 Patch4: %{name}-5.6-20070120.patch.gz
33 Patch5: %{name}-5.6-20070127.patch.gz
34 Patch6: %{name}-5.6-20070128.patch.gz
35 Patch7: %{name}-5.6-20070203.patch.gz
36 Patch8: %{name}-5.6-20070210.patch.gz
37 Patch9: %{name}-5.6-20070217.patch.gz
39 Patch100: %{name}-screen_hpa_fix.patch
40 Patch101: %{name}-xterm_hpa_fix.patch
41 Patch102: %{name}-meta.patch
42 Patch103: %{name}-xterm-home-end.patch
43 Patch104: %{name}-mouse_trafo-warning.patch
44 Patch105: %{name}-gnome-terminal.patch
45 # not sure about this one, now all xterms have kbs defined (to ^H, not \177)
46 # and only XTerm.ad.pl sets backspace to \177 instead of ^H
47 Patch106: %{name}-xterm-kbs.patch
48 # disable rain demo; triggers gcc bug: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14998
49 Patch107: %{name}-no-rain-demo.patch
50 Patch108: %{name}-linking.patch
51 URL: http://dickey.his.com/ncurses/ncurses.html
52 BuildRequires: automake
53 %{?with_ada:BuildRequires: gcc-ada}
54 %{?with_gpm:BuildRequires: gpm-devel}
55 %{?with_cxx:BuildRequires: libstdc++-devel}
56 BuildRequires: sharutils
57 Obsoletes: libncurses5
58 Conflicts: terminfo < 5.4-0.6
59 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
61 %define _includedir %{_prefix}/include/ncurses
64 The curses library routines give the user a terminal-independent
65 method of updating character screens with reasonable optimization.
66 This implementation is ``new curses'' (ncurses) and is the approved
67 replacement for 4.4BSD classic curses, which is being discontinued.
69 %description -l de.UTF-8
70 Die curses-Library-Routinen geben dem Benutzer eine
71 Terminal-unabhängige Methode zur optimierten Aktualisierung von
72 zeichenbasierenden Bildschirminhalten an die Hand. Die vorliegende
73 Implementierung ist NEW CURSES (ncurses), die offizielle
74 Nachfolgerversion für 4.4BSC (die klassische curses-Version), welche
75 nicht weitergeführt wird.
77 %description -l es.UTF-8
78 Las rutinas de la biblioteca curses ofrecen al usuario un método
79 independiente de terminal para actualización de las pantallas de
80 caracteres con optimización razonable. Este soporte es "nuevo curses"
81 (ncurses) y es el substituto aprobado para los clásicos curses 4.4BSD,
82 que se quedaban desfasados.
84 %description -l fr.UTF-8
85 Les routines de la bibliothèque curses donnent à l'utilisateur une
86 méthode indépendante du terminal pour la mise à jour des écrans en
87 mode texte avec une optimisation correcte. Ceci est l'implantation du
88 « nouveau curses » (ncurses) et est le remplacement du curses 4.4BSD
89 classique qui est abandonné.
91 %description -l pl.UTF-8
92 Biblioteka curses udostępnia funkcje pozwalające użytkownikom na
93 odwoływanie się do zawartości terminala niezależnie od jego typu.
94 Pakiet ten zawiera implementację klasycznej biblioteki curses (z
95 systemu 4.4BSD) o nazwie ncurses (new curses) i jest zarazem jej
96 przyszłym zamiennikiem.
98 %description -l pt_BR.UTF-8
99 As rotinas da biblioteca curses fornecem ao usuário um método
100 independente de terminal para atualização das telas de caracteres com
101 otimização razoável. Essa implementação é "novo curses" (ncurses) e é
102 o substituto aprovado para os clássicos curses 4.4BSD, que estão se
105 %description -l ru.UTF-8
106 Программы библиотеки curses предоставляют пользователям возможность
107 терминально-независимого обновления символьных экранов с достаточной
108 оптимизацией. Эта реализация - "новые curses" (ncurses), которая
109 является одобренной заменой классической библиотеки curses из 4.4BSD,
110 в настоящее время "снятой с производства". В PLD Linux ncurses
111 является жизненно необходимой, без нее не будут функционировать многие
112 программы, составляющие базовую систему. Практически все программы,
113 которые выводят что-либо на терминал, используют ncurses. В PLD Linux
114 ни библиотека termcap, ни традиционный файл /etc/termcap, не
117 %description -l tr.UTF-8
118 curses kitaplığı ile kullanıcıya kullanılan terminal tipinden bağımsız
119 olarak karakter tabanlı ekranlara erişim olanağı sağlanabilmektedir.
120 Bu uyarlama 'new curses' (ncurses), BSD deki klasik curses'in gelişmiş
123 %description -l uk.UTF-8
124 Програми бібліотеки curses дають користувачам можливість
125 термінально-незалежного поновлення символьних екранів з достатньою
126 оптимізацією. Ця реалізація - "нові curses" (ncurses), котра є
127 схваленою заміною класичної бібліотеки curses з 4.4BSD, яка наразі
128 "знята з виробництва". В PLD Linux ncurses є життєво необхідною, без
129 неї не буде працювати більшость програм, що складають базову систему.
130 Практично всі програми, котрі виводять щось на термінал,
131 використовують ncurses. В PLD Linux ані бібліотека termcap, ані
132 традиційний файл /etc/termcap не використовуються...
135 Summary: Complete terminfo database
136 Summary(es.UTF-8): Banco de datos terminfo para terminales extras (menos usados)
137 Summary(pl.UTF-8): Kompletna baza terminfo
138 Summary(pt_BR.UTF-8): Base de dados terminfo para terminais adicionais (menos usados)
139 Group: Applications/Terminal
140 Requires: %{name} = %{version}-%{release}
141 Obsoletes: ncurses-extraterms
143 %description -n terminfo
144 This package contains cmplet terminfo database. If you just use the
145 Linux console, xterm and VT100, you probably will not need this this -
146 a minimal %{_datadir}/terminfo tree for these terminal is already
147 included in the ncurses package.
149 %description -n terminfo -l es.UTF-8
150 Banco de datos terminfo para terminales extras. Las capacidades de los
151 terminales más usados ya están en el paquete principal ncurses.
153 %description -n terminfo -l pl.UTF-8
154 Pakiet ten zawiera kompletną bazę terminfo. Jeżeli używasz terminali
155 linux, console, xterm, vt100 prawdopodobnie nie bedziesz potrzebował
156 tego pakietu gdyż definicje tych terminali są włączone w pakiet
159 %description -n terminfo -l pt_BR.UTF-8
160 Base de dados terminfo para terminais extras. As definições dos
161 terminais mais usados já estão no pacote principal ncurses.
164 Summary: Header files for develop ncurses based application
165 Summary(es.UTF-8): Bibliotecas de desarrollo para ncurses
166 Summary(pl.UTF-8): Pliki nagłówkowe do bibliotek ncurses
167 Summary(pt_BR.UTF-8): Bibliotecas de desenvolvimento para ncurses
168 Summary(ru.UTF-8): Хедеры и библиотеки для разработки программ с ncurses
169 Summary(uk.UTF-8): Хедери та бібліотеки для розробки програм з ncurses
170 Group: Development/Libraries
171 Requires: %{name} = %{version}-%{release}
172 Obsoletes: libncurses5-devel
173 Obsoletes: libtermcap-devel
176 This package includes the header files and libraries necessary to
177 develop applications that use ncurses.
179 %description devel -l es.UTF-8
180 Este paquete incluye las bibliotecas y archivos de inclusión
181 necesarios al desarrollo de aplicaciones que usan ncurses.
183 %description devel -l pl.UTF-8
184 Pakiet ten zawiera pliki nagłówkowe niezbędne do pisania/kompilowania
185 programów z wykorzystaniem bibliotek ncurses.
187 %description devel -l pt_BR.UTF-8
188 Este pacote inclui as bibliotecas e arquivos de inclusão necessários
189 ao desenvolvimento de aplicações que usam ncurses.
191 %description devel -l ru.UTF-8
192 Этот пакет содержит хедеры и библиотеки, необходимые для разработки
193 программ, использующих ncurses.
195 %description devel -l uk.UTF-8
196 Цей пакет містить хедери та бібліотеки, необхідні для розробки
197 програм, що використовують ncurses.
200 Summary: Static libraries for ncurses
201 Summary(es.UTF-8): Static libraries for ncurses development
202 Summary(pl.UTF-8): Biblioteki statyczne ncurses
203 Summary(pt_BR.UTF-8): Bibliotecas estáticas para desenvolvimento com ncurses
204 Summary(ru.UTF-8): Статические библиотеки для разработки программ с ncurses
205 Summary(uk.UTF-8): Статичні бібліотеки для розробки програм з ncurses
206 Group: Development/Libraries
207 Requires: %{name}-devel = %{version}-%{release}
210 This package includes the static libraries necessary to develop
211 applications that use ncurses.
213 %description static -l es.UTF-8
214 Static libraries for ncurses development.
216 %description static -l pl.UTF-8
217 Pakiet ten zawiera biblioteki statyczne ncurses.
219 %description static -l pt_BR.UTF-8
220 Bibliotecas estáticas para desenvolvimento com ncurses.
222 %description static -l ru.UTF-8
223 Этот пакет содержит статические библиотеки, необходимые для разработки
224 программ, использующих ncurses.
226 %description static -l uk.UTF-8
227 Цей пакет містить статичні бібліотеки, необхідні для розробки програм,
228 що використовують ncurses.
231 Summary: Additional ncurses libraries
232 Summary(pl.UTF-8): Dodatkowe biblioteki ncurses
234 Requires: %{name} = %{version}-%{release}
237 This package contains addidion ncurses libraries like libforms,
238 libmenu and libpanel for easy making full screen curse application.
240 %description ext -l pl.UTF-8
241 Pakiet ten zawiera dodatkowe biblioteki libforms, libmenu i libpanel
242 służące do łatwego tworzenia aplikacji pełnoekranowych korzystających
246 Summary: Header files for additional ncurses libraries
247 Summary(pl.UTF-8): Pliki nagłówkowe dodatkowych bibliotek ncurses
248 Group: Development/Libraries
249 Requires: %{name}-devel = %{version}-%{release}
250 Requires: %{name}-ext = %{version}-%{release}
252 %description ext-devel
253 Header files for additional ncurses libraries (form, menu, panel).
255 %description ext-devel -l pl.UTF-8
256 Pliki nagłówkowe dodatkowych bibliotek ncurses (form, menu, panel).
259 Summary: Static versions of additional ncurses libraries
260 Summary(pl.UTF-8): Statyczne wersje dodatkowych bibliotek ncurses
261 Group: Development/Libraries
262 Requires: %{name}-ext-devel = %{version}-%{release}
264 %description ext-static
265 Static versions of additional ncurses libraries (form, menu, panel).
267 %description ext-static -l pl.UTF-8
268 Statyczne wersje dodatkowych bibliotek ncurses (form, menu, panel).
271 Summary: Header files for develop C++ ncurses based application
272 Summary(pl.UTF-8): Pliki nagłówkowe do biblioteki C++ ncurses
273 Group: Development/Libraries
274 Requires: %{name}-devel = %{version}-%{release}
276 %description c++-devel
277 This package includes the header files and libraries necessary to
278 develop applications that use C++ ncurses.
280 %description c++-devel -l pl.UTF-8
281 Pakiet ten zawiera pliki nagłówkowe niezbędne do kompilacji programów
282 z wykorzystaniem biblioteki c++-ncurses.
285 Summary: Static libraries for C++ ncurses
286 Summary(pl.UTF-8): Biblioteki statyczne C++ ncurses
287 Group: Development/Libraries
288 Requires: %{name}-c++-devel = %{version}-%{release}
290 %description c++-static
291 This package includes the static libraries necessary to develop
292 applications that use C++ ncurses.
294 %description c++-static -l pl.UTF-8
295 Pakiet ten zawiera biblioteki statyczne C++ ncurses.
298 Summary: Header files for develop Ada95 ncurses based application
299 Summary(pl.UTF-8): Pliki nagłówkowe do biblioteki Ada95 ncurses
300 Group: Development/Libraries
301 Requires: %{name}-devel = %{version}-%{release}
304 %description ada-devel
305 This package includes the header files and libraries necessary to
306 develop applications that use Ada95 ncurses.
308 %description ada-devel -l pl.UTF-8
309 Ten pakiet zawiera pliki nagłówkowe i biblioteki potrzebne do
310 tworzenia aplikacji używających ncurses w języku Ada95.
336 gcc_target=$(gcc -dumpmachine)
337 gcc_version=$(gcc -dumpversion)
338 CFLAGS="%{rpmcflags} -DPURE_TERMINFO -D_FILE_OFFSET_BITS=64"
339 cp -f /usr/share/automake/config.sub .
340 for t in narrowc widec; do
344 --with-install-prefix=$RPM_BUILD_ROOT \
347 --with%{!?with_ada:out}-ada \
348 --with%{!?with_cxx:out}-cxx \
349 --with%{!?with_cxx:out}-cxx-binding \
350 --with%{!?debug:out}-debug \
351 --with%{!?with_gpm:out}-gpm \
356 --with-chtype='long' \
357 --with-mmask-t='long' \
358 --with-manpage-aliases \
359 --with-manpage-format=normal \
360 --without-manpage-symlinks \
361 --with-ada-include=%{_libdir}/gcc/$gcc_target/$gcc_version/adainclude/ \
362 --with-ada-objects=%{_libdir}/gcc/$gcc_target/$gcc_version/adalib/ \
363 `[ "$t" != "widec" ] && echo --with-termlib=tinfo` \
364 `[ "$t" = "widec" ] && echo --with-termlib=tinfow --enable-widec --includedir=%{_includedir}w`
371 rm -rf $RPM_BUILD_ROOT
372 install -d $RPM_BUILD_ROOT{/%{_lib},%{_mandir}}
374 for t in widec narrowc; do
375 %{__make} -C obj-$t install \
376 INSTALL_PREFIX=$RPM_BUILD_ROOT
379 ln -sf ../l/linux $RPM_BUILD_ROOT%{_datadir}/terminfo/c/console
381 mv -f $RPM_BUILD_ROOT%{_libdir}/libtinfo.so.*.* $RPM_BUILD_ROOT/%{_lib}
382 mv -f $RPM_BUILD_ROOT%{_libdir}/libncurses.so.*.* $RPM_BUILD_ROOT/%{_lib}
383 ln -sf /%{_lib}/`cd $RPM_BUILD_ROOT/%{_lib} ; echo libtinfo.so.*.*` $RPM_BUILD_ROOT%{_libdir}/libtinfo.so
384 ln -sf /%{_lib}/`cd $RPM_BUILD_ROOT/%{_lib} ; echo libncurses.so.*.*` $RPM_BUILD_ROOT%{_libdir}/libcurses.so
385 ln -sf /%{_lib}/`cd $RPM_BUILD_ROOT/%{_lib} ; echo libncurses.so.*.*` $RPM_BUILD_ROOT%{_libdir}/libncurses.so
387 bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
390 rm -rf $RPM_BUILD_ROOT
392 %post -p /sbin/ldconfig
393 %postun -p /sbin/ldconfig
395 %post ext -p /sbin/ldconfig
396 %postun ext -p /sbin/ldconfig
399 %defattr(644,root,root,755)
401 %attr(755,root,root) %{_bindir}/captoinfo
402 %attr(755,root,root) %{_bindir}/clear
403 %attr(755,root,root) %{_bindir}/infocmp
404 %attr(755,root,root) %{_bindir}/infotocap
405 %attr(755,root,root) %{_bindir}/reset
406 %attr(755,root,root) %{_bindir}/tack
407 %attr(755,root,root) %{_bindir}/tic
408 %attr(755,root,root) %{_bindir}/toe
409 %attr(755,root,root) %{_bindir}/tput
410 %attr(755,root,root) %{_bindir}/tset
411 %attr(755,root,root) /%{_lib}/libncurses.so.*
412 %attr(755,root,root) /%{_lib}/libtinfo.so.*
413 %attr(755,root,root) %{_libdir}/libncursesw.so.*
414 %attr(755,root,root) %{_libdir}/libtinfow.so.*
418 %dir %{_datadir}/terminfo
419 %{_datadir}/terminfo/E
420 %dir %{_datadir}/terminfo/[dklsvx]
422 %{_datadir}/terminfo/d/dumb
423 %{_datadir}/terminfo/k/klone+color
424 %{_datadir}/terminfo/l/linux*
425 %{_datadir}/terminfo/s/screen*
426 %{_datadir}/terminfo/v/vt100
427 %{_datadir}/terminfo/v/vt220
428 %{_datadir}/terminfo/v/vt220-8
429 %{_datadir}/terminfo/v/vt52
430 %{_datadir}/terminfo/x/xterm*
432 %{_mandir}/man[157]/*
433 %lang(fi) %{_mandir}/fi/man1/*
434 %lang(fr) %{_mandir}/fr/man1/*
435 %lang(hu) %{_mandir}/hu/man1/*
436 %lang(id) %{_mandir}/id/man1/*
437 %lang(it) %{_mandir}/it/man1/*
438 %lang(pl) %{_mandir}/pl/man[157]/*
441 %defattr(644,root,root,755)
442 %{_datadir}/terminfo/[1-9ALMNPQXa-ce-jm-rt-uwz]
443 %{_datadir}/terminfo/[dklsvx]/*
444 %exclude %{_datadir}/terminfo/d/dumb
445 %exclude %{_datadir}/terminfo/k/klone+color
446 %exclude %{_datadir}/terminfo/l/linux*
447 %exclude %{_datadir}/terminfo/s/screen*
448 %exclude %{_datadir}/terminfo/v/vt100
449 %exclude %{_datadir}/terminfo/v/vt220
450 %exclude %{_datadir}/terminfo/v/vt220-8
451 %exclude %{_datadir}/terminfo/v/vt52
452 %exclude %{_datadir}/terminfo/x/xterm*
455 %defattr(644,root,root,755)
456 %doc doc/html/ncurses-intro.html
457 %attr(755,root,root) %{_bindir}/ncurses5-config
458 %attr(755,root,root) %{_bindir}/ncursesw5-config
459 %attr(755,root,root) %{_libdir}/libcurses.so
460 %attr(755,root,root) %{_libdir}/libncurses.so
461 %attr(755,root,root) %{_libdir}/libtinfo.so
462 %attr(755,root,root) %{_libdir}/libcursesw.so
463 %attr(755,root,root) %{_libdir}/libncursesw.so
464 %attr(755,root,root) %{_libdir}/libtinfow.so
466 %{_includedir}/curses.h
468 %{_includedir}/nc_tparm.h
469 %{_includedir}/ncurses.h
470 %{_includedir}/ncurses_dll.h
471 %{_includedir}/term.h
472 %{_includedir}/term_entry.h
473 %{_includedir}/termcap.h
475 %{_includedir}/unctrl.h
477 %{_includedir}w/curses.h
478 %{_includedir}w/eti.h
479 %{_includedir}w/nc_tparm.h
480 %{_includedir}w/ncurses.h
481 %{_includedir}w/ncurses_dll.h
482 %{_includedir}w/term.h
483 %{_includedir}w/term_entry.h
484 %{_includedir}w/termcap.h
485 %{_includedir}w/tic.h
486 %{_includedir}w/unctrl.h
488 %exclude %{_mandir}/man3/form*
489 %exclude %{_mandir}/man3/menu*
490 %exclude %{_mandir}/man3/panel*
491 %lang(pl) %{_mandir}/pl/man3/*
494 %defattr(644,root,root,755)
495 %{_libdir}/libncurses.a
496 %{_libdir}/libtinfo.a
497 %{_libdir}/libncursesw.a
498 %{_libdir}/libtinfow.a
501 %defattr(644,root,root,755)
502 %attr(755,root,root) %{_libdir}/libform.so.*
503 %attr(755,root,root) %{_libdir}/libmenu.so.*
504 %attr(755,root,root) %{_libdir}/libpanel.so.*
505 %attr(755,root,root) %{_libdir}/libformw.so.*
506 %attr(755,root,root) %{_libdir}/libmenuw.so.*
507 %attr(755,root,root) %{_libdir}/libpanelw.so.*
510 %defattr(644,root,root,755)
511 %attr(755,root,root) %{_libdir}/libform.so
512 %attr(755,root,root) %{_libdir}/libmenu.so
513 %attr(755,root,root) %{_libdir}/libpanel.so
514 %attr(755,root,root) %{_libdir}/libformw.so
515 %attr(755,root,root) %{_libdir}/libmenuw.so
516 %attr(755,root,root) %{_libdir}/libpanelw.so
517 %{_includedir}/form.h
518 %{_includedir}/menu.h
519 %{_includedir}/panel.h
520 %{_includedir}w/form.h
521 %{_includedir}w/menu.h
522 %{_includedir}w/panel.h
523 %{_mandir}/man3/form*
524 %{_mandir}/man3/menu*
525 %{_mandir}/man3/panel*
528 %defattr(644,root,root,755)
531 %{_libdir}/libpanel.a
532 %{_libdir}/libformw.a
533 %{_libdir}/libmenuw.a
534 %{_libdir}/libpanelw.a
538 %defattr(644,root,root,755)
539 %doc c++/{demo.cc,README-first,NEWS,PROBLEMS}
540 %{_includedir}/cursesapp.h
541 %{_includedir}/cursesf.h
542 %{_includedir}/cursesm.h
543 %{_includedir}/cursesp.h
544 %{_includedir}/cursesw.h
545 %{_includedir}/etip.h
546 %{_includedir}/cursslk.h
547 %{_includedir}w/cursesapp.h
548 %{_includedir}w/cursesf.h
549 %{_includedir}w/cursesm.h
550 %{_includedir}w/cursesp.h
551 %{_includedir}w/cursesw.h
552 %{_includedir}w/etip.h
553 %{_includedir}w/cursslk.h
556 %defattr(644,root,root,755)
557 %{_libdir}/libncurses++.a
558 %{_libdir}/libncurses++w.a
563 %defattr(644,root,root,755)
564 %doc Ada95/{README,TODO}
565 %{_libdir}/gcc/*/*/adainclude/*
566 %{_libdir}/gcc/*/*/adalib/*