]> git.pld-linux.org Git - packages/ash.git/blobdiff - ash.spec
- dropped pre-cvs changelog
[packages/ash.git] / ash.spec
index 02e9204ee1e4707d482386c03591fb3f94e9adf6..d8e75f0178031b9a3dab7c2e2414c91c69f79b22 100644 (file)
--- a/ash.spec
+++ b/ash.spec
@@ -1,17 +1,32 @@
-# conditional build
-# --without static
+#
+# Conditional build
+%bcond_without static          # don't build static
+%bcond_with    dietlibc        # link with dietlibc, implies without static
+%bcond_with    uClibc          # link with uclibc
 # Branch: HEAD
+
+%if %{with dietlibc}
+%undefine      with_static
+%endif
+
 Summary:       Small bourne shell from Berkeley
-Summary(de):   Kleine Bourne-Shell von Berkeley
-Summary(fr):   Shell Bourne réduit de Berkeley
-Summary(pl):   Ma³y shell bourne'a
-Summary(tr):   Ufak bir bourne kabuðu
+Summary(de.UTF-8):     Kleine Bourne-Shell von Berkeley
+Summary(es.UTF-8):     Pequeña shell bourne de Berkeley
+Summary(fr.UTF-8):     Shell Bourne réduit de Berkeley
+Summary(pl.UTF-8):     Mały shell bourne'a
+Summary(pt_BR.UTF-8):  Pequena shell bourne de Berkeley
+Summary(ru.UTF-8):     Облегченная версия Bourne shell (sh)
+Summary(tr.UTF-8):     Ufak bir bourne kabuğu
+Summary(uk.UTF-8):     Полегшена версія Bourne shell (sh)
+Summary(zh_CN.UTF-8):  [系统]Berkeley的微型Bourne Shell
+Summary(zh_TW.UTF-8):  [\e-A系\e$)B統]Berkeley的\e-A微\e$)B型Bourne Shell
 Name:          ash
 Version:       0.4.0
-Release:       7
+Release:       11
 License:       BSD
 Group:         Applications/Shells
 Source0:       %{name}-%{version}.tar.gz
+# Source0-md5: 1c59f5b62a081cb0cb3b053c01d79529
 Patch0:                %{name}-builtin.patch
 Patch1:                %{name}-echo.patch
 Patch2:                %{name}-getcwd.patch
@@ -33,11 +48,18 @@ Patch17:    %{name}-debian.patch
 Patch18:       %{name}-ppid.patch
 Patch19:       %{name}-freebsd.patch
 Patch20:       %{name}-sighup.patch
-PreReq:                fileutils
-PreReq:                grep
-%{!?_without_static:BuildRequires:     glibc-static}
-BuildRequires: flex
+Patch21:       %{name}-dietlibc.patch
+Patch22:       %{name}-extern.patch
 BuildRequires: byacc
+%{?with_dietlibc:BuildRequires:        dietlibc-devel}
+BuildRequires: flex
+%if %{with static}
+%{!?with_uClibc:BuildRequires: glibc-static}
+%{?with_uClibc:BuildRequires: uClibc-static > 2:0.9.27-1}
+%endif
+%{?with_uClibc:BuildRequires: uClibc-devel > 2:0.9.27-1}
+Requires(post,preun,verify):   grep
+Requires(preun):       fileutils
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 Conflicts:     mkinitrd <= 1.7
 
@@ -48,34 +70,60 @@ ash is a bourne shell clone from Berkeley. It supports all of the
 standard Bourne shell commands and has the advantage of supporting
 them while remaining considerably smaller than bash.
 
-%description -l de
+%description -l de.UTF-8
 ash ist ein Bourne-Shell-Clone aus Berkeley, der alle
-Standard-Bourne-Shell- Befehle unterstützt und dennoch erheblich
+Standard-Bourne-Shell- Befehle unterstützt und dennoch erheblich
 weniger Platz beansprucht als bash.
 
-%description -l fr
-ash est un clone Berkeley du shell Bourne. Il gère toutes les
-commandes standard du shell Bourne et a l'avantage de les gérer tout
-en restant considérablement plus petit que bash.
+%description -l es.UTF-8
+Ash es un clon del shell bourne de Berkeley. Soporta todos los
+comandos padrón de la Bourne shell y tiene la ventaja de soportarlos
+con un tamaño considerablemente menor del que bash.
+
+%description -l fr.UTF-8
+ash est un clone Berkeley du shell Bourne. Il gère toutes les
+commandes standard du shell Bourne et a l'avantage de les gérer tout
+en restant considérablement plus petit que bash.
+
+%description -l pl.UTF-8
+Ash jest klonem shella Bourne'a z Berkeley. Obsługuje standardowe
+komendy shella Bourne'a i jest mniejszy niż bash.
+
+%description -l pt_BR.UTF-8
+ash é um clone do shell bourne de Berkeley. Ele suporta todos os
+comandos-padrão da Bourne shell e tem a vantagem de suportá-los com um
+tamanho consideravelmente menor do que bash.
 
-%description -l pl
-Ash jest klonem shella Bourne'a z Berkeley. Obs³uguje standardowe
-komendy shella Bourne'a i jest mniejszy ni¿ bash.
+%description -l ru.UTF-8
+Шелл - это базовая системная программа, которая интерпретирует команды
+пользователя, вводимые с клавиатуры или при помощи мыши. Ash - это
+клон Bourne shell (sh) из Беркли. Ash поддерживает все стандартные
+команды шелла sh, будучи значительно меньше чем sh. В ash отсутствуют
+некоторые возможности Bourne shell (например, история команд), но он
+требует значительно меньше памяти.
 
-%description -l tr
-ash, Berkeley'in bir bourne kabuðu kopyasýdýr. Standart bourne kabuðu
-komutlarýnýn tümünü destekler ve bash kabuðundan daha küçük olma
-avantajýna sahiptir.
+%description -l tr.UTF-8
+ash, Berkeley'in bir bourne kabuğu kopyasıdır. Standart bourne kabuğu
+komutlarının tümünü destekler ve bash kabuğundan daha küçük olma
+avantajına sahiptir.
+
+%description -l uk.UTF-8
+Шел - це базова системна програма, котра інтерпретує команди
+користувача, які вводяться з клавіатури або за допомогою миші. Ash -
+це клон Bourne shell (sh) з Берклі. Ash підтримує усі стандартні
+команди шела sh, будучи значно меншим ніж sh. В ash відсутні деякі
+можливості Bourne shell (наприклад, історія команд), зате він вимагає
+значно менше пам'яті.
 
 %package static
 Summary:       Small bourne shell from Berkeley
-Summary(de):   Kleine Bourne-Shell von Berkeley
-Summary(fr):   Shell Bourne réduit de Berkeley
-Summary(pl):   Ma³y shell bourne'a
-Summary(tr):   Ufak bir bourne kabuðu
+Summary(de.UTF-8):     Kleine Bourne-Shell von Berkeley
+Summary(fr.UTF-8):     Shell Bourne réduit de Berkeley
+Summary(pl.UTF-8):     Mały shell bourne'a
+Summary(tr.UTF-8):     Ufak bir bourne kabuğu
 Group:         Applications/Shells
-PreReq:                fileutils
-PreReq:                grep
+Requires(post,preun,verify):   grep
+Requires(preun):       fileutils
 Conflicts:     mkinitrd <= 1.7
 
 %description static
@@ -83,24 +131,24 @@ ash is a bourne shell clone from Berkeley. It supports all of the
 standard Bourne shell commands and has the advantage of supporting
 them while remaining considerably smaller than bash.
 
-%description static -l de
+%description static -l de.UTF-8
 ash ist ein Bourne-Shell-Clone aus Berkeley, der alle
-Standard-Bourne-Shell- Befehle unterstützt und dennoch erheblich
+Standard-Bourne-Shell- Befehle unterstützt und dennoch erheblich
 weniger Platz beansprucht als bash.
 
-%description static -l fr
-ash est un clone Berkeley du shell Bourne. Il gère toutes les
-commandes standard du shell Bourne et a l'avantage de les gérer tout
-en restant considérablement plus petit que bash.
+%description static -l fr.UTF-8
+ash est un clone Berkeley du shell Bourne. Il gère toutes les
+commandes standard du shell Bourne et a l'avantage de les gérer tout
+en restant considérablement plus petit que bash.
 
-%description static -l pl
-Ash jest klonem shella Bourne'a z Berkeley. Obs³uguje standardowe
-komendy shella Bourne'a i jest mniejszy ni¿ bash.
+%description static -l pl.UTF-8
+Ash jest klonem shella Bourne'a z Berkeley. Obsługuje standardowe
+komendy shella Bourne'a i jest mniejszy niż bash.
 
-%description static -l tr
-ash, Berkeley'in bir bourne kabuðu kopyasýdýr. Standart bourne kabuðu
-komutlarýnýn tümünü destekler ve bash kabuðundan daha küçük olma
-avantajýna sahiptir.
+%description static -l tr.UTF-8
+ash, Berkeley'in bir bourne kabuğu kopyasıdır. Standart bourne kabuğu
+komutlarının tümünü destekler ve bash kabuğundan daha küçük olma
+avantajına sahiptir.
 
 %prep
 %setup -q
@@ -126,24 +174,47 @@ avantaj
 %patch18 -p1
 %patch19 -p1
 %patch20 -p1
+%{?_with_dietlibc:%patch21 -p1}
+%patch22 -p1
 
 %build
+%if %{with static}
+%{__make} \
+%if %{with dietlibc}
+       CC="diet %{__cc}" \
+%else
+%if %{with uClibc}
+       CC="%{_target_cpu}-uclibc-gcc"\
+%else
+       CC="%{__cc}"
+%endif
+%endif
+       OPT_FLAGS="%{rpmcflags} -Os" \
+       LDFLAGS="-static %{rpmldflags}"
+
+mv -f sh ash.static
+%endif
 
-%{!?_without_static:%{__make} OPT_FLAGS="%{rpmcflags}" LDFLAGS="-static %{rpmldflags}"}
-%{!?_without_static:mv -f sh ash.static}
-%{__make} OPT_FLAGS="%{rpmcflags}" LDFLAGS="%{rpmldflags}" CC="%{__cc}"
+%{__make} \
+       CC="%{__cc}" \
+       OPT_FLAGS="%{rpmcflags}" \
+       LDFLAGS="%{rpmldflags}"
 
 %install
 rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_mandir}/man1}
 
-install -d $RPM_BUILD_ROOT/{%{_bindir},%{_mandir}/man1}
 install sh $RPM_BUILD_ROOT%{_bindir}/ash
-%{!?_without_static:install ash.static $RPM_BUILD_ROOT%{_bindir}/ash.static}
+%{?with_static:install ash.static $RPM_BUILD_ROOT%{_bindir}/ash.static}
 install sh.1 $RPM_BUILD_ROOT%{_mandir}/man1/ash.1
 echo ".so ash.1" > $RPM_BUILD_ROOT%{_mandir}/man1/bsh.1
-ln -sf ash $RPM_BUILD_ROOT/%{_bindir}/bsh
+ln -sf ash $RPM_BUILD_ROOT%{_bindir}/bsh
+
+%clean
+rm -rf $RPM_BUILD_ROOT
 
 %post
+umask 022
 if [ ! -f /etc/shells ]; then
        echo "%{_bindir}/ash" > /etc/shells
        echo "%{_bindir}/bsh" >> /etc/shells
@@ -156,7 +227,15 @@ else
        fi
 fi
 
+%preun
+if [ "$1" = 0 ]; then
+       umask 022
+       grep -v '^%{_bindir}/ash$' /etc/shells | grep -v '^%{_bindir}/bsh$' > /etc/shells.new
+       mv -f /etc/shells.new /etc/shells
+fi
+
 %post static
+umask 022
 if [ ! -f /etc/shells ]; then
        echo "%{_bindir}/ash.static" >> /etc/shells
 else
@@ -165,14 +244,9 @@ else
        fi
 fi
 
-%preun
-if [ "$1" = 0 ]; then
-       grep -v '^%{_bindir}/ash$' /etc/shells | grep -v '^%{_bindir}/bsh$' > /etc/shells.new
-       mv -f /etc/shells.new /etc/shells
-fi
-
 %preun static
 if [ "$1" = 0 ]; then
+       umask 022
        grep -v '^%{_bindir}/ash\.static$' /etc/shells > /etc/shells.new
        mv -f /etc/shells.new /etc/shells
 fi
@@ -197,15 +271,14 @@ else
        echo "found"
 fi
 
-%clean
-rm -rf $RPM_BUILD_ROOT
-
 %files
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/ash
 %attr(755,root,root) %{_bindir}/bsh
 %{_mandir}/man1/*
 
-%{!?_without_static:%files static}
-%{!?_without_static:%defattr(644,root,root,755)}
-%{!?_without_static:%attr(755,root,root) %{_bindir}/ash.static}
+%if %{with static}
+%files static
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/ash.static
+%endif
This page took 0.054615 seconds and 4 git commands to generate.