]> git.pld-linux.org Git - packages/ash.git/blobdiff - ash.spec
- dropped pre-cvs changelog
[packages/ash.git] / ash.spec
index f895d366688d7fc0878e99cdd4705e9e78c4c101..d8e75f0178031b9a3dab7c2e2414c91c69f79b22 100644 (file)
--- a/ash.spec
+++ b/ash.spec
@@ -1,15 +1,32 @@
+#
+# 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
 # Branch: HEAD
+
+%if %{with dietlibc}
+%undefine      with_static
+%endif
+
 Summary:       Small bourne shell from Berkeley
 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
 Name:          ash
 Version:       0.4.0
-Release:       6
+Release:       11
 License:       BSD
 Group:         Applications/Shells
 Source0:       %{name}-%{version}.tar.gz
 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
 Patch0:                %{name}-builtin.patch
 Patch1:                %{name}-echo.patch
 Patch2:                %{name}-getcwd.patch
@@ -31,11 +48,18 @@ Patch17:    %{name}-debian.patch
 Patch18:       %{name}-ppid.patch
 Patch19:       %{name}-freebsd.patch
 Patch20:       %{name}-sighup.patch
 Patch18:       %{name}-ppid.patch
 Patch19:       %{name}-freebsd.patch
 Patch20:       %{name}-sighup.patch
-PreReq:                fileutils
-PreReq:                grep
-BuildRequires: glibc-static
-BuildRequires: flex
+Patch21:       %{name}-dietlibc.patch
+Patch22:       %{name}-extern.patch
 BuildRequires: byacc
 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
 
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 Conflicts:     mkinitrd <= 1.7
 
@@ -46,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.
 
 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
 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.
 
 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
 
 %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
 Group:         Applications/Shells
-PreReq:                fileutils
-PreReq:                grep
+Requires(post,preun,verify):   grep
+Requires(preun):       fileutils
 Conflicts:     mkinitrd <= 1.7
 
 %description static
 Conflicts:     mkinitrd <= 1.7
 
 %description static
@@ -81,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.
 
 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
 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.
 
 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
 
 %prep
 %setup -q
@@ -124,24 +174,47 @@ avantaj
 %patch18 -p1
 %patch19 -p1
 %patch20 -p1
 %patch18 -p1
 %patch19 -p1
 %patch20 -p1
+%{?_with_dietlibc:%patch21 -p1}
+%patch22 -p1
 
 %build
 
 %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}"
 
 
-%{__make} OPT_FLAGS="%{rpmcflags}" LDFLAGS="-static %{rpmldflags}"
 mv -f sh ash.static
 mv -f sh ash.static
-%{__make} OPT_FLAGS="%{rpmcflags}" LDFLAGS="%{rpmldflags}"
+%endif
+
+%{__make} \
+       CC="%{__cc}" \
+       OPT_FLAGS="%{rpmcflags}" \
+       LDFLAGS="%{rpmldflags}"
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
 %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
 install sh $RPM_BUILD_ROOT%{_bindir}/ash
-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
 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
 
 %post
+umask 022
 if [ ! -f /etc/shells ]; then
        echo "%{_bindir}/ash" > /etc/shells
        echo "%{_bindir}/bsh" >> /etc/shells
 if [ ! -f /etc/shells ]; then
        echo "%{_bindir}/ash" > /etc/shells
        echo "%{_bindir}/bsh" >> /etc/shells
@@ -154,7 +227,15 @@ else
        fi
 fi
 
        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
 %post static
+umask 022
 if [ ! -f /etc/shells ]; then
        echo "%{_bindir}/ash.static" >> /etc/shells
 else
 if [ ! -f /etc/shells ]; then
        echo "%{_bindir}/ash.static" >> /etc/shells
 else
@@ -163,14 +244,9 @@ else
        fi
 fi
 
        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
 %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
        grep -v '^%{_bindir}/ash\.static$' /etc/shells > /etc/shells.new
        mv -f /etc/shells.new /etc/shells
 fi
@@ -195,15 +271,14 @@ else
        echo "found"
 fi
 
        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/*
 
 %files
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/ash
 %attr(755,root,root) %{_bindir}/bsh
 %{_mandir}/man1/*
 
+%if %{with static}
 %files static
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/ash.static
 %files static
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/ash.static
+%endif
This page took 0.055262 seconds and 4 git commands to generate.