]> git.pld-linux.org Git - packages/bash.git/blob - bash.spec
- typo
[packages/bash.git] / bash.spec
1 #
2 # Conditional build:
3 %bcond_without  static          # don't build static version
4 %bcond_with     bash_history    # build with additional history in /var/log/bash_hist ;)
5 ##
6 Summary:        GNU Bourne Again Shell (bash)
7 Summary(es):    GNU Bourne Again Shell (bash)
8 Summary(fr):    Le shell Bourne Again de GNU
9 Summary(pl):    Pow³oka GNU Bourne Again Shell (bash)
10 Summary(pt_BR): GNU Bourne Again Shell (bash)
11 Summary(ru):    GNU Bourne Again Shell (bash)
12 Summary(uk):    GNU Bourne Again Shell (bash)
13 Name:           bash
14 Version:        3.0
15 Release:        1%{?with_bash_history:inv}
16 License:        GPL
17 Group:          Applications/Shells
18 Source0:        ftp://ftp.gnu.org/pub/gnu/bash/%{name}-%{version}.tar.gz
19 # Source0-md5:  26c4d642e29b3533d8d754995bc277b3
20 Source1:        %{name}rc
21 Source2:        %{name}-skel-.%{name}_logout
22 Source3:        %{name}-skel-.%{name}_profile
23 Source4:        %{name}-skel-.%{name}rc
24 Source5:        http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
25 # Source5-md5:  d2aacf89c4a444c5da648da69afdb01a
26 Patch0:         %{name}-paths.patch
27 Patch1:         %{name}-security.patch
28 Patch2:         %{name}-autoconf.patch
29 Patch3:         %{name}-info.patch
30 Patch4:         %{name}-profile.patch
31 Patch5:         %{name}-requires.patch
32 Patch6:         %{name}-compat.patch
33 Patch7:         %{name}-rlimit_locks.patch
34 Patch8:         %{name}-sighup.patch
35 Patch9:         %{name}-backup_history.patch
36 Patch10:        %{name}-pmake.patch
37 BuildRequires:  autoconf
38 BuildRequires:  automake
39 BuildRequires:  bison
40 BuildRequires:  ncurses-devel >= 5.2
41 BuildRequires:  readline-devel >= 5.0
42 BuildRequires:  texinfo
43 %if %{with static}
44 # Require static library only for static build
45 BuildRequires:  glibc-static >= 2.2
46 BuildRequires:  ncurses-static >= 5.2
47 BuildRequires:  readline-static >= 5.0
48 %endif
49 PreReq:         grep
50 Requires(preun):        fileutils
51 Requires:       setup >= 2.4.6-2
52 Requires:       readline >= 5.0
53 Obsoletes:      bash-doc
54 Obsoletes:      bash2
55 Obsoletes:      bash2-doc
56 Obsoletes:      etcskel
57 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
58
59 %description
60 Bash is a GNU project sh-compatible shell or command language
61 interpreter. Bash (Bourne Again shell) incorporates useful features
62 from the Korn shell (ksh) and the C shell (csh). Most sh scripts can
63 be run by bash without modification. Bash offers several improvements
64 over sh, including command line editing, unlimited size command
65 history, job control, shell functions and aliases, indexed arrays of
66 unlimited size and integer arithmetic in any base from two to 64. Bash
67 is ultimately intended to conform to the IEEE POSIX P1003.2/ISO 9945.2
68 Shell and Tools standard. Bash is the default shell for Linux
69 Mandrake. You should install bash because of its popularity and power.
70 You'll probably end up using it.
71
72 %description -l es
73 Bash es un interpretador de comandos compatible con sh, que ejecuta
74 comandos leídos de la entrada padrón o de un archivo. Bash también
75 incorpora características útiles de las shells Korn y C (ksh y csh).
76 Bash ha sido desarrollado para ser una adición compatible con la
77 especificación IEEE Posix para shells y herramientas (IEEE Working
78 Group 1003.2).
79
80 %description -l de
81 Bash ist eine sh-kompatible Shell und Kommandosprache aus dem
82 GNU-Projekt. Bash (Bourne Again Shell) vereinigt die nützlichen
83 Features aus der Korn-Shell (ksh) und der C-Shell (csh). Die meisten
84 sh-Skripte laufen ohne Änderungen auf bash. Bash hat viele
85 Erweiterungen im Vergleich zur "normalen" sh, wie z.B.
86 Kommandozeilenbearbeitung, unbeschränkte Größe der command-history,
87 Job-Kontrolle, Shell-Funktionen und -Aliase, unbegrenzt große
88 indizierte Arrays und Integer-Arithmetik in einer Basis von 2 bis 64.
89 Hauptziel von bash ist es, den IEEE POSIX P1003.2/ISO 9945.2 Shell-
90 und Tools-Standard einzuhalten. Bash ist die Standard-Shell für Linux
91 Mandrake.
92
93 %description -l fr
94 Bash est un shell (interpréteur de commande) du projet GNU, compatible
95 avec le shell historique sh. Bash (Bourne Again SHell) comprend de
96 nombreuses fonctionnalités du Korn SHell (ksh) et du C SHell (csh). La
97 plupart des scripts sh sont exécutables sans modifications. Bash
98 comprend nombre d'améliorations par rapport à sh : édition de la ligne
99 de commande, historique illimité, contrôle des processus
100 d'arrière-plan, fonctions de shell, alias, tableaux indexés de taille
101 illimitée et calcul sur des entiers dans n'importe quelle base de 2 à
102 64. Bash est conforme au standard IEEE POSIX P1003.2/ISO 9945.2 Shell
103 and Tools. Bash est le shell par défaut de Mandrake. Vous devriez
104 l'installer du fait de sa puissance et de sa popularité. Vous finirez
105 probablement par l'utiliser.
106
107 %description -l pl
108 Bash (Bourne Again SHell) jest projektem GNU pow³oki kompatybilnej z
109 sh oraz interpretera jêzyka poleceñ. Posiada u¿yteczne w³a¶ciwo¶ci
110 pow³ok Korn (ksh) i C (csh). Wiêkszo¶æ skryptów sh mo¿e byæ
111 uruchamiana w bashu bez modyfikacji. Oferuje on kilka ulepszeñ w
112 stosunku do sh, w³±czaj±c edycjê linii poleceñ, nieograniczony rozmiar
113 historii poleceñ, funkcje i aliasy, indeksowane tablice
114 nieograniczonych rozmiarów oraz arytmetykê ca³kowitoliczbow± o
115 dowolnej podstawie od 2 do 64. W zamierzeniu ostatecznie ma byæ zgodny
116 ze standardem IEEE POSIX P1003.2/ISO 9945.2 Shell and Tools.
117
118 %description -l pt_BR
119 Bash é um interpretador de comandos compatível com sh, que executa
120 comandos lidos da entrada padrão ou de um arquivo. Bash também
121 incorpora características úteis das shells Korn e C (ksh e csh). Bash
122 tem sido desenvolvido para ser uma implementação compatível com a
123 especificação IEEE Posix para shells e ferramentas (IEEE Working Group
124 1003.2).
125
126 %description -l ru
127 Bash - ÜÔÏ sh-ÓÏ×ÍÅÓÔÉÍÙÊ ÉÎÔÅÒÐÒÅÔÁÔÏÒ ËÏÍÁÎÄÎÏÇÏ ÑÚÙËÁ (shell),
128 ÉÓÐÏÌÎÑÀÝÉÊ ËÏÍÁÎÄÙ, ÐÏÓÔÕÐÁÀÝÉÅ ÓÏ ÓÔÁÎÄÁÒÔÎÏÇÏ ××ÏÄÁ ÉÌÉ ÉÚ ÆÁÊÌÁ.
129 Bash ×ËÌÀÞÁÅÔ ÐÏÌÅÚÎÙÅ ÒÁÓÛÉÒÅÎÉÑ ÉÚ ÉÎÔÅÒÐÒÅÔÁÔÏÒÏ× Korn É C shell
130 (ksh É csh).
131
132 Bash ÒÁÚÒÁÂÁÔÙ×ÁÅÔÓÑ ËÁË ÒÅÁÌÉÚÁÃÉÑ, ÏÔ×ÅÞÁÀÝÁÑ IEEE Posix Shell and
133 Tools specification (IEEE Working Group 1003.2).
134
135 %description -l tr
136 Bash standart giriþten ya da bir dosyadan komut okuyup çalýþtýran sh
137 uyumlu bir komut dili yorumlayýcýsýdýr. Ayný zamanda Korn ve C
138 kabuklarýnýn (ksh ve csh) kullanýþlý özelliklerini de kapsar. Bash,
139 IEEE Posix Kabuk ve Araç ayrýntýlarýna (IEEE Working Group 1003.2)
140 uyumlu bir uygulama olarak tasarlanmýþtýr.
141
142 %description -l uk
143 Bash - ÃÅ sh-ÓÕͦÓÔÎÉÊ ¦ÎÔÅÒÐÒÅÔÁÔÏÒ ËÏÍÁÎÄÎϧ ÍÏ×É (shell),
144 ×ÉËÏÎÕÀÞÉÊ ËÏÍÁÎÄÉ Ú¦ ÓÔÁÎÄÁÒÔÎÏÇÏ ××ÏÄÕ ÁÂÏ Ú ÆÁÊÌÁ. Bash Í¦ÓÔÉÔØ
145 ËÏÒÉÓÔΦ ÒÏÚÛÉÒÅÎÎÑ Ú ¦ÎÔÅÒÐÒÅÔÁÔÏҦנKorn ÔÁ C shell (ksh ÔÁ csh).
146
147 Bash ÒÏÚÒÏÂÌÑ×ÓÑ ÑË ÒÅÁ̦ÚÁæÑ, ÝϠצÄÐÏצÄÁ¤ IEEE Posix Shell and
148 Tools specification (IEEE Working Group 1003.2).
149
150 %package static
151 Summary:        Statically linked GNU Bourne Again Shell (bash)
152 Summary(pl):    Statycznie skonsolidowany GNU Bourne Again Shell (bash)
153 Group:          Applications/Shells
154 Requires(post,preun):   grep
155 Requires(preun):        fileutils
156 Requires:       %{name} = %{version}-%{release}
157
158 %description static
159 Bash is a GNU project sh-compatible shell or command language
160 interpreter. Bash (Bourne Again shell) incorporates useful features
161 from the Korn shell (ksh) and the C shell (csh). Most sh scripts can
162 be run by bash without modification. Bash offers several improvements
163 over sh, including command line editing, unlimited size command
164 history, job control, shell functions and aliases, indexed arrays of
165 unlimited size and integer arithmetic in any base from two to 64. Bash
166 is ultimately intended to conform to the IEEE POSIX P1003.2/ISO 9945.2
167 Shell and Tools standard. Bash is the default shell for Linux
168 Mandrake. You should install bash because of its popularity and power.
169 You'll probably end up using it. This package contains statically
170 linked version of bash.
171
172 %description static -l pl
173 Bash jest zaawansowan± pow³ok±, która wykonuje komendy czytane ze
174 standardowego wej¶cia (stdin) lub z pliku. Posiada w³a¶ciwo¶ci pow³ok
175 Korn i C (ksh i csh). Bash jest równie¿ zaimplementowany IEEE Posix
176 Shell oraz jest zgodny ze specyfikacj± - IEEE Working Group 1003.2. W
177 tym pakiecie jest wersja basha skonsolidowana statycznie.
178
179 %prep
180 %setup -q -a5
181 %patch0 -p1
182 %patch1 -p1
183 %patch2 -p1
184 %patch3 -p1
185 %patch4 -p1
186 %patch5 -p1
187 %patch6 -p1
188 %patch7 -p1
189 %patch8 -p1
190 %{?with_bash_history:%patch9 -p1}
191 #%patch10 -p1   -- no longer needed?
192
193 echo %{version} > _distribution
194 echo %{release} > _patchlevel
195
196 %build
197 %{__autoconf}
198 cp -f /usr/share/automake/config.* support
199 for mode in %{?with_static:static} shared; do
200 %configure \
201         --enable-alias \
202         --enable-help-builtin \
203         --enable-history \
204         --enable-job-control \
205         --enable-restricted \
206         --enable-readline \
207         --with-curses \
208         --enable-extended-glob \
209         --enable-dparen-arithmetic \
210         `[ "$mode" = "static" ] && echo "--enable-static-link"` \
211         --with-installed-readline
212
213 %{__make} \
214         DEFS="-DHAVE_CONFIG_H -D_GNU_SOURCE"
215
216 [ "$mode" = "static" ] && mv -f bash bash.static || :
217 done
218
219 %install
220 rm -rf $RPM_BUILD_ROOT
221 install -d $RPM_BUILD_ROOT/{bin,etc/skel}
222 %{?with_bash_history:install -d $RPM_BUILD_ROOT/var/log/bash_hist}
223
224 %{__make} install \
225         DESTDIR=$RPM_BUILD_ROOT
226
227 mv -f $RPM_BUILD_ROOT%{_bindir}/bash $RPM_BUILD_ROOT/bin
228 %{?with_static:install bash.static $RPM_BUILD_ROOT/bin}
229
230 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/bashrc
231 echo .so bash.1 > $RPM_BUILD_ROOT%{_mandir}/man1/rbash.1
232
233 for d in es fr it ja ko nl pl ; do
234         install -d $RPM_BUILD_ROOT%{_mandir}/$d/man1
235         install man/$d/* $RPM_BUILD_ROOT%{_mandir}/$d/man1
236         echo .so bash.1 > $RPM_BUILD_ROOT%{_mandir}/$d/man1/rbash.1
237 done
238
239 ln -sf bash $RPM_BUILD_ROOT/bin/rbash
240
241 install %{SOURCE2} $RPM_BUILD_ROOT/etc/skel/.bash_logout
242 install %{SOURCE3} $RPM_BUILD_ROOT/etc/skel/.bash_profile
243 install %{SOURCE4} $RPM_BUILD_ROOT/etc/skel/.bashrc
244
245 %find_lang %{name}
246
247 %clean
248 rm -rf $RPM_BUILD_ROOT
249
250 %post
251 umask 022
252 if [ ! -f /etc/shells ]; then
253         echo "/bin/bash" > /etc/shells
254         echo "/bin/rbash" >> /etc/shells
255 else
256         if ! grep -q '^/bin/bash$' /etc/shells; then
257                 echo "/bin/bash" >> /etc/shells
258         fi
259         if ! grep -q '^/bin/rbash$' /etc/shells; then
260                 echo "/bin/rbash" >> /etc/shells
261         fi
262 fi
263
264 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
265
266 %preun
267 if [ "$1" = "0" ]; then
268         umask 022
269         grep -v /bin/bash /etc/shells | grep -v /bin/rbash > /etc/shells.new
270         mv -f /etc/shells.new /etc/shells
271 fi
272
273 %post static
274 umask 022
275 if [ ! -f /etc/shells ]; then
276         echo "/bin/bash.static" > /etc/shells
277 else
278         if ! grep -q '^/bin/bash.static$' /etc/shells; then
279                 echo "/bin/bash.static" >> /etc/shells
280         fi
281 fi
282
283 %preun static
284 if [ "$1" = "0" ]; then
285         umask 022
286         grep -v /bin/bash.static /etc/shells > /etc/shells.new
287         mv -f /etc/shells.new /etc/shells
288 fi
289
290 %postun
291 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
292
293 %files -f %{name}.lang
294 %defattr(644,root,root,755)
295 %doc CHANGES NEWS README doc/{FAQ,INTRO}
296
297 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/bashrc
298 %config(noreplace,missingok) %verify(not md5 size mtime) /etc/skel/.bash_logout
299 %config(noreplace,missingok) %verify(not md5 size mtime) /etc/skel/.bash_profile
300 %config(noreplace,missingok) %verify(not md5 size mtime) /etc/skel/.bashrc
301
302 %attr(755,root,root) /bin/bash
303 %attr(755,root,root) /bin/rbash
304 %attr(755,root,root) %{_bindir}/bashbug
305
306 %{?with_bash_history:%attr(751,root,root) %dir /var/log/bash_hist}
307 %{_infodir}/bash.info*
308 %{_mandir}/man1/*
309 %lang(es) %{_mandir}/es/man1/*
310 %lang(fr) %{_mandir}/fr/man1/*
311 %lang(it) %{_mandir}/it/man1/*
312 %lang(ja) %{_mandir}/ja/man1/*
313 %lang(ko) %{_mandir}/ko/man1/*
314 %lang(nl) %{_mandir}/nl/man1/*
315 %lang(pl) %{_mandir}/pl/man1/*
316
317 %if %{with static}
318 %files static
319 %defattr(644,root,root,755)
320 %attr(755,root,root) /bin/bash.static
321 %endif
This page took 0.060972 seconds and 3 git commands to generate.