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: cce05daf61a64501ef6cd8da1f727ec6
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.7/
28 Patch0: %{name}-5.7-20081115.patch.gz
29 Patch1: %{name}-5.7-20081122.patch.gz
30 Patch2: %{name}-5.7-20081129.patch.gz
32 Patch100: %{name}-screen_hpa_fix.patch
33 Patch101: %{name}-xterm_hpa_fix.patch
34 Patch102: %{name}-meta.patch
35 Patch103: %{name}-xterm-home-end.patch
36 Patch104: %{name}-mouse_trafo-warning.patch
37 Patch105: %{name}-gnome-terminal.patch
38 # not sure about this one, now all xterms have kbs defined (to ^H, not \177)
39 # and only XTerm.ad.pl sets backspace to \177 instead of ^H
40 Patch106: %{name}-xterm-kbs.patch
41 # disable rain demo; triggers gcc bug: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14998
42 Patch107: %{name}-no-rain-demo.patch
43 URL: http://dickey.his.com/ncurses/ncurses.html
44 BuildRequires: automake
45 %{?with_ada:BuildRequires: gcc-ada}
46 %{?with_gpm:BuildRequires: gpm-devel}
47 %{?with_cxx:BuildRequires: libstdc++-devel}
48 BuildRequires: sharutils
49 Obsoletes: libncurses5
50 Conflicts: terminfo < 5.4-0.6
51 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
53 %define _includedir %{_prefix}/include/ncurses
56 The curses library routines give the user a terminal-independent
57 method of updating character screens with reasonable optimization.
58 This implementation is ``new curses'' (ncurses) and is the approved
59 replacement for 4.4BSD classic curses, which is being discontinued.
61 %description -l de.UTF-8
62 Die curses-Library-Routinen geben dem Benutzer eine
63 Terminal-unabhängige Methode zur optimierten Aktualisierung von
64 zeichenbasierenden Bildschirminhalten an die Hand. Die vorliegende
65 Implementierung ist NEW CURSES (ncurses), die offizielle
66 Nachfolgerversion für 4.4BSC (die klassische curses-Version), welche
67 nicht weitergeführt wird.
69 %description -l es.UTF-8
70 Las rutinas de la biblioteca curses ofrecen al usuario un método
71 independiente de terminal para actualización de las pantallas de
72 caracteres con optimización razonable. Este soporte es "nuevo curses"
73 (ncurses) y es el substituto aprobado para los clásicos curses 4.4BSD,
74 que se quedaban desfasados.
76 %description -l fr.UTF-8
77 Les routines de la bibliothèque curses donnent à l'utilisateur une
78 méthode indépendante du terminal pour la mise à jour des écrans en
79 mode texte avec une optimisation correcte. Ceci est l'implantation du
80 « nouveau curses » (ncurses) et est le remplacement du curses 4.4BSD
81 classique qui est abandonné.
83 %description -l pl.UTF-8
84 Biblioteka curses udostępnia funkcje pozwalające użytkownikom na
85 odwoływanie się do zawartości terminala niezależnie od jego typu.
86 Pakiet ten zawiera implementację klasycznej biblioteki curses (z
87 systemu 4.4BSD) o nazwie ncurses (new curses) i jest zarazem jej
88 przyszłym zamiennikiem.
90 %description -l pt_BR.UTF-8
91 As rotinas da biblioteca curses fornecem ao usuário um método
92 independente de terminal para atualização das telas de caracteres com
93 otimização razoável. Essa implementação é "novo curses" (ncurses) e é
94 o substituto aprovado para os clássicos curses 4.4BSD, que estão se
97 %description -l ru.UTF-8
98 Программы библиотеки curses предоставляют пользователям возможность
99 терминально-независимого обновления символьных экранов с достаточной
100 оптимизацией. Эта реализация - "новые curses" (ncurses), которая
101 является одобренной заменой классической библиотеки curses из 4.4BSD,
102 в настоящее время "снятой с производства". В PLD Linux ncurses
103 является жизненно необходимой, без нее не будут функционировать многие
104 программы, составляющие базовую систему. Практически все программы,
105 которые выводят что-либо на терминал, используют ncurses. В PLD Linux
106 ни библиотека termcap, ни традиционный файл /etc/termcap, не
109 %description -l tr.UTF-8
110 curses kitaplığı ile kullanıcıya kullanılan terminal tipinden bağımsız
111 olarak karakter tabanlı ekranlara erişim olanağı sağlanabilmektedir.
112 Bu uyarlama 'new curses' (ncurses), BSD deki klasik curses'in gelişmiş
115 %description -l uk.UTF-8
116 Програми бібліотеки curses дають користувачам можливість
117 термінально-незалежного поновлення символьних екранів з достатньою
118 оптимізацією. Ця реалізація - "нові curses" (ncurses), котра є
119 схваленою заміною класичної бібліотеки curses з 4.4BSD, яка наразі
120 "знята з виробництва". В PLD Linux ncurses є життєво необхідною, без
121 неї не буде працювати більшость програм, що складають базову систему.
122 Практично всі програми, котрі виводять щось на термінал,
123 використовують ncurses. В PLD Linux ані бібліотека termcap, ані
124 традиційний файл /etc/termcap не використовуються...
127 Summary: Complete terminfo database
128 Summary(es.UTF-8): Banco de datos terminfo para terminales extras (menos usados)
129 Summary(pl.UTF-8): Kompletna baza terminfo
130 Summary(pt_BR.UTF-8): Base de dados terminfo para terminais adicionais (menos usados)
131 Group: Applications/Terminal
132 Requires: %{name} = %{version}-%{release}
133 Obsoletes: ncurses-extraterms
135 %description -n terminfo
136 This package contains complete terminfo database. If you just use the
137 Linux console, xterm and VT100, you probably will not need this this -
138 a minimal %{_datadir}/terminfo tree for these terminal is already
139 included in the ncurses package.
141 %description -n terminfo -l es.UTF-8
142 Banco de datos terminfo para terminales extras. Las capacidades de los
143 terminales más usados ya están en el paquete principal ncurses.
145 %description -n terminfo -l pl.UTF-8
146 Pakiet ten zawiera kompletną bazę terminfo. Jeżeli używasz terminali
147 linux, console, xterm, vt100 prawdopodobnie nie bedziesz potrzebował
148 tego pakietu gdyż definicje tych terminali są włączone w pakiet
151 %description -n terminfo -l pt_BR.UTF-8
152 Base de dados terminfo para terminais extras. As definições dos
153 terminais mais usados já estão no pacote principal ncurses.
156 Summary: Header files for develop ncurses based application
157 Summary(es.UTF-8): Bibliotecas de desarrollo para ncurses
158 Summary(pl.UTF-8): Pliki nagłówkowe do bibliotek ncurses
159 Summary(pt_BR.UTF-8): Bibliotecas de desenvolvimento para ncurses
160 Summary(ru.UTF-8): Хедеры и библиотеки для разработки программ с ncurses
161 Summary(uk.UTF-8): Хедери та бібліотеки для розробки програм з ncurses
162 Group: Development/Libraries
163 Requires: %{name} = %{version}-%{release}
164 Obsoletes: libncurses5-devel
165 Obsoletes: libtermcap-devel
168 This package includes the header files and libraries necessary to
169 develop applications that use ncurses.
171 %description devel -l es.UTF-8
172 Este paquete incluye las bibliotecas y archivos de inclusión
173 necesarios al desarrollo de aplicaciones que usan ncurses.
175 %description devel -l pl.UTF-8
176 Pakiet ten zawiera pliki nagłówkowe niezbędne do pisania/kompilowania
177 programów z wykorzystaniem bibliotek ncurses.
179 %description devel -l pt_BR.UTF-8
180 Este pacote inclui as bibliotecas e arquivos de inclusão necessários
181 ao desenvolvimento de aplicações que usam ncurses.
183 %description devel -l ru.UTF-8
184 Этот пакет содержит хедеры и библиотеки, необходимые для разработки
185 программ, использующих ncurses.
187 %description devel -l uk.UTF-8
188 Цей пакет містить хедери та бібліотеки, необхідні для розробки
189 програм, що використовують ncurses.
192 Summary: Static libraries for ncurses
193 Summary(es.UTF-8): Static libraries for ncurses development
194 Summary(pl.UTF-8): Biblioteki statyczne ncurses
195 Summary(pt_BR.UTF-8): Bibliotecas estáticas para desenvolvimento com ncurses
196 Summary(ru.UTF-8): Статические библиотеки для разработки программ с ncurses
197 Summary(uk.UTF-8): Статичні бібліотеки для розробки програм з ncurses
198 Group: Development/Libraries
199 Requires: %{name}-devel = %{version}-%{release}
202 This package includes the static libraries necessary to develop
203 applications that use ncurses.
205 %description static -l es.UTF-8
206 Static libraries for ncurses development.
208 %description static -l pl.UTF-8
209 Pakiet ten zawiera biblioteki statyczne ncurses.
211 %description static -l pt_BR.UTF-8
212 Bibliotecas estáticas para desenvolvimento com ncurses.
214 %description static -l ru.UTF-8
215 Этот пакет содержит статические библиотеки, необходимые для разработки
216 программ, использующих ncurses.
218 %description static -l uk.UTF-8
219 Цей пакет містить статичні бібліотеки, необхідні для розробки програм,
220 що використовують ncurses.
223 Summary: Additional ncurses libraries
224 Summary(pl.UTF-8): Dodatkowe biblioteki ncurses
226 Requires: %{name} = %{version}-%{release}
229 This package contains addidion ncurses libraries like libforms,
230 libmenu and libpanel for easy making full screen curse application.
232 %description ext -l pl.UTF-8
233 Pakiet ten zawiera dodatkowe biblioteki libforms, libmenu i libpanel
234 służące do łatwego tworzenia aplikacji pełnoekranowych korzystających
238 Summary: Header files for additional ncurses libraries
239 Summary(pl.UTF-8): Pliki nagłówkowe dodatkowych bibliotek ncurses
240 Group: Development/Libraries
241 Requires: %{name}-devel = %{version}-%{release}
242 Requires: %{name}-ext = %{version}-%{release}
244 %description ext-devel
245 Header files for additional ncurses libraries (form, menu, panel).
247 %description ext-devel -l pl.UTF-8
248 Pliki nagłówkowe dodatkowych bibliotek ncurses (form, menu, panel).
251 Summary: Static versions of additional ncurses libraries
252 Summary(pl.UTF-8): Statyczne wersje dodatkowych bibliotek ncurses
253 Group: Development/Libraries
254 Requires: %{name}-ext-devel = %{version}-%{release}
256 %description ext-static
257 Static versions of additional ncurses libraries (form, menu, panel).
259 %description ext-static -l pl.UTF-8
260 Statyczne wersje dodatkowych bibliotek ncurses (form, menu, panel).
263 Summary: Header files for develop C++ ncurses based application
264 Summary(pl.UTF-8): Pliki nagłówkowe do biblioteki C++ ncurses
265 Group: Development/Libraries
266 Requires: %{name}-devel = %{version}-%{release}
268 %description c++-devel
269 This package includes the header files and libraries necessary to
270 develop applications that use C++ ncurses.
272 %description c++-devel -l pl.UTF-8
273 Pakiet ten zawiera pliki nagłówkowe niezbędne do kompilacji programów
274 z wykorzystaniem biblioteki c++-ncurses.
277 Summary: Static libraries for C++ ncurses
278 Summary(pl.UTF-8): Biblioteki statyczne C++ ncurses
279 Group: Development/Libraries
280 Requires: %{name}-c++-devel = %{version}-%{release}
282 %description c++-static
283 This package includes the static libraries necessary to develop
284 applications that use C++ ncurses.
286 %description c++-static -l pl.UTF-8
287 Pakiet ten zawiera biblioteki statyczne C++ ncurses.
290 Summary: Header files for develop Ada95 ncurses based application
291 Summary(pl.UTF-8): Pliki nagłówkowe do biblioteki Ada95 ncurses
292 Group: Development/Libraries
293 Requires: %{name}-devel = %{version}-%{release}
296 %description ada-devel
297 This package includes the header files and libraries necessary to
298 develop applications that use Ada95 ncurses.
300 %description ada-devel -l pl.UTF-8
301 Ten pakiet zawiera pliki nagłówkowe i biblioteki potrzebne do
302 tworzenia aplikacji używających ncurses w języku Ada95.
321 gcc_target=$(gcc -dumpmachine)
322 gcc_version=$(gcc -dumpversion)
323 CFLAGS="%{rpmcflags} -DPURE_TERMINFO -D_FILE_OFFSET_BITS=64"
324 cp -f /usr/share/automake/config.sub .
325 for t in narrowc widec; do
329 --with-install-prefix=$RPM_BUILD_ROOT \
332 --with%{!?with_ada:out}-ada \
333 --with%{!?with_cxx:out}-cxx \
334 --with%{!?with_cxx:out}-cxx-binding \
335 --with%{!?debug:out}-debug \
336 --with%{!?with_gpm:out}-gpm \
341 --with-chtype='long' \
342 --with-mmask-t='long' \
343 --with-manpage-aliases \
344 --with-manpage-format=normal \
345 --without-manpage-symlinks \
346 --with-ada-include=%{_libdir}/gcc/$gcc_target/$gcc_version/adainclude/ \
347 --with-ada-objects=%{_libdir}/gcc/$gcc_target/$gcc_version/adalib/ \
348 `[ "$t" != "widec" ] && echo --with-termlib=tinfo` \
349 `[ "$t" = "widec" ] && echo --with-termlib=tinfow --enable-widec --includedir=%{_includedir}w`
357 rm -rf $RPM_BUILD_ROOT
358 install -d $RPM_BUILD_ROOT{/%{_lib},%{_mandir}}
360 for t in widec narrowc; do
361 %{__make} -C obj-$t install \
362 INSTALL_PREFIX=$RPM_BUILD_ROOT
365 ln -sf ../l/linux $RPM_BUILD_ROOT%{_datadir}/terminfo/c/console
367 mv -f $RPM_BUILD_ROOT%{_libdir}/libtinfo.so.* $RPM_BUILD_ROOT/%{_lib}
368 mv -f $RPM_BUILD_ROOT%{_libdir}/libncurses.so.* $RPM_BUILD_ROOT/%{_lib}
369 ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libtinfo.so.*.*) $RPM_BUILD_ROOT%{_libdir}/libtinfo.so
370 ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libncurses.so.*.*) $RPM_BUILD_ROOT%{_libdir}/libcurses.so
371 ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libncurses.so.*.*) $RPM_BUILD_ROOT%{_libdir}/libncurses.so
372 ln -sf libncursesw.a $RPM_BUILD_ROOT%{_libdir}/libcursesw.a
373 ln -sf libncursesw.so $RPM_BUILD_ROOT%{_libdir}/libcursesw.so
375 bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
378 rm -rf $RPM_BUILD_ROOT
380 %post -p /sbin/ldconfig
381 %postun -p /sbin/ldconfig
383 %post ext -p /sbin/ldconfig
384 %postun ext -p /sbin/ldconfig
387 %defattr(644,root,root,755)
389 %attr(755,root,root) %{_bindir}/captoinfo
390 %attr(755,root,root) %{_bindir}/clear
391 %attr(755,root,root) %{_bindir}/infocmp
392 %attr(755,root,root) %{_bindir}/infotocap
393 %attr(755,root,root) %{_bindir}/reset
394 %attr(755,root,root) %{_bindir}/tabs
395 %attr(755,root,root) %{_bindir}/tic
396 %attr(755,root,root) %{_bindir}/toe
397 %attr(755,root,root) %{_bindir}/tput
398 %attr(755,root,root) %{_bindir}/tset
399 %attr(755,root,root) /%{_lib}/libncurses.so.*.*
400 %attr(755,root,root) %ghost /%{_lib}/libncurses.so.5
401 %attr(755,root,root) /%{_lib}/libtinfo.so.*.*
402 %attr(755,root,root) %ghost /%{_lib}/libtinfo.so.5
403 %attr(755,root,root) %{_libdir}/libncursesw.so.*.*
404 %attr(755,root,root) %ghost %{_libdir}/libncursesw.so.5
405 %attr(755,root,root) %{_libdir}/libtinfow.so.*.*
406 %attr(755,root,root) %ghost %{_libdir}/libtinfow.so.5
410 %dir %{_datadir}/terminfo
411 %{_datadir}/terminfo/E
412 %dir %{_datadir}/terminfo/[dklsvx]
414 %{_datadir}/terminfo/d/dumb
415 %{_datadir}/terminfo/k/klone+color
416 %{_datadir}/terminfo/k/konsole
417 %{_datadir}/terminfo/l/linux*
418 %{_datadir}/terminfo/s/screen*
419 %{_datadir}/terminfo/v/vt100
420 %{_datadir}/terminfo/v/vt220
421 %{_datadir}/terminfo/v/vt220-8
422 %{_datadir}/terminfo/v/vt52
423 %{_datadir}/terminfo/x/xterm*
425 %{_mandir}/man[157]/*
426 %lang(fi) %{_mandir}/fi/man1/*
427 %lang(fr) %{_mandir}/fr/man1/*
428 %lang(hu) %{_mandir}/hu/man1/*
429 %lang(id) %{_mandir}/id/man1/*
430 %lang(it) %{_mandir}/it/man1/*
431 %lang(pl) %{_mandir}/pl/man[157]/*
434 %defattr(644,root,root,755)
435 %{_datadir}/terminfo/[1-9ALMNPQXa-ce-jm-rt-uwz]
436 %{_datadir}/terminfo/[dklsvx]/*
437 %exclude %{_datadir}/terminfo/d/dumb
438 %exclude %{_datadir}/terminfo/k/klone+color
439 %exclude %{_datadir}/terminfo/k/konsole*
440 %exclude %{_datadir}/terminfo/l/linux*
441 %exclude %{_datadir}/terminfo/s/screen*
442 %exclude %{_datadir}/terminfo/v/vt100
443 %exclude %{_datadir}/terminfo/v/vt220
444 %exclude %{_datadir}/terminfo/v/vt220-8
445 %exclude %{_datadir}/terminfo/v/vt52
446 %exclude %{_datadir}/terminfo/x/xterm*
449 %defattr(644,root,root,755)
450 %doc doc/html/ncurses-intro.html
451 %attr(755,root,root) %{_bindir}/ncurses5-config
452 %attr(755,root,root) %{_bindir}/ncursesw5-config
453 %attr(755,root,root) %{_libdir}/libcurses.so
454 %attr(755,root,root) %{_libdir}/libncurses.so
455 %attr(755,root,root) %{_libdir}/libtinfo.so
456 %attr(755,root,root) %{_libdir}/libcursesw.so
457 %attr(755,root,root) %{_libdir}/libncursesw.so
458 %attr(755,root,root) %{_libdir}/libtinfow.so
460 %{_includedir}/curses.h
462 %{_includedir}/nc_tparm.h
463 %{_includedir}/ncurses.h
464 %{_includedir}/ncurses_dll.h
465 %{_includedir}/term.h
466 %{_includedir}/term_entry.h
467 %{_includedir}/termcap.h
469 %{_includedir}/unctrl.h
471 %{_includedir}w/curses.h
472 %{_includedir}w/eti.h
473 %{_includedir}w/nc_tparm.h
474 %{_includedir}w/ncurses.h
475 %{_includedir}w/ncurses_dll.h
476 %{_includedir}w/term.h
477 %{_includedir}w/term_entry.h
478 %{_includedir}w/termcap.h
479 %{_includedir}w/tic.h
480 %{_includedir}w/unctrl.h
482 %exclude %{_mandir}/man3/form*
483 %exclude %{_mandir}/man3/menu*
484 %exclude %{_mandir}/man3/panel*
485 %lang(pl) %{_mandir}/pl/man3/*
488 %defattr(644,root,root,755)
489 %{_libdir}/libncurses.a
490 %{_libdir}/libtinfo.a
491 %{_libdir}/libncursesw.a
492 %{_libdir}/libtinfow.a
495 %defattr(644,root,root,755)
496 %attr(755,root,root) %{_libdir}/libform.so.*
497 %attr(755,root,root) %{_libdir}/libmenu.so.*
498 %attr(755,root,root) %{_libdir}/libpanel.so.*
499 %attr(755,root,root) %{_libdir}/libformw.so.*
500 %attr(755,root,root) %{_libdir}/libmenuw.so.*
501 %attr(755,root,root) %{_libdir}/libpanelw.so.*
504 %defattr(644,root,root,755)
505 %attr(755,root,root) %{_libdir}/libform.so
506 %attr(755,root,root) %{_libdir}/libmenu.so
507 %attr(755,root,root) %{_libdir}/libpanel.so
508 %attr(755,root,root) %{_libdir}/libformw.so
509 %attr(755,root,root) %{_libdir}/libmenuw.so
510 %attr(755,root,root) %{_libdir}/libpanelw.so
511 %{_includedir}/form.h
512 %{_includedir}/menu.h
513 %{_includedir}/panel.h
514 %{_includedir}w/form.h
515 %{_includedir}w/menu.h
516 %{_includedir}w/panel.h
517 %{_mandir}/man3/form*
518 %{_mandir}/man3/menu*
519 %{_mandir}/man3/panel*
522 %defattr(644,root,root,755)
525 %{_libdir}/libpanel.a
526 %{_libdir}/libformw.a
527 %{_libdir}/libmenuw.a
528 %{_libdir}/libpanelw.a
532 %defattr(644,root,root,755)
533 %doc c++/{demo.cc,README-first,NEWS,PROBLEMS}
534 %{_includedir}/cursesapp.h
535 %{_includedir}/cursesf.h
536 %{_includedir}/cursesm.h
537 %{_includedir}/cursesp.h
538 %{_includedir}/cursesw.h
539 %{_includedir}/etip.h
540 %{_includedir}/cursslk.h
541 %{_includedir}w/cursesapp.h
542 %{_includedir}w/cursesf.h
543 %{_includedir}w/cursesm.h
544 %{_includedir}w/cursesp.h
545 %{_includedir}w/cursesw.h
546 %{_includedir}w/etip.h
547 %{_includedir}w/cursslk.h
550 %defattr(644,root,root,755)
551 %{_libdir}/libncurses++.a
552 %{_libdir}/libncurses++w.a
557 %defattr(644,root,root,755)
558 %doc Ada95/{README,TODO}
559 %attr(755,root,root) %{_bindir}/adacurses-config
560 %{_libdir}/gcc/*/*/adainclude/*
561 %{_libdir}/gcc/*/*/adalib/*