|
|
|
|
##
|
|
|
|
|
## bash.spec -- OpenPKG RPM Package Specification
|
|
|
|
|
## Copyright (c) 2000-2015 OpenPKG Foundation e.V. <http://openpkg.net/>
|
|
|
|
|
##
|
|
|
|
|
## Permission to use, copy, modify, and distribute this software for
|
|
|
|
|
## any purpose with or without fee is hereby granted, provided that
|
|
|
|
|
## the above copyright notice and this permission notice appear in all
|
|
|
|
|
## copies.
|
|
|
|
|
##
|
|
|
|
|
## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
|
|
|
|
|
## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
|
|
|
## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
|
|
|
## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
|
|
|
|
|
## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
|
|
|
## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
|
|
|
## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
|
|
|
|
## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
|
|
|
|
## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
|
|
|
## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
|
|
|
|
## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
|
|
|
## SUCH DAMAGE.
|
|
|
|
|
##
|
|
|
|
|
|
|
|
|
|
# package version
|
|
|
|
|
%define V_base_real 4.3
|
|
|
|
|
%define V_base_comp 43
|
|
|
|
|
%define V_plvl_raw 42
|
|
|
|
|
%define V_plvl_pad 042
|
|
|
|
|
|
|
|
|
|
# package information
|
|
|
|
|
Name: bash
|
|
|
|
|
Summary: Bourne-Again Shell
|
|
|
|
|
URL: http://cnswww.cns.cwru.edu/~chet/bash/bashtop.html
|
|
|
|
|
Vendor: Free Software Foundation
|
|
|
|
|
Packager: OpenPKG Foundation e.V.
|
|
|
|
|
Distribution: OpenPKG Community
|
|
|
|
|
Class: CORE
|
|
|
|
|
Group: Shell
|
|
|
|
|
License: GPL
|
|
|
|
|
Version: %{V_base_real}.%{V_plvl_raw}
|
|
|
|
|
Release: 20150828
|
|
|
|
|
|
|
|
|
|
# list of sources
|
|
|
|
|
Source0: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}.tar.gz
|
|
|
|
|
Source1: bash.txt
|
|
|
|
|
Patch0: bash.patch
|
|
|
|
|
Patch1: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-001
|
|
|
|
|
Patch2: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-002
|
|
|
|
|
Patch3: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-003
|
|
|
|
|
Patch4: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-004
|
|
|
|
|
Patch5: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-005
|
|
|
|
|
Patch6: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-006
|
|
|
|
|
Patch7: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-007
|
|
|
|
|
Patch8: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-008
|
|
|
|
|
Patch9: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-009
|
|
|
|
|
Patch10: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-010
|
|
|
|
|
Patch11: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-011
|
|
|
|
|
Patch12: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-012
|
|
|
|
|
Patch13: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-013
|
|
|
|
|
Patch14: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-014
|
|
|
|
|
Patch15: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-015
|
|
|
|
|
Patch16: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-016
|
|
|
|
|
Patch17: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-017
|
|
|
|
|
Patch18: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-018
|
|
|
|
|
Patch19: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-019
|
|
|
|
|
Patch20: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-020
|
|
|
|
|
Patch21: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-021
|
|
|
|
|
Patch22: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-022
|
|
|
|
|
Patch23: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-023
|
|
|
|
|
Patch24: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-024
|
|
|
|
|
Patch25: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-025
|
|
|
|
|
Patch26: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-026
|
|
|
|
|
Patch27: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-027
|
|
|
|
|
Patch28: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-028
|
|
|
|
|
Patch29: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-029
|
|
|
|
|
Patch30: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-030
|
|
|
|
|
Patch31: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-031
|
|
|
|
|
Patch32: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-032
|
|
|
|
|
Patch33: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-033
|
|
|
|
|
Patch34: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-034
|
|
|
|
|
Patch35: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-035
|
|
|
|
|
Patch36: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-036
|
|
|
|
|
Patch37: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-037
|
|
|
|
|
Patch38: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-038
|
|
|
|
|
Patch39: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-039
|
|
|
|
|
Patch40: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-040
|
|
|
|
|
Patch41: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-041
|
|
|
|
|
Patch42: ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/bash%{V_base_comp}-042
|
|
|
|
|
|
|
|
|
|
# build information
|
|
|
|
|
BuildPreReq: OpenPKG, openpkg >= 20140101
|
|
|
|
|
PreReq: OpenPKG, openpkg >= 20140101
|
|
|
|
|
|
|
|
|
|
%description
|
|
|
|
|
Bash (Bourne-Again Shell) 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 intended to be a conformant
|
|
|
|
|
implementation of the IEEE POSIX Shell and Tools specification (IEEE
|
|
|
|
|
Working Group 1003.2).
|
|
|
|
|
|
|
|
|
|
%track
|
|
|
|
|
prog bash = {
|
|
|
|
|
version = %{V_base_real}
|
|
|
|
|
url = ftp://ftp.cwru.edu/pub/bash/
|
|
|
|
|
regex = bash-(__VER__)\.tar\.gz
|
|
|
|
|
}
|
|
|
|
|
prog bash:patches = {
|
|
|
|
|
version = %{V_base_comp}-%{V_plvl_pad}
|
|
|
|
|
url = ftp://ftp.cwru.edu/pub/bash/bash-%{V_base_real}-patches/
|
|
|
|
|
regex = bash(\S+-\d+)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
%prep
|
|
|
|
|
# unpack and patch distribution
|
|
|
|
|
%setup -q -n bash-%{V_base_real}
|
|
|
|
|
%patch -p0
|
|
|
|
|
%patch -p0 -P 1
|
|
|
|
|
%patch -p0 -P 2
|
|
|
|
|
%patch -p0 -P 3
|
|
|
|
|
%patch -p0 -P 4
|
|
|
|
|
%patch -p0 -P 5
|
|
|
|
|
%patch -p0 -P 6
|
|
|
|
|
%patch -p0 -P 7
|
|
|
|
|
%patch -p0 -P 8
|
|
|
|
|
%patch -p0 -P 9
|
|
|
|
|
%patch -p0 -P 10
|
|
|
|
|
%patch -p0 -P 11
|
|
|
|
|
%patch -p0 -P 12
|
|
|
|
|
%patch -p0 -P 13
|
|
|
|
|
%patch -p0 -P 14
|
|
|
|
|
%patch -p0 -P 15
|
|
|
|
|
%patch -p0 -P 16
|
|
|
|
|
%patch -p0 -P 17
|
|
|
|
|
%patch -p0 -P 18
|
|
|
|
|
%patch -p0 -P 19
|
|
|
|
|
%patch -p0 -P 20
|
|
|
|
|
%patch -p0 -P 21
|
|
|
|
|
%patch -p0 -P 22
|
|
|
|
|
%patch -p0 -P 23
|
|
|
|
|
%patch -p0 -P 24
|
|
|
|
|
%patch -p0 -P 25
|
|
|
|
|
%patch -p0 -P 26
|
|
|
|
|
%patch -p0 -P 27
|
|
|
|
|
%patch -p0 -P 28
|
|
|
|
|
%patch -p0 -P 29
|
|
|
|
|
%patch -p0 -P 30
|
|
|
|
|
%patch -p0 -P 31
|
|
|
|
|
%patch -p0 -P 32
|
|
|
|
|
%patch -p0 -P 33
|
|
|
|
|
%patch -p0 -P 34
|
|
|
|
|
%patch -p0 -P 35
|
|
|
|
|
%patch -p0 -P 36
|
|
|
|
|
%patch -p0 -P 37
|
|
|
|
|
%patch -p0 -P 38
|
|
|
|
|
%patch -p0 -P 39
|
|
|
|
|
%patch -p0 -P 40
|
|
|
|
|
%patch -p0 -P 41
|
|
|
|
|
%patch -p0 -P 42
|
|
|
|
|
|
|
|
|
|
# ensure generated data is not re-generated on-the-fly
|
|
|
|
|
sleep 1
|
|
|
|
|
touch y.tab.[ch]
|
|
|
|
|
touch configure config.h.in
|
|
|
|
|
|
|
|
|
|
# adjust paths
|
|
|
|
|
%{l_shtool} subst \
|
|
|
|
|
-e 's;^\(#define.*SYS_PROFILE[^"]*\).*;\1 "%{l_prefix}/etc/bash/profile";' \
|
|
|
|
|
pathnames.h.in
|
|
|
|
|
%{l_shtool} subst \
|
|
|
|
|
-e 's;/etc/profile;%{l_prefix}/etc/bash/profile;' \
|
|
|
|
|
doc/bash.1
|
|
|
|
|
%{l_shtool} subst \
|
|
|
|
|
-e 's;^/\* \(#define.*SYS_BASHRC[^"]*\).*;\1 "%{l_prefix}/etc/bash/bashrc";' \
|
|
|
|
|
-e 's;^/\* \(#define.*SYS_BASH_LOGOUT[^"]*\).*;\1 "%{l_prefix}/etc/bash/bash_logout";' \
|
|
|
|
|
-e 's;/usr/gnu/bin:/usr/local/bin:/bin:/usr/bin:\.;%{l_prefix}/bin:/bin:/usr/bin:%{l_prefix}/sbin:/sbin:/usr/sbin:.;' \
|
|
|
|
|
-e 's;/bin:/usr/bin:/sbin:/usr/sbin:/etc:/usr/etc;%{l_prefix}/bin:/bin:/usr/bin:%{l_prefix}/sbin:/sbin:/usr/sbin;' \
|
|
|
|
|
config-top.h
|
|
|
|
|
%{l_shtool} subst \
|
|
|
|
|
-e 's;^\(#define.*SYS_INPUTRC[^"]*\).*;\1 "%{l_prefix}/etc/bash/inputrc";' \
|
|
|
|
|
lib/readline/rlconf.h
|
|
|
|
|
|
|
|
|
|
# brand with OpenPKG release
|
|
|
|
|
%{l_shtool} subst \
|
|
|
|
|
-e 's;@l_openpkg_release@;%{l_openpkg_release};' \
|
|
|
|
|
version.c
|
|
|
|
|
|
|
|
|
|
%build
|
|
|
|
|
# configure package
|
|
|
|
|
( # force disabled wide-character support
|
|
|
|
|
echo "ac_cv_header_wchar_h=no"
|
|
|
|
|
echo "ac_cv_header_wctype_h=no"
|
|
|
|
|
echo "ac_cv_func_mbsrtowcs=no"
|
|
|
|
|
# force disabled internationalization support
|
|
|
|
|
echo "ac_cv_header_libintl_h=no"
|
|
|
|
|
echo "ac_cv_func_gettext=no"
|
|
|
|
|
echo "ac_cv_func_textdomain=no"
|
|
|
|
|
echo "ac_cv_func_bindtextdomain=no"
|
|
|
|
|
echo "ac_cv_lib_intl_bindtextdomain=no"
|
|
|
|
|
) >config.cache
|
|
|
|
|
CC="%{l_cc}" \
|
|
|
|
|
CFLAGS="%{l_cflags -O}" \
|
|
|
|
|
GREP="grep" \
|
|
|
|
|
./configure \
|
|
|
|
|
--cache-file=./config.cache \
|
|
|
|
|
--prefix=%{l_prefix} \
|
|
|
|
|
--mandir=%{l_prefix}/man \
|
|
|
|
|
--infodir=%{l_prefix}/info \
|
|
|
|
|
--disable-multibyte \
|
|
|
|
|
--enable-debugger \
|
|
|
|
|
--without-gnu-malloc \
|
|
|
|
|
--without-curses \
|
|
|
|
|
--disable-nls
|
|
|
|
|
|
|
|
|
|
# build package
|
|
|
|
|
%{l_make} %{l_mflags}
|
|
|
|
|
|
|
|
|
|
%install
|
|
|
|
|
# install package
|
|
|
|
|
%{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT
|
|
|
|
|
|
|
|
|
|
# strip down installation
|
|
|
|
|
rm -f $RPM_BUILD_ROOT%{l_prefix}/info/dir
|
|
|
|
|
rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man1/bashbug.1
|
|
|
|
|
rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/bashbug
|
|
|
|
|
strip $RPM_BUILD_ROOT%{l_prefix}/bin/bash || true
|
|
|
|
|
rm -rf $RPM_BUILD_ROOT%{l_prefix}/sahre/doc
|
|
|
|
|
|
|
|
|
|
# install global configuration files
|
|
|
|
|
%{l_shtool} mkdir -f -p -m 755 \
|
|
|
|
|
$RPM_BUILD_ROOT%{l_prefix}/etc/bash
|
|
|
|
|
for name in `grep "^<file" %{SOURCE bash.txt} | sed -e 's;^.*name=";;' -e 's;".*$;;'`; do
|
|
|
|
|
(echo ""; cat %{SOURCE bash.txt}; echo "") |\
|
|
|
|
|
sed -e "1,/^<file name=\"$name\">/d" -e "/<\/file>/,\$d" >$name
|
|
|
|
|
%{l_shtool} install -c -m 644 %{l_value -s -a} \
|
|
|
|
|
$name $RPM_BUILD_ROOT%{l_prefix}/etc/bash/
|
|
|
|
|
done
|
|
|
|
|
|
|
|
|
|
# determine installation files
|
|
|
|
|
%{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
|
|
|
|
|
%{l_files_std} \
|
|
|
|
|
'%config %{l_prefix}/etc/bash/*'
|
|
|
|
|
|
|
|
|
|
%files -f files
|
|
|
|
|
|
|
|
|
|
%clean
|
|
|
|
|
|
|
|
|
|
%post
|
|
|
|
|
if [ ".$1" = .1 ]; then
|
|
|
|
|
# display note about login shell prerequisite
|
|
|
|
|
if [ -f /etc/shells ]; then
|
|
|
|
|
if [ ".`grep $RPM_INSTALL_PREFIX/bin/bash /etc/shells`" = . ]; then
|
|
|
|
|
( echo "Hint: To use $RPM_INSTALL_PREFIX/bin/bash as the login"
|
|
|
|
|
echo "shell for users, please add this path to /etc/shells."
|
|
|
|
|
) | %{l_rpmtool} msg -b -t notice
|
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
|