mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
app-shells/dash: remove old
Signed-off-by: Mike Gilbert <floppym@gentoo.org>
This commit is contained in:
@@ -1,3 +1,2 @@
|
||||
DIST dash-0.5.10.1.tar.gz 225253 BLAKE2B 55dbdca7f01d19656e002d6e210bcae920619e2e88d4d174a3e08cbbc40bf867ece3f24ce9690ec64f95b1f0995ab35cabc08381ac031a33b55282cec0b09e73 SHA512 7ca3bbcf8bac84d359cde710a9ab393f05cf8522e969a2c110d2e71620e53f349387128045e68738dc621afe0b48f43ae3d32851187f2ae02d49b3e2575ffa6b
|
||||
DIST dash-0.5.10.2.tar.gz 225196 BLAKE2B af48879d29aee8041949b51f08eb89c3938e77b2e05553a3e1a9939da7b00fd80f7b9fb35f33e18b0c11850bfb1b8377e9dc9bcfd80754fd29c9d160e0ce5a4d SHA512 0ae29be77794df0ba254967649b9728611a75fbb3acd32ab6634d76399d1ce97c7d12d31da465482a7e4f3207093415c496c39525cace9b78ab3cb9444dd7640
|
||||
DIST dash-0.5.9.1.tar.gz 225217 BLAKE2B a80aa00ea5418d00b03c9ded21ef5c3a28d599059d1ac2f20082867b71ece6afac2f0bce9bc09946450c7618ad2c7f95df63b3d519a7f56552a291d09e44a71b SHA512 d56a043b8fab4693d3f70cceb531c37174e7ded4acd5549e53048d7ce29125ff21d7e758f51a4a73e06250d051e246467039989275838c19a2579edea3f72b7d
|
||||
|
||||
@@ -1,79 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit flag-o-matic toolchain-funcs versionator
|
||||
|
||||
#MY_PV="$(get_version_component_range 1-3)"
|
||||
DEB_PATCH="" #$(get_version_component_range 4)
|
||||
#MY_P="${PN}-${MY_PV}"
|
||||
|
||||
DESCRIPTION="Debian Almquist Shell"
|
||||
HOMEPAGE="http://gondor.apana.org.au/~herbert/dash/"
|
||||
SRC_URI="http://gondor.apana.org.au/~herbert/dash/files/${P}.tar.gz"
|
||||
if [[ -n "${DEB_PATCH}" ]] ; then
|
||||
DEB_PF="${PN}_${MY_PV}-${DEB_PATCH}"
|
||||
SRC_URI+=" mirror://debian/pool/main/d/dash/${DEB_PF}.diff.gz"
|
||||
fi
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="libedit static vanilla"
|
||||
|
||||
RDEPEND="!static? ( libedit? ( dev-libs/libedit ) )"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
libedit? ( static? ( dev-libs/libedit[static-libs] ) )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-0.5.9.1-format-security.patch
|
||||
"${FILESDIR}"/${P}-parser.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if [[ -n "${DEB_PATCH}" ]] ; then
|
||||
eapply "${WORKDIR}"/${DEB_PF}.diff
|
||||
eapply */debian/diff/*
|
||||
fi
|
||||
|
||||
#337329 #527848
|
||||
use vanilla || eapply "${FILESDIR}"/${PN}-0.5.10-dumb-echo.patch
|
||||
|
||||
default
|
||||
|
||||
# Fix the invalid sort
|
||||
sed -i -e 's/LC_COLLATE=C/LC_ALL=C/g' src/mkbuiltins
|
||||
|
||||
# Use pkg-config for libedit linkage
|
||||
sed -i \
|
||||
-e "/LIBS/s:-ledit:\`$(tc-getPKG_CONFIG) --libs libedit $(usex static --static '')\`:" \
|
||||
configure || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# don't redefine stat on Solaris
|
||||
if [[ ${CHOST} == *-solaris* ]] ; then
|
||||
export ac_cv_func_stat64=yes
|
||||
fi
|
||||
append-cppflags -DJOBS=$(usex libedit 1 0)
|
||||
use static && append-ldflags -static
|
||||
# Do not pass --enable-glob due to #443552.
|
||||
# Autotools use $LINENO as a proxy for extended debug support
|
||||
# (i.e. they're running bash), so disable that. #527644
|
||||
local myeconfargs=(
|
||||
--bindir="${EPREFIX}"/bin
|
||||
--enable-fnmatch
|
||||
--disable-lineno
|
||||
$(use_with libedit)
|
||||
)
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
if [[ -n "${DEB_PATCH}" ]] ; then
|
||||
dodoc */debian/changelog
|
||||
fi
|
||||
}
|
||||
@@ -1,81 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit flag-o-matic toolchain-funcs versionator
|
||||
|
||||
#MY_PV="$(get_version_component_range 1-3)"
|
||||
DEB_PATCH="" #$(get_version_component_range 4)
|
||||
#MY_P="${PN}-${MY_PV}"
|
||||
|
||||
DESCRIPTION="Debian Almquist Shell"
|
||||
HOMEPAGE="http://gondor.apana.org.au/~herbert/dash/"
|
||||
SRC_URI="http://gondor.apana.org.au/~herbert/dash/files/${P}.tar.gz"
|
||||
if [[ -n "${DEB_PATCH}" ]] ; then
|
||||
DEB_PF="${PN}_${MY_PV}-${DEB_PATCH}"
|
||||
SRC_URI+=" mirror://debian/pool/main/d/dash/${DEB_PF}.diff.gz"
|
||||
fi
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="libedit static vanilla"
|
||||
|
||||
RDEPEND="!static? ( libedit? ( dev-libs/libedit ) )"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
libedit? ( static? ( dev-libs/libedit[static-libs] ) )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-0.5.9.1-format-security.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if [[ -n "${DEB_PATCH}" ]] ; then
|
||||
eapply "${WORKDIR}"/${DEB_PF}.diff
|
||||
eapply */debian/diff/*
|
||||
fi
|
||||
|
||||
#337329 #527848
|
||||
use vanilla || eapply "${FILESDIR}"/${PN}-0.5.10-dumb-echo.patch
|
||||
|
||||
default
|
||||
|
||||
# Fix the invalid sort
|
||||
sed -i -e 's/LC_COLLATE=C/LC_ALL=C/g' src/mkbuiltins
|
||||
|
||||
# Use pkg-config for libedit linkage
|
||||
sed -i \
|
||||
-e "/LIBS/s:-ledit:\`$(tc-getPKG_CONFIG) --libs libedit $(usex static --static '')\`:" \
|
||||
configure || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# don't redefine stat on Solaris
|
||||
if [[ ${CHOST} == *-solaris* ]] ; then
|
||||
export ac_cv_func_stat64=yes
|
||||
|
||||
# if your headers strictly adhere to POSIX, you'll need this too
|
||||
[[ ${CHOST##*solaris2.} -le 10 ]] && append-cppflags -DNAME_MAX=255
|
||||
fi
|
||||
append-cppflags -DJOBS=$(usex libedit 1 0)
|
||||
use static && append-ldflags -static
|
||||
# Do not pass --enable-glob due to #443552.
|
||||
# Autotools use $LINENO as a proxy for extended debug support
|
||||
# (i.e. they're running bash), so disable that. #527644
|
||||
local myeconfargs=(
|
||||
--bindir="${EPREFIX}"/bin
|
||||
--enable-fnmatch
|
||||
--disable-lineno
|
||||
$(use_with libedit)
|
||||
)
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
if [[ -n "${DEB_PATCH}" ]] ; then
|
||||
dodoc */debian/changelog
|
||||
fi
|
||||
}
|
||||
@@ -1,92 +0,0 @@
|
||||
http://bugs.gentoo.org/337329
|
||||
http://bugs.gentoo.org/527848
|
||||
|
||||
there's no requirement for `echo` to support escape sequences. bash, by default,
|
||||
does not, while dash always does. POSIX permits either behavior:
|
||||
http://pubs.opengroup.org/onlinepubs/9699919799/utilities/echo.html
|
||||
|
||||
however, since the behavior is not portable, no one should be relying on echo
|
||||
having any specific behavior. they should use `printf` when they want an escape
|
||||
sequence. it also makes dash smaller & faster to disable this logic entirely.
|
||||
|
||||
--- dash-0.5.10/src/bltin/printf.c
|
||||
+++ dash-0.5.10/src/bltin/printf.c
|
||||
@@ -457,22 +457,13 @@
|
||||
int
|
||||
echocmd(int argc, char **argv)
|
||||
{
|
||||
- const char *lastfmt = snlfmt;
|
||||
- int nonl;
|
||||
+ int i;
|
||||
|
||||
- if (*++argv && equal(*argv, "-n")) {
|
||||
- argv++;
|
||||
- lastfmt = "%s";
|
||||
+ for (i = 1; i < argc; ++i) {
|
||||
+ outstr(argv[i], out1);
|
||||
+ if (i < argc - 1)
|
||||
+ outc(' ', out1);
|
||||
}
|
||||
-
|
||||
- do {
|
||||
- const char *fmt = "%s ";
|
||||
- char *s = *argv;
|
||||
-
|
||||
- if (!s || !*++argv)
|
||||
- fmt = lastfmt;
|
||||
-
|
||||
- nonl = print_escape_str(fmt, NULL, NULL, s ?: nullstr);
|
||||
- } while (!nonl && *argv);
|
||||
+ outc('\n', out1);
|
||||
return 0;
|
||||
}
|
||||
--- dash-0.5.10/src/dash.1
|
||||
+++ dash-0.5.10/src/dash.1
|
||||
@@ -1182,43 +1182,15 @@
|
||||
option turns off the effect of any preceding
|
||||
.Fl P
|
||||
options.
|
||||
-.It Xo echo Op Fl n
|
||||
+.It Xo echo
|
||||
.Ar args...
|
||||
.Xc
|
||||
Print the arguments on the standard output, separated by spaces.
|
||||
-Unless the
|
||||
-.Fl n
|
||||
-option is present, a newline is output following the arguments.
|
||||
.Pp
|
||||
-If any of the following sequences of characters is encountered during
|
||||
-output, the sequence is not output. Instead, the specified action is
|
||||
-performed:
|
||||
-.Bl -tag -width indent
|
||||
-.It Li \eb
|
||||
-A backspace character is output.
|
||||
-.It Li \ec
|
||||
-Subsequent output is suppressed. This is normally used at the end of the
|
||||
-last argument to suppress the trailing newline that
|
||||
-.Ic echo
|
||||
-would otherwise output.
|
||||
-.It Li \ef
|
||||
-Output a form feed.
|
||||
-.It Li \en
|
||||
-Output a newline character.
|
||||
-.It Li \er
|
||||
-Output a carriage return.
|
||||
-.It Li \et
|
||||
-Output a (horizontal) tab character.
|
||||
-.It Li \ev
|
||||
-Output a vertical tab.
|
||||
-.It Li \e0 Ns Ar digits
|
||||
-Output the character whose value is given by zero to three octal digits.
|
||||
-If there are zero digits, a nul character is output.
|
||||
-.It Li \e\e
|
||||
-Output a backslash.
|
||||
-.El
|
||||
+No arguments or backslash sequences are supported as they are not portable.
|
||||
+They will be printed out exactly as passed in.
|
||||
.Pp
|
||||
-All other backslash sequences elicit undefined behaviour.
|
||||
+You can replace `echo -n ...` with the portable `printf %s ...` construct.
|
||||
.It eval Ar string ...
|
||||
Concatenate all the arguments with spaces.
|
||||
Then re-parse and execute the command.
|
||||
@@ -1,66 +0,0 @@
|
||||
From 469c5fd4f57622b1a6571172898ab29430319d4a Mon Sep 17 00:00:00 2001
|
||||
From: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
Date: Fri, 11 May 2018 23:41:25 +0800
|
||||
Subject: parser: Fix incorrect eating of backslash newlines
|
||||
|
||||
With the introduction of synstack->syntax, a number of references
|
||||
to the syntax variable was missed during the conversion. This
|
||||
causes backslash newlines to be incorrectly removed in single
|
||||
quote context.
|
||||
|
||||
This patch also combines these calls into a new helper function
|
||||
pgetc_top.
|
||||
|
||||
Fixes: ab1cecb40478 ("parser: Add syntax stack for recursive...")
|
||||
Reported-by: Leah Neukirchen <leah@vuxu.org>
|
||||
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
---
|
||||
src/parser.c | 11 ++++++++---
|
||||
1 file changed, 8 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/parser.c b/src/parser.c
|
||||
index 8e40781..8bd3db4 100644
|
||||
--- a/src/parser.c
|
||||
+++ b/src/parser.c
|
||||
@@ -853,6 +853,11 @@ static int pgetc_eatbnl(void)
|
||||
return c;
|
||||
}
|
||||
|
||||
+static int pgetc_top(struct synstack *stack)
|
||||
+{
|
||||
+ return stack->syntax == SQSYNTAX ? pgetc() : pgetc_eatbnl();
|
||||
+}
|
||||
+
|
||||
static void synstack_push(struct synstack **stack, struct synstack *next,
|
||||
const char *syntax)
|
||||
{
|
||||
@@ -915,7 +920,7 @@ readtoken1(int firstc, char const *syntax, char *eofmark, int striptabs)
|
||||
attyline();
|
||||
if (synstack->syntax == BASESYNTAX)
|
||||
return readtoken();
|
||||
- c = syntax == SQSYNTAX ? pgetc() : pgetc_eatbnl();
|
||||
+ c = pgetc_top(synstack);
|
||||
goto loop;
|
||||
}
|
||||
#endif
|
||||
@@ -929,7 +934,7 @@ readtoken1(int firstc, char const *syntax, char *eofmark, int striptabs)
|
||||
goto endword; /* exit outer loop */
|
||||
USTPUTC(c, out);
|
||||
nlprompt();
|
||||
- c = syntax == SQSYNTAX ? pgetc() : pgetc_eatbnl();
|
||||
+ c = pgetc_top(synstack);
|
||||
goto loop; /* continue outer loop */
|
||||
case CWORD:
|
||||
USTPUTC(c, out);
|
||||
@@ -1056,7 +1061,7 @@ toggledq:
|
||||
USTPUTC(c, out);
|
||||
}
|
||||
}
|
||||
- c = syntax == SQSYNTAX ? pgetc() : pgetc_eatbnl();
|
||||
+ c = pgetc_top(synstack);
|
||||
}
|
||||
}
|
||||
endword:
|
||||
--
|
||||
cgit v1.1
|
||||
|
||||
Reference in New Issue
Block a user