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