]> git.pld-linux.org Git - packages/bash.git/blame - bash.spec
- don't overwrite translations with 4-year old TP snapshot
[packages/bash.git] / bash.spec
CommitLineData
cb14c662 1#
2# Conditional build:
a651f1c4
JB
3%bcond_without static # don't build static version
4%bcond_with bash_history # build with additional history in /var/log/bash_hist ;)
e407816c 5%bcond_without tests # do not perform "make test"
c70eed6a 6#
03cee40d
AM
7%define ver 4.2
8#%%define patchlevel 1
1074813e 9%define rel 1
7d6d2b69 10Summary: GNU Bourne Again Shell (bash)
dcd748fa
ER
11Summary(fr.UTF-8): Le shell Bourne Again de GNU
12Summary(pl.UTF-8): Powłoka GNU Bourne Again Shell (bash)
7d6d2b69 13Name: bash
03cee40d 14Version: %{ver}%{?patchlevel:.%{patchlevel}}
8bd2c87f 15Release: %{rel}%{?with_bash_history:inv}
4e122b9a 16License: GPL
23ed535f 17Group: Applications/Shells
ec429726 18Source0: http://ftp.gnu.org/gnu/bash/%{name}-%{ver}.tar.gz
03cee40d 19# Source0-md5: 3fb927c7c33022f1c327f14a81c0d4b0
23ed535f 20Source1: %{name}rc
678800bc
JB
21Source2: %{name}-skel-.bash_logout
22Source3: %{name}-skel-.bash_profile
23Source4: %{name}-skel-.bashrc
df8b9a69 24Source5: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
60c0b40e 25# Source5-md5: d2aacf89c4a444c5da648da69afdb01a
23ed535f 26Patch0: %{name}-paths.patch
070ee007 27Patch1: %{name}-security.patch
28Patch2: %{name}-autoconf.patch
29Patch3: %{name}-info.patch
30Patch4: %{name}-profile.patch
31Patch5: %{name}-requires.patch
32Patch6: %{name}-compat.patch
60c0b40e
JB
33Patch8: %{name}-sighup.patch
34Patch9: %{name}-backup_history.patch
716158f0 35Patch10: %{name}-act_like_sh.patch
232f944c 36Patch11: %{name}-elinks_cont.patch
678800bc 37Patch12: %{name}-pl.po-update.patch
03cee40d 38%{?patchlevel:%patchset_source -f http://ftp.gnu.org/gnu/bash/bash-4.2-patches/bash41-%03g 1 %{patchlevel}}
8cdc40d7 39URL: http://www.gnu.org/software/bash/
0422a072 40BuildRequires: autoconf
c0ebe85a 41BuildRequires: automake
0422a072 42BuildRequires: bison
de477a4d 43BuildRequires: ncurses-devel >= 5.2
ef04b7a5 44BuildRequires: readline-devel >= 6.2
41a1b1c8 45BuildRequires: rpmbuild(macros) >= 1.462
ccf2597d 46BuildRequires: sed >= 4.0
6b611e4d 47BuildRequires: texinfo
cf6e8919 48%if %{with static}
de477a4d 49# Require static library only for static build
0422a072 50BuildRequires: glibc-static >= 2.2
4e122b9a 51BuildRequires: ncurses-static >= 5.2
ef04b7a5 52BuildRequires: readline-static >= 6.2
de477a4d 53%endif
ef04b7a5 54Requires: readline >= 6.2
0c55bbdc 55Requires: setup >= 2.4.6-2
0b28b541 56Obsoletes: bash-doc
f40d50c2 57Obsoletes: bash2
58Obsoletes: bash2-doc
0b28b541 59Obsoletes: etcskel
60c0b40e 60BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
67581caa 61
62%description
001c539f 63Bash is a GNU project sh-compatible shell or command language
64interpreter. Bash (Bourne Again shell) incorporates useful features
65from the Korn shell (ksh) and the C shell (csh). Most sh scripts can
66be run by bash without modification. Bash offers several improvements
67over sh, including command line editing, unlimited size command
68history, job control, shell functions and aliases, indexed arrays of
69unlimited size and integer arithmetic in any base from two to 64. Bash
70is ultimately intended to conform to the IEEE POSIX P1003.2/ISO 9945.2
71Shell and Tools standard. Bash is the default shell for Linux
72Mandrake. You should install bash because of its popularity and power.
73You'll probably end up using it.
a3871122 74
ef6e8bca 75%description -l es.UTF-8
1d0ad239 76Bash es un interpretador de comandos compatible con sh, que ejecuta
ef6e8bca
JR
77comandos leídos de la entrada padrón o de un archivo. Bash también
78incorpora características útiles de las shells Korn y C (ksh y csh).
79Bash ha sido desarrollado para ser una adición compatible con la
80especificación IEEE Posix para shells y herramientas (IEEE Working
1d0ad239 81Group 1003.2).
82
ef6e8bca 83%description -l de.UTF-8
001c539f 84Bash ist eine sh-kompatible Shell und Kommandosprache aus dem
ef6e8bca 85GNU-Projekt. Bash (Bourne Again Shell) vereinigt die nützlichen
001c539f 86Features aus der Korn-Shell (ksh) und der C-Shell (csh). Die meisten
ef6e8bca 87sh-Skripte laufen ohne Änderungen auf bash. Bash hat viele
001c539f 88Erweiterungen im Vergleich zur "normalen" sh, wie z.B.
ef6e8bca
JR
89Kommandozeilenbearbeitung, unbeschränkte Größe der command-history,
90Job-Kontrolle, Shell-Funktionen und -Aliase, unbegrenzt große
001c539f 91indizierte Arrays und Integer-Arithmetik in einer Basis von 2 bis 64.
92Hauptziel von bash ist es, den IEEE POSIX P1003.2/ISO 9945.2 Shell-
ef6e8bca 93und Tools-Standard einzuhalten. Bash ist die Standard-Shell für Linux
8a4ad51c 94Mandrake.
a3871122 95
ef6e8bca
JR
96%description -l fr.UTF-8
97Bash est un shell (interpréteur de commande) du projet GNU, compatible
001c539f 98avec le shell historique sh. Bash (Bourne Again SHell) comprend de
ef6e8bca
JR
99nombreuses fonctionnalités du Korn SHell (ksh) et du C SHell (csh). La
100plupart des scripts sh sont exécutables sans modifications. Bash
101comprend nombre d'améliorations par rapport à sh : édition de la ligne
102de commande, historique illimité, contrôle des processus
103d'arrière-plan, fonctions de shell, alias, tableaux indexés de taille
104illimitée et calcul sur des entiers dans n'importe quelle base de 2 à
001c539f 10564. Bash est conforme au standard IEEE POSIX P1003.2/ISO 9945.2 Shell
ef6e8bca
JR
106and Tools. Bash est le shell par défaut de Mandrake. Vous devriez
107l'installer du fait de sa puissance et de sa popularité. Vous finirez
001c539f 108probablement par l'utiliser.
7d6d2b69 109
ef6e8bca
JR
110%description -l pl.UTF-8
111Bash (Bourne Again SHell) jest projektem GNU powłoki kompatybilnej z
112sh oraz interpretera języka poleceń. Posiada użyteczne właściwości
113powłok Korn (ksh) i C (csh). Większość skryptów sh może być
114uruchamiana w bashu bez modyfikacji. Oferuje on kilka ulepszeń w
115stosunku do sh, włączając edycję linii poleceń, nieograniczony rozmiar
116historii poleceń, funkcje i aliasy, indeksowane tablice
117nieograniczonych rozmiarów oraz arytmetykę całkowitoliczbową o
118dowolnej podstawie od 2 do 64. W zamierzeniu ostatecznie ma być zgodny
4d6d135d 119ze standardem IEEE POSIX P1003.2/ISO 9945.2 Shell and Tools.
67581caa 120
ef6e8bca
JR
121%description -l pt_BR.UTF-8
122Bash é um interpretador de comandos compatível com sh, que executa
123comandos lidos da entrada padrão ou de um arquivo. Bash também
124incorpora características úteis das shells Korn e C (ksh e csh). Bash
125tem sido desenvolvido para ser uma implementação compatível com a
126especificação IEEE Posix para shells e ferramentas (IEEE Working Group
1d0ad239 1271003.2).
128
ef6e8bca
JR
129%description -l ru.UTF-8
130Bash - это sh-совместимый интерпретатор командного языка (shell),
131исполняющий команды, поступающие со стандартного ввода или из файла.
132Bash включает полезные расширения из интерпретаторов Korn и C shell
133(ksh и csh).
1d0ad239 134
ef6e8bca 135Bash разрабатывается как реализация, отвечающая IEEE Posix Shell and
1d0ad239 136Tools specification (IEEE Working Group 1003.2).
137
ef6e8bca
JR
138%description -l tr.UTF-8
139Bash standart girişten ya da bir dosyadan komut okuyup çalıştıran sh
140uyumlu bir komut dili yorumlayıcısıdır. Aynı zamanda Korn ve C
141kabuklarının (ksh ve csh) kullanışlı özelliklerini de kapsar. Bash,
142IEEE Posix Kabuk ve Araç ayrıntılarına (IEEE Working Group 1003.2)
143uyumlu bir uygulama olarak tasarlanmıştır.
67581caa 144
ef6e8bca
JR
145%description -l uk.UTF-8
146Bash - це sh-сумістний інтерпретатор командної мови (shell),
147виконуючий команди зі стандартного вводу або з файла. Bash містить
148користні розширення з інтерпретаторів Korn та C shell (ksh та csh).
1d0ad239 149
ef6e8bca 150Bash розроблявся як реалізація, що відповідає IEEE Posix Shell and
1d0ad239 151Tools specification (IEEE Working Group 1003.2).
152
4f62851f 153%package static
0d32bda9 154Summary: Statically linked GNU Bourne Again Shell (bash)
dcd748fa 155Summary(pl.UTF-8): Statycznie skonsolidowany GNU Bourne Again Shell (bash)
23ed535f 156Group: Applications/Shells
80a4c26d 157Requires: %{name} = %{version}-%{release}
4f62851f
JR
158
159%description static
001c539f 160Bash is a GNU project sh-compatible shell or command language
161interpreter. Bash (Bourne Again shell) incorporates useful features
162from the Korn shell (ksh) and the C shell (csh). Most sh scripts can
163be run by bash without modification. Bash offers several improvements
164over sh, including command line editing, unlimited size command
165history, job control, shell functions and aliases, indexed arrays of
166unlimited size and integer arithmetic in any base from two to 64. Bash
167is ultimately intended to conform to the IEEE POSIX P1003.2/ISO 9945.2
168Shell and Tools standard. Bash is the default shell for Linux
169Mandrake. You should install bash because of its popularity and power.
2f1a3089 170You'll probably end up using it. This package contains statically
c59be5db 171linked version of bash.
4f62851f 172
ef6e8bca
JR
173%description static -l pl.UTF-8
174Bash jest zaawansowaną powłoką, która wykonuje komendy czytane ze
175standardowego wejścia (stdin) lub z pliku. Posiada właściwości powłok
176Korn i C (ksh i csh). Bash jest również zaimplementowany IEEE Posix
177Shell oraz jest zgodny ze specyfikacją - IEEE Working Group 1003.2. W
97eb1e25 178tym pakiecie jest wersja basha skonsolidowana statycznie.
4f62851f 179
67581caa 180%prep
8bd2c87f 181%setup -q -n %{name}-%{ver} -a5
e588d508 182# official patches
03cee40d 183%{?patchlevel:%patchset_patch 1 %{patchlevel}}
7d6d2b69 184%patch0 -p1
185%patch1 -p1
186%patch2 -p1
187%patch3 -p1
0e4146b6 188%patch4 -p1
6ff1ee53 189%patch5 -p1
de76156e 190%patch6 -p1
c23570b7 191%patch8 -p1
60c0b40e 192%{?with_bash_history:%patch9 -p1}
f2c0c7f0 193%patch10 -p1
232f944c 194%patch11 -p1
678800bc 195%patch12 -p1
4dfcefcb 196
67581caa 197%build
80a4c26d 198cp -f /usr/share/automake/config.* support
f2c0c7f0 199%{__autoconf}
cf6e8919 200for mode in %{?with_static:static} shared; do
a3871122 201%configure \
7d6d2b69 202 --enable-alias \
203 --enable-help-builtin \
204 --enable-history \
205 --enable-job-control \
206 --enable-restricted \
67581caa 207 --enable-readline \
e301b341 208 --with-curses \
209 --enable-extended-glob \
96160a7f 210 --enable-dparen-arithmetic \
c70eed6a 211 --enable-separate-helpfiles \
2246337a 212 --without-bash-malloc \
c23570b7 213 `[ "$mode" = "static" ] && echo "--enable-static-link"` \
61e3c662 214 --with-installed-readline
31838660 215
80a4c26d
JB
216%{__make} \
217 DEFS="-DHAVE_CONFIG_H -D_GNU_SOURCE"
c23570b7 218
5b3ea703 219[ "$mode" = "static" ] && mv -f bash bash.static || :
c23570b7 220done
67581caa 221
e407816c
ER
222%{?with_tests:%{__make} tests}
223
67581caa 224%install
5b3ea703 225rm -rf $RPM_BUILD_ROOT
c70eed6a 226install -d $RPM_BUILD_ROOT{/bin,/etc/skel,%{_datadir}/%{name}}
cf6e8919 227%{?with_bash_history:install -d $RPM_BUILD_ROOT/var/log/bash_hist}
83cdd671 228
2e52df12
PG
229%{__make} install \
230 DESTDIR=$RPM_BUILD_ROOT
7d6d2b69 231
5b3ea703 232mv -f $RPM_BUILD_ROOT%{_bindir}/bash $RPM_BUILD_ROOT/bin
a651f1c4 233%{?with_static:install bash.static $RPM_BUILD_ROOT/bin}
e301b341 234
5b3ea703 235install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/bashrc
001c539f 236echo .so bash.1 > $RPM_BUILD_ROOT%{_mandir}/man1/rbash.1
237
1e516eb0 238for d in es fr it ja ko nl pl ; do
6bcdcdc6
JB
239 install -d $RPM_BUILD_ROOT%{_mandir}/$d/man1
240 install man/$d/* $RPM_BUILD_ROOT%{_mandir}/$d/man1
241 echo .so bash.1 > $RPM_BUILD_ROOT%{_mandir}/$d/man1/rbash.1
242done
243
7a3d4a72 244ln -sf bash $RPM_BUILD_ROOT/bin/rbash
67581caa 245
5b3ea703
TP
246install %{SOURCE2} $RPM_BUILD_ROOT/etc/skel/.bash_logout
247install %{SOURCE3} $RPM_BUILD_ROOT/etc/skel/.bash_profile
248install %{SOURCE4} $RPM_BUILD_ROOT/etc/skel/.bashrc
cd415c53 249rm -f $RPM_BUILD_ROOT%{_infodir}/dir
8f301559 250
d5597b0f
ER
251# use our bugtracker, upstream will ignore reports from this anyway
252rm -f $RPM_BUILD_ROOT%{_bindir}/bashbug
253
60c0b40e
JB
254%find_lang %{name}
255
7a3d4a72
JB
256%clean
257rm -rf $RPM_BUILD_ROOT
258
41a1b1c8
ER
259%post -p <lua>
260%lua_add_etc_shells /bin/bash /bin/rbash
b77458b2 261os.execute("/usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1")
7d6d2b69 262
41a1b1c8
ER
263%preun -p <lua>
264if arg[2] == 0 then
265 %lua_remove_etc_shells /bin/bash /bin/rbash
266end
4f62851f 267
27fc3f6e
ER
268%postun -p /sbin/postshell
269-/usr/sbin/fix-info-dir -c %{_infodir}
f358ed26 270
41a1b1c8
ER
271%post static -p <lua>
272%lua_add_etc_shells /bin/bash.static
273
274%preun static -p <lua>
275if arg[2] == 0 then
276 %lua_remove_etc_shells /bin/bash.static
277end
ee4033f9 278
60c0b40e 279%files -f %{name}.lang
7d6d2b69 280%defattr(644,root,root,755)
60c0b40e 281%doc CHANGES NEWS README doc/{FAQ,INTRO}
7d6d2b69 282
3eb3ef3a
ER
283%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bashrc
284%config(noreplace,missingok) %verify(not md5 mtime size) /etc/skel/.bash_logout
285%config(noreplace,missingok) %verify(not md5 mtime size) /etc/skel/.bash_profile
286%config(noreplace,missingok) %verify(not md5 mtime size) /etc/skel/.bashrc
7d6d2b69 287
96160a7f 288%attr(755,root,root) /bin/bash
289%attr(755,root,root) /bin/rbash
7d6d2b69 290
b26f8c7c 291%{?with_bash_history:%attr(1733,root,root) %dir /var/log/bash_hist}
dd7e7833 292%{_infodir}/bash.info*
8e2e3651 293%{_mandir}/man1/*
1e516eb0 294%lang(es) %{_mandir}/es/man1/*
6bcdcdc6
JB
295%lang(fr) %{_mandir}/fr/man1/*
296%lang(it) %{_mandir}/it/man1/*
297%lang(ja) %{_mandir}/ja/man1/*
298%lang(ko) %{_mandir}/ko/man1/*
299%lang(nl) %{_mandir}/nl/man1/*
300%lang(pl) %{_mandir}/pl/man1/*
38cd3b3d
ER
301%dir %{_datadir}/%{name}
302%doc %{_datadir}/%{name}/*
67581caa 303
a651f1c4
JB
304%if %{with static}
305%files static
306%defattr(644,root,root,755)
307%attr(755,root,root) /bin/bash.static
308%endif
This page took 0.086836 seconds and 4 git commands to generate.