Files
haikuports/app-shells/bash/bash-4.4.005.recipe
2016-11-21 20:35:08 +00:00

98 lines
2.3 KiB
Bash

SUMMARY="The GNU Bourne Again Shell"
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)."
HOMEPAGE="https://www.gnu.org/software/bash/"
COPYRIGHT="1987-2016 Free Software Foundation, Inc."
LICENSE="GNU GPL v3"
REVISION="2"
SOURCE_URI="https://ftp.gnu.org/gnu/bash/bash-4.4.tar.gz"
CHECKSUM_SHA256="d86b3392c1202e8ff5a423b302e6284db7f8f435ea9f39b5b1b20fd3ac36dfcb"
for i in {001..005}; do
eval "SOURCE_URI_$i=\"https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-$i#noarchive\""
done
CHECKSUM_SHA256_001="3e28d91531752df9a8cb167ad07cc542abaf944de9353fe8c6a535c9f1f17f0f"
CHECKSUM_SHA256_002="7020a0183e17a7233e665b979c78c184ea369cfaf3e8b4b11f5547ecb7c13c53"
CHECKSUM_SHA256_003="51df5a9192fdefe0ddca4bdf290932f74be03ffd0503a3d112e4199905e718b2"
CHECKSUM_SHA256_004="ad080a30a4ac6c1273373617f29628cc320a35c8cd06913894794293dc52c8b3"
CHECKSUM_SHA256_005="221e4b725b770ad0bb6924df3f8d04f89eeca4558f6e4c777dfa93e967090529"
SOURCE_DIR="bash-4.4"
PATCHES="
bash-kill_by_name.patch
bash-4.4.patchset
"
ARCHITECTURES="x86_gcc2 x86 x86_64"
PROVIDES="
bash = $portVersion
cmd:bash = $portVersion
cmd:bashbug = $portVersion
cmd:sh
"
REQUIRES="
haiku
lib:libhistory
lib:libreadline >= 7
lib:libncursesw
lib:libintl
lib:libiconv
"
BUILD_REQUIRES="
haiku_devel
devel:libhistory
devel:libreadline >= 7
devel:libncursesw
devel:libintl
"
BUILD_PREREQUIRES="
cmd:autoconf
cmd:awk
cmd:bison
cmd:cmp
cmd:gcc
cmd:make
cmd:patch
cmd:sed
"
GLOBAL_WRITABLE_FILES="settings/bashrc keep-old"
PATCH()
{
for i in {001..005}; do
echo "Applying patch $i..."
sed -e "s/\.\.\/bash-4.4\///" ../../sources-$i/bash44-$i | patch -p0
done
# store bash settings under ~/config/settings
find -type f | xargs sed -i -e 's,~/\.,~/config/settings/,g'
}
BUILD()
{
CPPFLAGS="-DUSE_MKTEMP=1 -DUSE_MKSTEMP=1" runConfigure ./configure \
--without-bash-malloc --with-installed-readline
make $jobArgs
}
INSTALL()
{
make install-strip
ln -s bash $binDir/sh
# Use bash-completion, if available
cat <<'EOF' > $settingsDir/bashrc
#!/bin/bash
[[ $PS1 && -f /system/data/bash-completion/bash_completion ]] && \
. /system/data/bash-completion/bash_completion
EOF
}
TEST()
{
make check
}