Propozycja pakietow do PLD-devel base -- Wariant II

Marcin Korzonek mkorz w shadow.eu.org
Czw, 17 Gru 1998, 23:14:00 CET


[czwartek, 17 grudzień 1998], Ziemek Borowski napisał:
> > bash-2.02.1-1d.i386.rpm
> czy nie należałoby by podzielić basha na dwie częsci: 
> sh i bash? sh kompilowany statycznie a bash dynamicznie? 
> I tego statycznego dać do base (samą binarkę) a basha (dynamicznego, wraz z 
> oprzyrzadowaniem do mocniejszego base ;-) 

Tu pytanie do initscripts developerów: jakie funkcje basha (funkcje od
funkcjonalności, a nie od podprogramów) są potrzebne do prawidłowego
działania skryptów startowych? Czy wystarczy shell skompilowany z opcją
--enable-minimal-config?
W załączniku Q&D spec generujący statycznego sh i dynamicznego basha.

Pozdrawiam
-- 
   Marcin Korzonek
   mkorz w shadow.eu.org
-------------- następna część ---------
Summary:     GNU Bourne Again Shell (bash)
Name:        bash
Version:     2.02.1
Release:     1d
Group:       Shells
Copyright:   GPL
Source:      ftp://prep.ai.mit.edu/pub/gnu/%{name}-%{version}.tar.gz
Source1:     bashrc
Patch:       %{name}.patch
Patch1:      %{name}-fixes.patch
Patch2:      %{name}-paths.patch
Patch3:      %{name}-security.patch
Prereq:      fileutils
Prereq:      grep 
Buildroot:   /tmp/%{name}-%{version}-root
Summary(pl): GNU Bourne Again Shell (bash)
Summary(de): GNU Bourne Again Shell (bash)
Summary(fr): GNU Bourne Again Shell (bash)
Summary(tr): GNU Bourne Again Shell (bash)

%description
Bash is an sh-compatible command language interpreter that
executes commands read from the standard input or from a
file.  Bash also incorporates useful features from the
Korn and C shells (ksh and csh).

Bash is ultimately intended to be a conformant implementation
of the IEEE Posix Shell and Tools specification (IEEE
Working Group 1003.2).

%description -l pl
Bash jest zaawansowanym shellem, który wykonuje komendy czytane ze
standardowego wejścia (stdin) lub z pliku. Posiada właściwości 
shelli Korn i C (ksh i csh). 

Bash ma również zaimplementowany IEEE Posix Shell oraz jest zgodny ze 
specyfikacją - IEEE Working Group 1003.2.

%description -l de
Bash ist ein sh-kompatibler Befehlssprachen-Interpreter, der
über die Standardeingabe oder eine Datei gelesene Befehle ausführt.
Bash beinhaltet außerdem nützliche Funktionen der Korn- und der
C-Shell (ksh und csh).

Bash soll eine kompatible Implementierung der
'IEEE Posix Shell and Tools Specification' (IEEE
Working Group 1003.2) sein.

%description -l fr
Bash est un interpréteur de commande compatible sh qui exécute
les commandes lues sur l'entrée standard ou depuis un fichier.
Bash inclue également des fonctionnalités utiles des shells Korn et C
(ksh et csh).

Bash est prévu pour ętre une implémentation de shell conforme la
spécification Posix IEEE sur les shell et les outils (Groupe de 
travail IEEE 1003.2).

%description -l tr
Bash standart giriţten ya da bir dosyadan komut okuyup çalýţtýran sh uyumlu
bir komut dili yorumlayýcýsýdýr. Ayný zamanda Korn ve C kabuklarýnýn (ksh ve
csh) kullanýţlý özelliklerini de kapsar. Bash, IEEE Posix Kabuk ve Araç
ayrýntýlarýna (IEEE Working Group 1003.2) uyumlu bir uygulama olarak
tasarlanmýţtýr.

%package static
Summary:     GNU Bourne Again Shell statically linked
Group:       Shells
Copyright:   GPL
Summary(pl): GNU Bourne Again Shell (bash) statically linked
Summary(de): GNU Bourne Again Shell (bash) statically linked
Summary(fr): GNU Bourne Again Shell (bash) statically linked
Summary(tr): GNU Bourne Again Shell (bash) statically linked

%description static
Bash linked statically.

%description -l pl static
Bash zlinkowany statycznie.

%prep
%setup -q
%patch  -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1

%build
LDFLAGS=-s CFLAGS=$RPM_OPT_FLAGS \
	./configure --prefix=/usr \
	--enable-minimal-config \
	--enable-static-link
make 
cp bash bash.static

make distclean
LDFLAGS=-s CFLAGS=$RPM_OPT_FLAGS \
	./configure --prefix=/usr \
	--enable-alias \
	--enable-help-builtin \
	--enable-history \
	--enable-job-control \
	--enable-restricted \
	--enable-readline \
make 

%install
rm -rf $RPM_BUILD_ROOT

install -d $RPM_BUILD_ROOT/{usr,bin,etc}
make prefix=$RPM_BUILD_ROOT/usr install

install bash.static $RPM_BUILD_ROOT/bin/sh

mv $RPM_BUILD_ROOT/usr/bin/bash $RPM_BUILD_ROOT/bin/bash
rm -f $RPM_BUILD_ROOT/usr/bin/installed-bash

gzip -9nf $RPM_BUILD_ROOT/usr/info/bash.info

rm -f $RPM_BUILD_ROOT/usr/bin/bash.old

install %{SOURCE1} $RPM_BUILD_ROOT/etc/bashrc

echo .so bash.1 > $RPM_BUILD_ROOT/usr/man/man1/sh.1
echo .so bash.1 > $RPM_BUILD_ROOT/usr/man/man1/rbash.1

ln -sf bash $RPM_BUILD_ROOT/bin/rbash

bzip2 -9 $RPM_BUILD_ROOT/usr/man/man1/*

%clean
rm -rf $RPM_BUILD_ROOT

%post
if [ ! -f /etc/shells ]; then
	echo "/bin/bash" > /etc/shells
	echo "/bin/rbash" >> /etc/shells
else
	if ! grep '^/bin/bash$' /etc/shells > /dev/null; then
		echo "/bin/bash" >> /etc/shells
	fi
	if ! grep '^/bin/rbash' /etc/shells > /dev/null; then
		echo "/bin/rbash" >> /etc/shells
	fi

fi

%preun
if [ $1 = 0 ]; then
	grep -v /bin/bash /etc/shells | grep -v /bin/rbash > /etc/shells.new
	mv /etc/shells.new /etc/shells
fi

%post static
if [ ! -f /etc/shells ]; then
	echo "/bin/sh" >> /etc/shells
else
	if ! grep '^/bin/sh$' /etc/shells > /dev/null; then
		echo "/bin/sh" >> /etc/shells
fi

%preun static
if [ $1 = 0 ]; then
	 grep -v /bin/sh > /etc/shells.new
	mv /etc/shells.new /etc/shells
fi


%files
%defattr(644,root,root,755)
%doc NEWS README 

%attr(644,root,root) %config %verify(not size md5 mtime) /etc/bashrc

%attr(711,root,root) /bin/bash
%attr(711,root,root) /bin/rbash
%attr(755,root,root) /usr/bin/*

/usr/info/bash.info.gz

%attr(644,root, man) /usr/man/man1/*

%files static
%attr(711, root, root) /bin/sh

%changelog
* Thu Dec 17 1998 Marcin Korzonek <mkorz w shadow.eu.org>
- splited into two packages, bash-static subpackage contains now 
  statically linked shell, while full featured, dynamically 
  linked bash is part of the main package 

* Sun Sep 05 1998 Wojtek Ślusarczyk <wojtek w shadow.eu.org>
[2.02.1-1d]
- updated to 2.02.1,
- fixed files permissions,
- build with restricted shell support.

* Wed Jun 17 1998 Wojtek Ślusarczyk <wojtek w shadow.eu.org>
[14.7-9d]
- build against glibc-2.1,
- translation modified for pl,
- added %defattr support,
- build from non root's account.

* Mon Apr 27 1998 Prospector System <bugs w redhat.com>

- translations modified for de, fr, tr


* Fri Nov 07 1997 Donnie Barnes <djb w redhat.com>

- added signal handling patch from Dean Gaudet <dgaudet w arctic.org> that
  is based on a change made in bash 2.0.  Should fix some early exit
  problems with suspends and fg.

* Mon Oct 20 1997 Donnie Barnes <djb w redhat.com>

- added %clean

* Mon Oct 20 1997 Erik Troan <ewt w redhat.com>

- added comment explaining why install-info isn't used
- added mips patch 

* Fri Oct 17 1997 Donnie Barnes <djb w redhat.com>

- added BuildRoot

* Tue Jun 03 1997 Erik Troan <ewt w redhat.com>

- built against glibc



Więcej informacji o liście dyskusyjnej pld-devel-pl