summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2014-11-01 19:18:19 +0000
committerMike Frysinger <vapier@gentoo.org>2014-11-01 19:18:19 +0000
commit13c4b815835fe0861833784e0ed7a18cc16de052 (patch)
tree065165186c96ead2ad113afd458dc3cb0c21e19a /app-shells
parentInitial version copied from java-overlay. Ebuild provided by Andrew John Hugh... (diff)
downloadhistorical-13c4b815835fe0861833784e0ed7a18cc16de052.tar.gz
historical-13c4b815835fe0861833784e0ed7a18cc16de052.tar.bz2
historical-13c4b815835fe0861833784e0ed7a18cc16de052.zip
Replace the octal patch with a dumb echo patch to fix printf %b behavior and speed up & shrink down dash #527848 by John Keeping. Put jobs support behind USE=libedit since that controls interactive behavior. Drop autotool regeneration since Debian patches no longer need it.
Package-Manager: portage-2.2.14/cvs/Linux x86_64 Manifest-Sign-Key: 0xD2E96200
Diffstat (limited to 'app-shells')
-rw-r--r--app-shells/dash/ChangeLog11
-rw-r--r--app-shells/dash/Manifest30
-rw-r--r--app-shells/dash/dash-0.5.8.1-r2.ebuild62
-rw-r--r--app-shells/dash/files/dash-0.5.8.1-dumb-echo.patch54
4 files changed, 142 insertions, 15 deletions
diff --git a/app-shells/dash/ChangeLog b/app-shells/dash/ChangeLog
index 37031c5c7bd6..0ad241f58030 100644
--- a/app-shells/dash/ChangeLog
+++ b/app-shells/dash/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for app-shells/dash
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-shells/dash/ChangeLog,v 1.126 2014/11/01 18:08:16 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-shells/dash/ChangeLog,v 1.127 2014/11/01 19:18:17 vapier Exp $
+
+*dash-0.5.8.1-r2 (01 Nov 2014)
+
+ 01 Nov 2014; Mike Frysinger <vapier@gentoo.org> +dash-0.5.8.1-r2.ebuild,
+ +files/dash-0.5.8.1-dumb-echo.patch:
+ Replace the octal patch with a dumb echo patch to fix printf %b behavior and
+ speed up & shrink down dash #527848 by John Keeping. Put jobs support behind
+ USE=libedit since that controls interactive behavior. Drop autotool
+ regeneration since Debian patches no longer need it.
01 Nov 2014; Mike Frysinger <vapier@gentoo.org> dash-0.5.7.4.ebuild:
Mark alpha/arm64/s390/sh stable #524262.
diff --git a/app-shells/dash/Manifest b/app-shells/dash/Manifest
index 49a3a5894002..a45c389cacd4 100644
--- a/app-shells/dash/Manifest
+++ b/app-shells/dash/Manifest
@@ -2,6 +2,7 @@
Hash: SHA256
AUX dash-0.5.5.1-octal.patch 628 SHA256 06741af243014a22ba1b530a5d4e4abd70b944dcb16f9e1ed86290745ff3dbd0 SHA512 cf5764ef60a4a36aff532b2182d76c59746134126b57444f77169be499f21334aebffa4a7db2bd83a6f6be66bd968630351be579b47fbbab1c2876e68126db4b WHIRLPOOL 653bda3038e10bf6e04d0636afcf3177d23023749e20192137eaa8cc1d1c8f8a046f55b9009a896b55c99c60af249ba5d536032e016b3c801440c051ebf2e5ff
+AUX dash-0.5.8.1-dumb-echo.patch 1172 SHA256 38a620b2aa52c78d6379e0dbeda2476f01fe620481958cbf1f92a6c9ce69a479 SHA512 c5dcc40a8daad9d71ce2da31e9066a44e3c8fdd4597781eef0f7108c9fd4e32124e6f1e52bf1c041bc1fd04f879fb2a6f52246567d87927fe16bd51721c21803 WHIRLPOOL ddb0db472444fd404493fb3619ea54dcd327f050b51fc27e09a746d855170925ddc06094ab7135284f01dcc4575cc460bfee1ba627c42aab5bd34409fbb09e52
AUX dash-0.5.8.1-eval-warnx.patch 241 SHA256 13840812b0e03039c4061fac9bfd01106e53ce51e9bfb794c8c4015e6f3033e9 SHA512 fc44b181f236927e3e15f79c8304f212a55d332acfe981a526e957ff27b8ee56f128e1a5c805045218918f7f6d32945ea2d5b099e988f34cf2f56ad061d654ce WHIRLPOOL 6687f231588d3a47f236b1a4ccbba38f5fccf53e441789e789176c4f73dcabe11298c0ae3da6a09a8e51d23766607ee80a88c239223ba4d7372403a7b1159ad9
DIST dash-0.5.7.tar.gz 223794 SHA256 ae89fa9f1145b7748cf0740e1df04cd52fdf8a285da4911dd0f04983efba4e39 SHA512 77ad016fa5fb3fcb0d940b29d3fa914f546d79cdf2221ed47e4dec6d3a005b25d2d32ee1fdd4f662a7a84274572b72235b82e4c39995c7ca0bb049a7d88595b5 WHIRLPOOL cc11d46a76aa201cb02c4f58e6b1b77fe859d34d7f8b6e6320263a2446dc4d229549823e6628875e0caa21a90fe3743026ba5809ba1a78788d8dd9c94207aa48
DIST dash-0.5.8.tar.gz 223028 SHA256 c6db3a237747b02d20382a761397563d813b306c020ae28ce25a1c3915fac60f SHA512 3dc42d3503b33c50b62c0f9104c0e41c4e8fa7490ba72bc09213fcc894d6fd92b9688c58389acf8b538b08f8e9cc179f0bf5572e22175d1960f04554594237b8 WHIRLPOOL df79b1cf81cdbba0d7556175510d1f4d7294185c91a10cc0a8d4a9f940e2c26c681e377103b5f4e5291211b4555340433eae10144cb778d2d4e65e6ab54c98a3
@@ -11,23 +12,24 @@ DIST dash_0.5.8-1.diff.gz 41661 SHA256 d751769cc1ef8b825a177e782f1cd3e35bde7c268
EBUILD dash-0.5.7.3-r1.ebuild 1635 SHA256 d289c590d3b2f77b78a7f089cf3fc666367beab35cf290482fbcf44e8349d125 SHA512 95bd5f723b7c917e8c3e5b1f5df6fa3af1446089e22764726aca6c2b023b7a5748343b8681de72900bee542bdba2f6de973a7c4750e24065b38ad469df08454a WHIRLPOOL 43e8c28bc3584aacd76cb2c80b43b67584930401cce12e9a2aba8df3357d87a76194f0f9c59cffe343ed12012bcf53f61173eb4c860efda8d4fa42a56c2e9139
EBUILD dash-0.5.7.4.ebuild 1701 SHA256 369733cc09e7beebccdb9cb7639721ef670cd6d4d5c4acce83d2b2be3a07427d SHA512 2ef36acf69fe5515e29d5f7cc98384b93e7975c2437cb8ec56a7c63b0cf316d8bd3667ac4e0e378d8985036bb4f1bd186b287cb553a43a853327d15f0069448e WHIRLPOOL 7dc4ac9620543a35ad7c1e16c3c5664e9354feeb11fd6efabe9cfe48433ea6d90fe46942b612ddd7400eb0559362c7180ffc9b64eef9932bfdb31e69632f10f3
EBUILD dash-0.5.8.1-r1.ebuild 1909 SHA256 5d7d2f8c92f528a7cb518eecbcae0abc572e3435cecb822ff493c004a4e0d3c4 SHA512 e9d598fc80ca9eaddc05bdad50ec49c88377f92290b2bd3ef59e4a963a1c077dac99d1a6bb0fe1e9d51d40fc0f060ec720c397c55a9bb292b8b1ed86233d6957 WHIRLPOOL a8153d828cfbca06b27197090598da988a3933a7904ea91c4f046e05a3309f692077bc1f89071eed5241d5a2526c721f3d5e9bb9a18532ca2b4ce916427cc905
+EBUILD dash-0.5.8.1-r2.ebuild 1900 SHA256 da776d66bc89bf0811b24325da0498c3054c61b0365c86da19b3bf9413a9c2c1 SHA512 3fe3ded66f7e46db6d0885ab495245f854615592b04bc65e1080fefc0752fa3c4ff5c3afad3c0d72f8231371f8a7ef105545b02371d94532122488580d3ae1fa WHIRLPOOL c26ea21e2aac45b52ce6230ff79717ee6cd9995c1751140bdbc8fa455e159b7ae39752766b10c02b95ee1785d6df8eae550d32f9cdb084b0ccae86bc9540cf14
EBUILD dash-0.5.8.1.ebuild 1718 SHA256 541f0a54eaef5b00f63561d130a79069aacfe6d539a386c966a032f84c57b19e SHA512 7221e8bcf643b92872122745cd94dfbc16f40ec2a666ca0c8721ad4415ee3eff3965ac49bb9e718c744a3d2857376b7f96dacebef08f80a463ffbb2bd3b09e59 WHIRLPOOL b2305d18c8bbc65fda8f63e5e2bb5ff339bbd0f2949a676e96b6a0c964189b276b0acfb304dc1eddf4544cf2d5776afbd0923edeb836a7b0b4f70f7a4fbfb224
-MISC ChangeLog 16631 SHA256 f8cafa00debb937fcf33e8a9a5cb5ffc7f0693a2ba08c80d8a913871e21f8eb3 SHA512 fff86c3725a36c0a88227b68eea735468408061a748b52781b3fa2a663fb3351fab3e9b7fa92906c59d176f1ac1fe6e3ac7ed1904103642cabba5fde88a8a946 WHIRLPOOL 22a6d1f80d6cc3cc0c70669892fc74c54d19b8ca779d1f010401f771d0ab66e15b96f142b6cf0d7350b94b28f2903b55a797404eee7418e397e839dacacf48cb
+MISC ChangeLog 17063 SHA256 eae4831704660884686ed4d29a260b880ede37ad5f6b1663d2eb7ebe035aace5 SHA512 50ff6ae10fa6a2c56e8fd2b161421f00bd920715329d4484ea3f7107041e93743b9ce6ee1da8fb734e56394bba1bd72b3585b5b90b053ae165ec35c8f9aca7f4 WHIRLPOOL 66e84c58a6898768b92492a4599391768e995113761d06c4de95b4b1caaa52bd648fc0b49ef446d00412d3220db19bfbbd50d59ea02d23ccffaa547de19a2251
MISC metadata.xml 243 SHA256 993fdb79c93960c7504ae6bd3a41c266d501fc535ce291310c899f7ec02d5a89 SHA512 84daa02e03e46d74c588d3e3a4bba66b32122f3e903799272bb3a41ce3eb43a301b1cfb69828348005aaeedf84317cf5e913ed0434d5a5c4d038562dba4c85ea WHIRLPOOL 52ed699028813630102a2aafdf579e97c1740c95f683afb31160ec8c2f8adb8cc185e5957461f9fb0223f69fb96f16b634cce3d16c7796a9dbac677aa12f4543
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
-iQIcBAEBCAAGBQJUVSGSAAoJEPGu1DbS6WIAsbYP/iDvEQ0c6wM47LR+RpEcX9AA
-+fhXAnlrv9hqhP8F2NkJPMoJKgcoKo+qA50ywvrDbjPOo0SNr1Z60+/iOxCs3V+C
-LuDyyegX/GcP4FfGfu//hbs2Jh+wj92+bB1lFO3PhU4Yg4NDablaa0rFRB96G/jQ
-DDmEB8bM9ea797tjdoEuk8gbOsJSu3IA2s61hGrudFrNM9hFNfd+I23nBnHpbomU
-TgybteZ0qFkZofePl6OyqeN8OhOSkctxVPhUvNB3U3EGp3QXHILZSkcYvrmc/8zp
-Dssq9zAGfvzZFy9YwHgrrDUGuoRA7M9+Kr2OszBG3/ga04U/iXLLXO1VizpZRWAZ
-yb6ApgLlzhk+Z3B2UHF5zXtCO95W5JHJ2aud6si9MrJ4vgjbBnlvD0uD1R/bEaHA
-lEyHq0uOFIePpIuh/BKUt+y1ZBBElnVspf6VawZdF8e5Ti2ByfhwnX4g2aNvHUQE
-PDFL9xzANwMEv7rkA2cTbHYdFXBrBohoKxkSZPigh+EWDGf6qEOjoJbhtwgH3ZKe
-HbkziVgngAC/qhzsTTur/q9UNAYX5kQhW/aLfy516Qk6JJjA9uAbYYbA4K8ZrsUX
-OWuJkZzDWOuwClIsMme+2jGHoQG8rX+nTTknrCdT2CJSr13CuepCkKeuGbJ0jDJC
-JeWxx5hXxqODmskUcM3d
-=NE9n
+iQIcBAEBCAAGBQJUVTH7AAoJEPGu1DbS6WIA5BIP/RJDN1CUIz6/MFzOar/sgZnq
+mW3q5URHhYOoCQ1b6D3xHYNcFtMJs2vFc7YwQRoKG5jvFTZFG2MSMRjCqNFTAKPp
+Xm1LFvY/d2rSDzUTQVbMV4ZzNysj60lm0hp1sbtdGEwcpgEw1XnY7DI6GlSEXmtC
+iGqYcifivsUuAWwglXSDzkmmQ2/ZyzbdGmUZAl50LHeUBGB1uNdzfpCzVB6iav6K
+nsoPVxB9vDXJE2lw0jIJthVx03qvOsfVUyhpBr/kEMzzO8MhejD0fPa9T3oIYD1z
+hm9MdLLvNSwYeS245bYRbrFceK4/2ddnl6t73/NWXXpfnBUaaN1E3s0bHjL7LGFh
+nic5IoJj0HzgdXc1yTEIlwWJIFFqiErumnmuY9CIM/ZlsUx0OLSY//Q5tojfoask
+yc9NMoABvWvwC9tAzi8KFPiKCwjVIyWHXqDz1Y9rFOhW5mwSbRUlpCDdyYM2Qytt
+6sMKwjoUSh4iyQhZABZoZZdG7ctfmqN4R6JcIuo9CU+fOoCZLKVfCphgPr1G9+69
+3tXVlMfgheQblPa6nPu2lUR0N8EmMfFz+fuJRQdlpYfEvC54cloeoB1RifspAHPk
+pPCsuJdJJ2/GGpZyvQbKiq7t1orFIE69cwXkyX3nyz3t8pWZ+8S8xf/UALyLAqbs
+p5D02ksXwLN3bmobCh67
+=lQEl
-----END PGP SIGNATURE-----
diff --git a/app-shells/dash/dash-0.5.8.1-r2.ebuild b/app-shells/dash/dash-0.5.8.1-r2.ebuild
new file mode 100644
index 000000000000..b015465c6583
--- /dev/null
+++ b/app-shells/dash/dash-0.5.8.1-r2.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-shells/dash/dash-0.5.8.1-r2.ebuild,v 1.1 2014/11/01 19:18:17 vapier Exp $
+
+EAPI="4"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+DEB_PV=${PV%.*}
+DEB_PATCH=${PV##*.}
+DEB_PF="${PN}_${DEB_PV}-${DEB_PATCH}"
+MY_P="${PN}-${DEB_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/${PN}-${DEB_PV}.tar.gz
+ mirror://debian/pool/main/d/dash/${DEB_PF}.diff.gz"
+
+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}
+
+src_prepare() {
+ epatch "${WORKDIR}"/${DEB_PF}.diff
+ epatch */debian/diff/*
+ epatch "${FILESDIR}"/${PN}-0.5.8.1-dumb-echo.patch #337329 #527848
+ epatch "${FILESDIR}"/${PN}-0.5.8.1-eval-warnx.patch
+
+ # 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
+ dodoc */debian/changelog
+}
diff --git a/app-shells/dash/files/dash-0.5.8.1-dumb-echo.patch b/app-shells/dash/files/dash-0.5.8.1-dumb-echo.patch
new file mode 100644
index 000000000000..e8a37d667b9a
--- /dev/null
+++ b/app-shells/dash/files/dash-0.5.8.1-dumb-echo.patch
@@ -0,0 +1,54 @@
+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.
+
+--- a/src/bltin/printf.c
++++ b/src/bltin/printf.c
+@@ -439,34 +444,12 @@
+ int
+ echocmd(int argc, char **argv)
+ {
+- int nonl = 0;
+- struct output *outs = out1;
+-
+- if (!*++argv)
+- goto end;
+- if (equal(*argv, "-n")) {
+- nonl = ~nonl;
+- if (!*++argv)
+- goto end;
++ int i;
++ for (i = 1; i < argc; ++i) {
++ outstr(argv[i], out1);
++ if (i < argc - 1)
++ outc(' ', out1);
+ }
+-
+- do {
+- int c;
+-
+- nonl += conv_escape_str(*argv);
+- outstr(stackblock(), outs);
+- if (nonl > 0)
+- break;
+-
+- c = ' ';
+- if (!*++argv) {
+-end:
+- if (nonl) {
+- break;
+- }
+- c = '\n';
+- }
+- outc(c, outs);
+- } while (*argv);
++ outc('\n', out1);
+ return 0;
+ }