Files
haikuports/app-shells/dash/dash-0.5.12.recipe
OscarL b11ebf5afa dash: update to version 0.5.12. (#11441)
* dash: update to version 0.5.12.

Removed old Gentoo patches (Debian has a bunch that might be worth adding, perhaps).

Removed spurious readline dependency.

Apparently, libedit could be used instead ("--with-libedit" option of ./configure),
but then it fails to compile. Easily fixed, but resulting binary still doesn't do proper
line editting at all.

Removed TEST() as "make check" doesn't do anything meaningful.

Smoke tested (on beta5 64 bits) by using it to "jam -q -j4 Terminal" on Haiku's source tree
(making sure dash was set as JAMSHELL, of course).

* dash: import some patches from Debian.

Got them from:

https://salsa.debian.org/debian/dash/-/tree/debian/unstable/debian/patches?ref_type=heads
2024-12-18 07:34:50 +01:00

68 lines
1.7 KiB
Bash

SUMMARY="POSIX-compliant implementation of /bin/sh"
DESCRIPTION="Dash is a POSIX-compliant implementation of /bin/sh that aims to \
be as small as possible. It does this without sacrificing speed where \
possible. In fact, it is significantly faster than bash (the GNU Bourne-Again \
Shell) for most tasks."
HOMEPAGE="http://gondor.apana.org/~herbert/dash/"
COPYRIGHT="1989-1994 The Regents of the University of California
1997 Christos Zoulas
1997-2005 Herbert Xu"
LICENSE="GNU GPL v3"
REVISION="1"
SOURCE_URI="http://gondor.apana.org.au/~herbert/dash/files/dash-$portVersion.tar.gz"
CHECKSUM_SHA256="6a474ac46e8b0b32916c4c60df694c82058d3297d8b385b74508030ca4a8f28a"
PATCHES="
0007-Don-t-execute-binary-files-if-execve-returned-ENOEXE.diff
0009-dash-Fix-stack-overflow-from-infinite-recursion-in-s.patch
0010-exec-Check-executable-bit-when-searching-path.patch
0018-builtin-Don-t-early-exit-when-first-hash-r-is-found.patch
0019-builtin-Actually-accept-ulimit-r.patch
0021-jobs-Implement-pipefail-option.patch
"
ARCHITECTURES="all !x86_gcc2 ?x86"
SECONDARY_ARCHITECTURES="x86"
commandSuffix=$secondaryArchSuffix
commandBinDir=$binDir
if [ "$targetArchitecture" = x86_gcc2 ]; then
commandSuffix=
commandBinDir=$prefix/bin
fi
PROVIDES="
dash$secondaryArchSuffix = $portVersion
cmd:dash$commandSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
"
BUILD_PREREQUIRES="
cmd:awk
cmd:gcc$secondaryArchSuffix
cmd:make
"
defineDebugInfoPackage dash$secondaryArchSuffix \
"$commandBinDir"/dash
BUILD()
{
runConfigure --omit-dirs binDir ./configure \
--bindir="$commandBinDir" \
--disable-dependency-tracking
# libbsd.so needed for "wait3()"
make $jobArgs LIBS="-lbsd"
}
INSTALL()
{
make install
}