Files
haikuports/app-shells/bash/bash-5.0.017.recipe
2020-05-22 16:22:22 +02:00

113 lines
3.4 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-2020 Free Software Foundation, Inc."
LICENSE="GNU GPL v3"
REVISION="1"
SOURCE_URI="https://ftpmirror.gnu.org/bash/bash-5.0.tar.gz"
CHECKSUM_SHA256="b4a80f2ac66170b2913efbfb9f2594f1f76c7b1afd11f799e22035d63077fb4d"
for i in {001..17}; do
eval "SOURCE_URI_$i=\"https://ftpmirror.gnu.org/bash/bash-5.0-patches/bash50-$i#noarchive\""
done
CHECKSUM_SHA256_001="f2fe9e1f0faddf14ab9bfa88d450a75e5d028fedafad23b88716bd657c737289"
CHECKSUM_SHA256_002="87e87d3542e598799adb3e7e01c8165bc743e136a400ed0de015845f7ff68707"
CHECKSUM_SHA256_003="4eebcdc37b13793a232c5f2f498a5fcbf7da0ecb3da2059391c096db620ec85b"
CHECKSUM_SHA256_004="14447ad832add8ecfafdce5384badd933697b559c4688d6b9e3d36ff36c62f08"
CHECKSUM_SHA256_005="5bf54dd9bd2c211d2bfb34a49e2c741f2ed5e338767e9ce9f4d41254bf9f8276"
CHECKSUM_SHA256_006="d68529a6ff201b6ff5915318ab12fc16b8a0ebb77fda3308303fcc1e13398420"
CHECKSUM_SHA256_007="17b41e7ee3673d8887dd25992417a398677533ab8827938aa41fad70df19af9b"
CHECKSUM_SHA256_008="eec64588622a82a5029b2776e218a75a3640bef4953f09d6ee1f4199670ad7e3"
CHECKSUM_SHA256_009="ed3ca21767303fc3de93934aa524c2e920787c506b601cc40a4897d4b094d903"
CHECKSUM_SHA256_010="d6fbc325f0b5dc54ddbe8ee43020bced8bd589ddffea59d128db14b2e52a8a11"
CHECKSUM_SHA256_011="2c4de332b91eaf797abbbd6c79709690b5cbd48b12e8dfe748096dbd7bf474ea"
CHECKSUM_SHA256_012="2943ee19688018296f2a04dbfe30b7138b889700efa8ff1c0524af271e0ee233"
CHECKSUM_SHA256_013="f5d7178d8da30799e01b83a0802018d913d6aa972dd2ddad3b927f3f3eb7099a"
CHECKSUM_SHA256_014="5d6eee6514ee6e22a87bba8d22be0a8621a0ae119246f1c5a9a35db1f72af589"
CHECKSUM_SHA256_015="a517df2dda93b26d5cbf00effefea93e3a4ccd6652f152f4109170544ebfa05e"
CHECKSUM_SHA256_016="ffd1d7a54a99fa7f5b1825e4f7e95d8c8876bc2ca151f150e751d429c650b06d"
CHECKSUM_SHA256_017="4cf3b9fafb8a66d411dd5fc9120032533a4012df1dc6ee024c7833373e2ddc31"
SOURCE_DIR="bash-5.0"
PATCHES="
bash-kill_by_name.patch
bash-5.0.patchset
"
ARCHITECTURES="x86_gcc2 x86 x86_64 sparc m68k"
PROVIDES="
bash = $portVersion
cmd:bash = $portVersion
cmd:bashbug = $portVersion
cmd:sh
"
REQUIRES="
haiku
lib:libhistory
lib:libreadline
lib:libncursesw
lib:libintl
lib:libiconv
"
BUILD_REQUIRES="
haiku_devel
devel:libhistory >= 8
devel:libreadline >= 8
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()
{
cd $sourceDir
for i in {001..017}; do
echo "Applying patch $i..."
eval f=\$sourceDir$i/bash50-$i
sed -e "s|\.\./bash-5.0/||" "$f" | patch -p0
done
# store bash settings under ~/config/settings
find -type f -name "*.c" -o -name "*.def" -o -name "*.h" -o -name "*.1" \
| 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
}