forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
app-shells/dash: Bump to version 0.5.9.1
Package-Manager: portage-2.3.1 Signed-off-by: Lars Wendler <[email protected]>
- Loading branch information
Lars Wendler
committed
Sep 28, 2016
1 parent
83153c0
commit 5f0b322
Showing
3 changed files
with
165 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,4 @@ | ||
DIST dash-0.5.8.tar.gz 223028 SHA256 c6db3a237747b02d20382a761397563d813b306c020ae28ce25a1c3915fac60f SHA512 3dc42d3503b33c50b62c0f9104c0e41c4e8fa7490ba72bc09213fcc894d6fd92b9688c58389acf8b538b08f8e9cc179f0bf5572e22175d1960f04554594237b8 WHIRLPOOL df79b1cf81cdbba0d7556175510d1f4d7294185c91a10cc0a8d4a9f940e2c26c681e377103b5f4e5291211b4555340433eae10144cb778d2d4e65e6ab54c98a3 | ||
DIST dash-0.5.9.1.tar.gz 225217 SHA256 5ecd5bea72a93ed10eb15a1be9951dd51b52e5da1d4a7ae020efd9826b49e659 SHA512 d56a043b8fab4693d3f70cceb531c37174e7ded4acd5549e53048d7ce29125ff21d7e758f51a4a73e06250d051e246467039989275838c19a2579edea3f72b7d WHIRLPOOL 233ced314d1091a7a27fc9a0f86a3d87f9a08d067a8b171ead7294a12b573071e9d63a5607424eb6d4f7a0c193f374a461cd94b205412928b93341d4b75a9095 | ||
DIST dash-0.5.9.tar.gz 224831 SHA256 92793b14c017d79297001556389442aeb9e3c1cc559fd178c979169b1a47629c SHA512 91d4cc69dae8bc73f8da4f771d993f91b041f19637a6dfec9b9acfd8c97d2d819fb445f9ba608f0e7e5df431a934be3b29a93dde7cc3d6400d06e7d7b40dc15f WHIRLPOOL aafe991df7b966bfa16e229c5e9c1891a37f8bb25603b8a87060a0f3b657525026d33250249e159f5a173898ca471f894dd268fed9b458fd1ddf5b989d143da4 | ||
DIST dash_0.5.8-2.diff.gz 41715 SHA256 00168a934864c26cae9a51367fe7ea013ece2d4844ff8bd6893fc00a8fa7b38c SHA512 f067ca162cc463a60b5bcd7926bd6ab1f6cb1757e9cd7894cbf7ba5849b6d9af5381b8ec7264c503db544242690db067b6c034041e262ff93d237f1c06e50e56 WHIRLPOOL 1c904df104c6026d3ec53843fb67563d88dd8a4babb779b369ccd037e1774d722a85ad92c184d713cd7a440be4885c7e739da17f038fcf88545afc527ddabb3f |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
# Copyright 1999-2016 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
# $Id$ | ||
|
||
EAPI=5 | ||
|
||
inherit eutils 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="DASH is a direct descendant of the NetBSD version of ash (the Almquist SHell) and is POSIX compliant" | ||
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 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" | ||
IUSE="libedit static" | ||
|
||
RDEPEND="!static? ( libedit? ( dev-libs/libedit ) )" | ||
DEPEND="${RDEPEND} | ||
virtual/pkgconfig | ||
libedit? ( static? ( dev-libs/libedit[static-libs] ) )" | ||
|
||
#S=${WORKDIR}/${MY_P} | ||
|
||
PATCHES=( | ||
"${FILESDIR}"/${PN}-0.5.9.1-dumb-echo.patch #337329 #527848 | ||
"${FILESDIR}"/${PN}-0.5.8.1-eval-warnx.patch | ||
) | ||
|
||
src_prepare() { | ||
if [[ -n "${DEB_PATCH}" ]] ; then | ||
epatch "${WORKDIR}"/${DEB_PF}.diff | ||
epatch */debian/diff/* | ||
fi | ||
epatch "${PATCHES[@]}" | ||
|
||
# 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() { | ||
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 | ||
econf \ | ||
--bindir="${EPREFIX}"/bin \ | ||
--enable-fnmatch \ | ||
--disable-lineno \ | ||
$(use_with libedit) | ||
} | ||
|
||
src_install() { | ||
default | ||
if [[ -n "${DEB_PATCH}" ]] ; then | ||
dodoc */debian/changelog | ||
fi | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,92 @@ | ||
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.9.1/src/bltin/printf.c | ||
+++ dash-0.5.9.1/src/bltin/printf.c | ||
@@ -449,21 +449,12 @@ | ||
int | ||
echocmd(int argc, char **argv) | ||
{ | ||
- int nonl; | ||
- | ||
- nonl = *++argv ? equal(*argv, "-n") : 0; | ||
- argv += nonl; | ||
- | ||
- do { | ||
- int c; | ||
- | ||
- if (likely(*argv)) | ||
- nonl += print_escape_str("%s", NULL, NULL, *argv++); | ||
- if (likely((nonl + !*argv) > 1)) | ||
- break; | ||
- | ||
- c = *argv ? ' ' : '\n'; | ||
- out1c(c); | ||
- } while (*argv); | ||
+ int i; | ||
+ for (i = 1; i < argc; ++i) { | ||
+ outstr(argv[i], out1); | ||
+ if (i < argc - 1) | ||
+ outc(' ', out1); | ||
+ } | ||
+ outc('\n', out1); | ||
return 0; | ||
} | ||
--- dash-0.5.9.1/src/dash.1 | ||
+++ dash-0.5.9.1/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. |