summaryrefslogtreecommitdiff
path: root/app-shells/bash-completion
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /app-shells/bash-completion
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'app-shells/bash-completion')
-rw-r--r--app-shells/bash-completion/Manifest10
-rw-r--r--app-shells/bash-completion/bash-completion-2.4-r1.ebuild98
-rw-r--r--app-shells/bash-completion/bash-completion-2.7-r3.ebuild133
-rw-r--r--app-shells/bash-completion/bash-completion-2.8.ebuild136
-rw-r--r--app-shells/bash-completion/bash-completion-9999.ebuild136
-rw-r--r--app-shells/bash-completion/files/bash-completion-2.1-escape-characters-r1.patch27
-rw-r--r--app-shells/bash-completion/metadata.xml29
7 files changed, 569 insertions, 0 deletions
diff --git a/app-shells/bash-completion/Manifest b/app-shells/bash-completion/Manifest
new file mode 100644
index 000000000000..0accd3f66e80
--- /dev/null
+++ b/app-shells/bash-completion/Manifest
@@ -0,0 +1,10 @@
+AUX bash-completion-2.1-escape-characters-r1.patch 1084 BLAKE2B 62a9ccb7b1cc4162db2f8e35fb20d3a24f9e4c067e5297816d91a85ffcdd3ff43695f3c361959cba59b887afd0d12e75fa317899054d3a615ee3da615a4409ec SHA512 b7cb548024fbc68e87d781208a378299c399d2661121290c500d62cd66855acc02848710b44c363917c3c4923e063212a2b56c9b0c08deb71aba308d75939cab
+DIST bash-completion-2.4.tar.xz 276148 BLAKE2B 1ca38db1d1ad9f0bf7d1aa4e49cba1c82a6a575b05118099b609da12bf2e369637be907cba1d46e1e33fface482ebd7c63d70d56c948e45ef71725780ffb2171 SHA512 b852e0a38417dfc3754a91dae2d107f99a3c2970d835a4bbaa80f2a4db8d670bc3820ddc6ada26f68070f22fb4c1db7abe50ad489b1c0f8497b1e6e91be27627
+DIST bash-completion-2.7.tar.xz 280048 BLAKE2B 88b09f451fd4e14daf8e139951a4b65aaa9d9b1d86dceade388a726ac7f3caff2546597695c3f0cbd5dd64e20472d0cf3e98e0f367898b81d696d4ccb8f2fb73 SHA512 514709ad2e5f6bd4e20027c7049a1144c1854a37b653d5c11fad1cdf7a46d0e1afca725d6ce75d49691149e0de57be85747f704ac1c429ef4cea114bfbff8fcd
+DIST bash-completion-2.8.tar.xz 286128 BLAKE2B a99faeb3c9ee2ea6d1cc9988e61951f4e688ac0b3c6837d1fd43381519fedf5f95167e8dbc166543b0235f3ac61d92af35eb8399efc0cd297a62849071dee5c7 SHA512 d839ef5a98811a2aade7ebdc0bc84c84a41c74db384f89913b06f3c25add1ba22528ac25392b19d27280685d258c74dcdc11247cbaae5b8d82f2c0b546abc268
+DIST bashcomp-2.0.2.tar.gz 3625 BLAKE2B ebd835e23634e8a7491467ad66c53941763cea43bad75fe24982d3885be2d2ba132e5273a655fec34705224315d7a3f0248c030fb7685fc613ac4f489cde5bf5 SHA512 46bc1bcc32263135f44be68569459a409250dd2c81c18190735f11e13a26508e9d3cb91d24a8fe7b21bdea678347873b7ac1b67d5e8c78c8444011f85dfdcdce
+EBUILD bash-completion-2.4-r1.ebuild 3161 BLAKE2B 0c3b185bb625c951f47fb9571695ac67900d67868a0bab27d1a80cb15a31e997422fa8e43677f4d68c6644e10f502c25fad166e1ad1257696c9795bcdc2967c0 SHA512 2d6366a7609d3fab9a423fac06e2c78957f079c37a9c69d9694dac6f70ed50d4234b14f4fb54dda303ef916ec6f92402179b6bb2830208d83e6c5e98bacfb693
+EBUILD bash-completion-2.7-r3.ebuild 4110 BLAKE2B b19ad7fc98ad017f18cb12e07ab74093c2317b35dba98b0ba4a27a3f7771133bdffb27ded986f58d12f42783683a27ecdb8f9b313186f7e53ab50780f8955835 SHA512 d4c1a4bd1df24aef4b981c324f7f238ecd813dd79689e5fb47db1d0b8db04d549ec1202f4894c851fa6240ba5e279d9fcd75af569a11faefdff13842ae96e89d
+EBUILD bash-completion-2.8.ebuild 4077 BLAKE2B c07bc2b26c2dc2c87111129e9930e53339517d7999bf737ae10cea2ee3982a5c41ba0572736e69d6dd8f441b1fb0c0c269296a56938ea55e61a5372689bd3629 SHA512 f32c40ceef56ab9bc5e9fa2676f4f1ade460c880fc2377e93014ce4b8a4ed95e9385c0acc07dbc22878d58f5b191aff9082881f3b422478124b05bae23c64347
+EBUILD bash-completion-9999.ebuild 3966 BLAKE2B fb35f3822108eabcd36264cdc2eb0c386f99bfcd6df5a4bddeb5a0e7a110f7ca598507169adff6aadeee3ea678547ef974792d97091ac99e666cd5783a0d8ca3 SHA512 f4db656cac0725c95e1acca37b2ce0fda2bd49d1bc07249f0204c9434a1fee517761f6d00ff0863e608ad070d1f7a6a93882f2663b5ae24ad87e902460a4d159
+MISC metadata.xml 1309 BLAKE2B db08060cd74841bd7220e688e251225ddaf59e4da737c08785e7c6ce83c2d40600fbe38e9b9449fb559ccb2d03b8c2368295b647ec2a52191429fe1d3d1c7470 SHA512 3ee23fb6cbee1e80a0c8fab13f7bb67bdad3292fa8ec187e306b00804a7bf709358c8c08eda4101a5f5baa408e0892aa94c07ae466b5beae4edc18055b1192ee
diff --git a/app-shells/bash-completion/bash-completion-2.4-r1.ebuild b/app-shells/bash-completion/bash-completion-2.4-r1.ebuild
new file mode 100644
index 000000000000..5b1db28a22c1
--- /dev/null
+++ b/app-shells/bash-completion/bash-completion-2.4-r1.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+BASHCOMP_P=bashcomp-2.0.2
+inherit versionator
+
+DESCRIPTION="Programmable Completion for bash"
+HOMEPAGE="https://github.com/scop/bash-completion"
+SRC_URI="https://github.com/scop/bash-completion/releases/download/${PV}/${P}.tar.xz
+ https://bitbucket.org/mgorny/bashcomp2/downloads/${BASHCOMP_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris"
+IUSE=""
+
+RDEPEND=">=app-shells/bash-4.3_p30-r1
+ sys-apps/miscfiles
+ !app-eselect/eselect-bashcomp"
+DEPEND="app-arch/xz-utils"
+PDEPEND=">=app-shells/gentoo-bashcomp-20140911"
+
+# Remove unwanted completions.
+STRIP_COMPLETIONS=(
+ # Slackware package stuff, quite generic names cause collisions
+ # (e.g. with sys-apps/pacman)
+ explodepkg installpkg makepkg pkgtool removepkg upgradepkg
+
+ # Debian/Red Hat network stuff
+ ifdown ifup ifstatus
+
+ # Installed in app-editors/vim-core
+ xxd
+
+ # Now-dead symlinks to deprecated completions
+ hd ncal
+
+ # Installed by sys-apps/util-linux-2.28
+ mount umount mount.linux umount.linux
+)
+
+src_prepare() {
+ eapply "${WORKDIR}/${BASHCOMP_P}/${PN}"-2.1_p*.patch
+ # Bug 543100, update bug 601194
+ eapply "${FILESDIR}/${PN}-2.1-escape-characters-r1.patch"
+ eapply_user
+}
+
+src_test() { :; } # Skip testsuite because of interactive shell wrt #477066
+
+src_install() {
+ # work-around race conditions, bug #526996
+ mkdir -p "${ED}"/usr/share/bash-completion/{completions,helpers} || die
+
+ emake DESTDIR="${D}" profiledir="${EPREFIX}"/etc/bash/bashrc.d install
+
+ local file
+ for file in "${STRIP_COMPLETIONS[@]}"; do
+ rm "${ED}"/usr/share/bash-completion/completions/${file} || die
+ done
+ # remove deprecated completions (moved to other packages)
+ rm "${ED}"/usr/share/bash-completion/completions/_* || die
+
+ dodoc AUTHORS CHANGES CONTRIBUTING.md README.md
+
+ # install the eselect module
+ insinto /usr/share/eselect/modules
+ doins "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect"
+ doman "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect.5"
+}
+
+pkg_postinst() {
+ local v
+ for v in ${REPLACING_VERSIONS}; do
+ if ! version_is_at_least 2.1-r90 ${v}; then
+ ewarn "For bash-completion autoloader to work, all completions need to"
+ ewarn "be installed in /usr/share/bash-completion/completions. You may"
+ ewarn "need to rebuild packages that installed completions in the old"
+ ewarn "location. You can do this using:"
+ ewarn
+ ewarn "$ find ${EPREFIX}/usr/share/bash-completion -maxdepth 1 -type f '!' -name 'bash_completion' -exec emerge -1v {} +"
+ ewarn
+ ewarn "After the rebuild, you should remove the old setup symlinks:"
+ ewarn
+ ewarn "$ find ${EPREFIX}/etc/bash_completion.d -type l -delete"
+ fi
+ done
+
+ if has_version 'app-shells/zsh'; then
+ elog
+ elog "If you are interested in using the provided bash completion functions with"
+ elog "zsh, valuable tips on the effective use of bashcompinit are available:"
+ elog " http://www.zsh.org/mla/workers/2003/msg00046.html"
+ elog
+ fi
+}
diff --git a/app-shells/bash-completion/bash-completion-2.7-r3.ebuild b/app-shells/bash-completion/bash-completion-2.7-r3.ebuild
new file mode 100644
index 000000000000..cf9d7ad1a645
--- /dev/null
+++ b/app-shells/bash-completion/bash-completion-2.7-r3.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+BASHCOMP_P=bashcomp-2.0.2
+inherit versionator
+
+DESCRIPTION="Programmable Completion for bash"
+HOMEPAGE="https://github.com/scop/bash-completion"
+SRC_URI="https://github.com/scop/bash-completion/releases/download/${PV}/${P}.tar.xz
+ https://bitbucket.org/mgorny/bashcomp2/downloads/${BASHCOMP_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris"
+IUSE="test"
+# Multiple test failures, need to investigate the exact problem
+RESTRICT="test"
+
+# completion collision with net-fs/mc
+RDEPEND=">=app-shells/bash-4.3_p30-r1
+ sys-apps/miscfiles
+ !app-eselect/eselect-bashcomp
+ !!net-fs/mc"
+DEPEND="app-arch/xz-utils
+ test? (
+ ${RDEPEND}
+ app-misc/dtach
+ dev-util/dejagnu
+ dev-tcltk/tcllib
+ )"
+PDEPEND=">=app-shells/gentoo-bashcomp-20140911"
+
+# Remove unwanted completions.
+STRIP_COMPLETIONS=(
+ # Slackware package stuff, quite generic names cause collisions
+ # (e.g. with sys-apps/pacman)
+ explodepkg installpkg makepkg pkgtool removepkg upgradepkg
+
+ # Debian/Red Hat network stuff
+ ifdown ifup ifstatus
+
+ # Installed in app-editors/vim-core
+ xxd
+
+ # Now-dead symlinks to deprecated completions
+ hd ncal
+
+ # Installed by sys-apps/util-linux-2.28
+ mount umount mount.linux umount.linux
+
+ # Installed by sys-apps/util-linux-2.31
+ rfkill
+)
+
+src_prepare() {
+ eapply "${WORKDIR}/${BASHCOMP_P}/${PN}"-2.1_p*.patch
+ # Bug 543100, update bug 601194
+ eapply "${FILESDIR}/${PN}-2.1-escape-characters-r1.patch"
+ eapply_user
+
+ # Remove implicit completions for vim.
+ # https://bugs.gentoo.org/649986
+ sed -i -e 's/vi vim gvim rvim view rview rgvim rgview gview//' \
+ bash_completion || die
+ rm test/completion/vi.exp || die
+}
+
+src_test() {
+ # Tests need an interactive shell, #477066
+ # idea stolen from:
+ # http://pkgs.fedoraproject.org/cgit/rpms/bash-completion.git/tree/bash-completion.spec
+
+ # real-time output of the log ;-)
+ touch "${T}/dtach-test.log" || die
+ tail -f "${T}/dtach-test.log" &
+ local tail_pid=${!}
+
+ nonfatal dtach -N "${T}/dtach.sock" \
+ bash -c 'emake check &> "${T}"/dtach-test.log; echo ${?} > "${T}"/dtach-test.out'
+
+ kill "${tail_pid}"
+ [[ -f ${T}/dtach-test.out ]] || die "Unable to run tests"
+ [[ $(<"${T}"/dtach-test.out) == 0 ]] || die "Tests failed"
+}
+
+src_install() {
+ # work-around race conditions, bug #526996
+ mkdir -p "${ED}"/usr/share/bash-completion/{completions,helpers} || die
+
+ emake DESTDIR="${D}" profiledir="${EPREFIX}"/etc/bash/bashrc.d install
+
+ local file
+ for file in "${STRIP_COMPLETIONS[@]}"; do
+ rm "${ED}"/usr/share/bash-completion/completions/${file} || die
+ done
+ # remove deprecated completions (moved to other packages)
+ rm "${ED}"/usr/share/bash-completion/completions/_* || die
+
+ dodoc AUTHORS CHANGES CONTRIBUTING.md README.md
+
+ # install the eselect module
+ insinto /usr/share/eselect/modules
+ doins "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect"
+ doman "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect.5"
+}
+
+pkg_postinst() {
+ local v
+ for v in ${REPLACING_VERSIONS}; do
+ if ! version_is_at_least 2.1-r90 ${v}; then
+ ewarn "For bash-completion autoloader to work, all completions need to"
+ ewarn "be installed in /usr/share/bash-completion/completions. You may"
+ ewarn "need to rebuild packages that installed completions in the old"
+ ewarn "location. You can do this using:"
+ ewarn
+ ewarn "$ find ${EPREFIX}/usr/share/bash-completion -maxdepth 1 -type f '!' -name 'bash_completion' -exec emerge -1v {} +"
+ ewarn
+ ewarn "After the rebuild, you should remove the old setup symlinks:"
+ ewarn
+ ewarn "$ find ${EPREFIX}/etc/bash_completion.d -type l -delete"
+ fi
+ done
+
+ if has_version 'app-shells/zsh'; then
+ elog
+ elog "If you are interested in using the provided bash completion functions with"
+ elog "zsh, valuable tips on the effective use of bashcompinit are available:"
+ elog " http://www.zsh.org/mla/workers/2003/msg00046.html"
+ elog
+ fi
+}
diff --git a/app-shells/bash-completion/bash-completion-2.8.ebuild b/app-shells/bash-completion/bash-completion-2.8.ebuild
new file mode 100644
index 000000000000..13232e470d60
--- /dev/null
+++ b/app-shells/bash-completion/bash-completion-2.8.ebuild
@@ -0,0 +1,136 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+BASHCOMP_P=bashcomp-2.0.2
+inherit versionator
+
+DESCRIPTION="Programmable Completion for bash"
+HOMEPAGE="https://github.com/scop/bash-completion"
+SRC_URI="
+ https://github.com/scop/bash-completion/releases/download/${PV}/${P}.tar.xz
+ https://bitbucket.org/mgorny/bashcomp2/downloads/${BASHCOMP_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh
+~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris"
+IUSE="test"
+# Multiple test failures, need to investigate the exact problem
+RESTRICT="test"
+
+# completion collision with net-fs/mc
+RDEPEND="
+ >=app-shells/bash-4.3_p30-r1
+ sys-apps/miscfiles
+ !app-eselect/eselect-bashcomp
+ !!net-fs/mc"
+
+DEPEND="
+ app-arch/xz-utils
+ test? (
+ ${RDEPEND}
+ app-misc/dtach
+ dev-util/dejagnu
+ dev-tcltk/tcllib
+ )"
+
+PDEPEND=">=app-shells/gentoo-bashcomp-20140911"
+
+# Remove unwanted completions.
+STRIP_COMPLETIONS=(
+ # Slackware package stuff, quite generic names cause collisions
+ # (e.g. with sys-apps/pacman)
+ explodepkg installpkg makepkg pkgtool removepkg upgradepkg
+
+ # Debian/Red Hat network stuff
+ ifdown ifup ifstatus
+
+ # Installed in app-editors/vim-core
+ xxd
+
+ # Now-dead symlinks to deprecated completions
+ hd ncal
+
+ # Installed by sys-apps/util-linux-2.28
+ mount umount mount.linux umount.linux
+)
+
+src_prepare() {
+ eapply "${WORKDIR}/${BASHCOMP_P}/${PN}"-2.1_p*.patch
+ # Bug 543100, update bug 601194
+ eapply "${FILESDIR}/${PN}-2.1-escape-characters-r1.patch"
+ eapply_user
+
+ # Remove implicit completions for vim.
+ # https://bugs.gentoo.org/649986
+ sed -i -e 's/vi vim gvim rvim view rview rgvim rgview gview//' \
+ bash_completion || die
+ rm test/completion/vi.exp || die
+}
+
+src_test() {
+ # Tests need an interactive shell, #477066
+ # idea stolen from:
+ # http://pkgs.fedoraproject.org/cgit/rpms/bash-completion.git/tree/bash-completion.spec
+
+ # real-time output of the log ;-)
+ touch "${T}/dtach-test.log" || die
+ tail -f "${T}/dtach-test.log" &
+ local tail_pid=${!}
+
+ nonfatal dtach -N "${T}/dtach.sock" \
+ bash -c 'emake check &> "${T}"/dtach-test.log; echo ${?} > "${T}"/dtach-test.out'
+
+ kill "${tail_pid}"
+ [[ -f ${T}/dtach-test.out ]] || die "Unable to run tests"
+ [[ $(<"${T}"/dtach-test.out) == 0 ]] || die "Tests failed"
+}
+
+src_install() {
+ # work-around race conditions, bug #526996
+ mkdir -p "${ED}"/usr/share/bash-completion/{completions,helpers} || die
+
+ emake DESTDIR="${D}" profiledir="${EPREFIX}"/etc/bash/bashrc.d install
+
+ local file
+ for file in "${STRIP_COMPLETIONS[@]}"; do
+ rm "${ED}"/usr/share/bash-completion/completions/${file} || die
+ done
+ # remove deprecated completions (moved to other packages)
+ rm "${ED}"/usr/share/bash-completion/completions/_* || die
+
+ dodoc AUTHORS CHANGES CONTRIBUTING.md README.md
+
+ # install the eselect module
+ insinto /usr/share/eselect/modules
+ doins "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect"
+ doman "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect.5"
+}
+
+pkg_postinst() {
+ local v
+ for v in ${REPLACING_VERSIONS}; do
+ if ! version_is_at_least 2.1-r90 ${v}; then
+ ewarn "For bash-completion autoloader to work, all completions need to"
+ ewarn "be installed in /usr/share/bash-completion/completions. You may"
+ ewarn "need to rebuild packages that installed completions in the old"
+ ewarn "location. You can do this using:"
+ ewarn
+ ewarn "$ find ${EPREFIX}/usr/share/bash-completion -maxdepth 1 -type f '!' -name 'bash_completion' -exec emerge -1v {} +"
+ ewarn
+ ewarn "After the rebuild, you should remove the old setup symlinks:"
+ ewarn
+ ewarn "$ find ${EPREFIX}/etc/bash_completion.d -type l -delete"
+ fi
+ done
+
+ if has_version 'app-shells/zsh'; then
+ elog
+ elog "If you are interested in using the provided bash completion functions with"
+ elog "zsh, valuable tips on the effective use of bashcompinit are available:"
+ elog " http://www.zsh.org/mla/workers/2003/msg00046.html"
+ elog
+ fi
+}
diff --git a/app-shells/bash-completion/bash-completion-9999.ebuild b/app-shells/bash-completion/bash-completion-9999.ebuild
new file mode 100644
index 000000000000..1ef70643b1e9
--- /dev/null
+++ b/app-shells/bash-completion/bash-completion-9999.ebuild
@@ -0,0 +1,136 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+BASHCOMP_P=bashcomp-2.0.2
+EGIT_REPO_URI="https://github.com/scop/bash-completion"
+inherit autotools git-r3 versionator
+
+DESCRIPTION="Programmable Completion for bash"
+HOMEPAGE="https://github.com/scop/bash-completion"
+SRC_URI="https://bitbucket.org/mgorny/bashcomp2/downloads/${BASHCOMP_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS=""
+IUSE="test"
+
+# completion collision with net-fs/mc
+RDEPEND=">=app-shells/bash-4.3_p30-r1
+ sys-apps/miscfiles
+ !app-eselect/eselect-bashcomp
+ !!net-fs/mc"
+DEPEND="app-arch/xz-utils
+ test? (
+ ${RDEPEND}
+ app-misc/dtach
+ dev-util/dejagnu
+ dev-tcltk/tcllib
+ )"
+PDEPEND=">=app-shells/gentoo-bashcomp-20140911"
+
+# Remove unwanted completions.
+STRIP_COMPLETIONS=(
+ # Slackware package stuff, quite generic names cause collisions
+ # (e.g. with sys-apps/pacman)
+ explodepkg installpkg makepkg pkgtool removepkg upgradepkg
+
+ # Debian/Red Hat network stuff
+ ifdown ifup ifstatus
+
+ # Installed in app-editors/vim-core
+ xxd
+
+ # Now-dead symlinks to deprecated completions
+ hd ncal
+
+ # Installed by sys-apps/util-linux-2.28 (and now deprecated)
+ _mount _umount _mount.linux _umount.linux
+
+ # Deprecated in favor of sys-apps/util-linux-2.31
+ _rfkill
+)
+
+src_unpack() {
+ git-r3_src_unpack
+ default
+}
+
+src_prepare() {
+ eapply "${WORKDIR}/${BASHCOMP_P}/${PN}"-2.1_p*.patch
+ eapply_user
+
+ eautoreconf
+}
+
+src_test() {
+ # Tests need an interactive shell, #477066
+ # idea stolen from:
+ # http://pkgs.fedoraproject.org/cgit/rpms/bash-completion.git/tree/bash-completion.spec
+
+ # real-time output of the log ;-)
+ touch "${T}/dtach-test.log" || die
+ tail -f "${T}/dtach-test.log" &
+ local tail_pid=${!}
+
+ # override the default expect timeout and buffer size to avoid tests
+ # failing randomly due to cold cache, busy system or just more output
+ # than upstream anticipated (they run tests on pristine docker
+ # installs of binary distros)
+ nonfatal dtach -N "${T}/dtach.sock" \
+ bash -c 'emake check RUNTESTFLAGS="OPT_TIMEOUT=300 OPT_BUFFER_SIZE=1000000" \
+ &> "${T}"/dtach-test.log; echo ${?} > "${T}"/dtach-test.out'
+
+ kill "${tail_pid}"
+ [[ -f ${T}/dtach-test.out ]] || die "Unable to run tests"
+ [[ $(<"${T}"/dtach-test.out) == 0 ]] || die "Tests failed"
+}
+
+src_install() {
+ # work-around race conditions, bug #526996
+ mkdir -p "${ED}"/usr/share/bash-completion/{completions,helpers} || die
+
+ emake DESTDIR="${D}" profiledir="${EPREFIX}"/etc/bash/bashrc.d install
+
+ local file
+ for file in "${STRIP_COMPLETIONS[@]}"; do
+ rm "${ED}"/usr/share/bash-completion/completions/${file} ||
+ die "stripping ${file} failed"
+ done
+ # remove deprecated completions (moved to other packages)
+ rm "${ED}"/usr/share/bash-completion/completions/_* || die
+
+ dodoc AUTHORS CHANGES CONTRIBUTING.md README.md
+
+ # install the eselect module
+ insinto /usr/share/eselect/modules
+ doins "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect"
+ doman "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect.5"
+}
+
+pkg_postinst() {
+ local v
+ for v in ${REPLACING_VERSIONS}; do
+ if ! version_is_at_least 2.1-r90 ${v}; then
+ ewarn "For bash-completion autoloader to work, all completions need to"
+ ewarn "be installed in /usr/share/bash-completion/completions. You may"
+ ewarn "need to rebuild packages that installed completions in the old"
+ ewarn "location. You can do this using:"
+ ewarn
+ ewarn "$ find ${EPREFIX}/usr/share/bash-completion -maxdepth 1 -type f '!' -name 'bash_completion' -exec emerge -1v {} +"
+ ewarn
+ ewarn "After the rebuild, you should remove the old setup symlinks:"
+ ewarn
+ ewarn "$ find ${EPREFIX}/etc/bash_completion.d -type l -delete"
+ fi
+ done
+
+ if has_version 'app-shells/zsh'; then
+ elog
+ elog "If you are interested in using the provided bash completion functions with"
+ elog "zsh, valuable tips on the effective use of bashcompinit are available:"
+ elog " http://www.zsh.org/mla/workers/2003/msg00046.html"
+ elog
+ fi
+}
diff --git a/app-shells/bash-completion/files/bash-completion-2.1-escape-characters-r1.patch b/app-shells/bash-completion/files/bash-completion-2.1-escape-characters-r1.patch
new file mode 100644
index 000000000000..27a85504befd
--- /dev/null
+++ b/app-shells/bash-completion/files/bash-completion-2.1-escape-characters-r1.patch
@@ -0,0 +1,27 @@
+--- bash-completion-2.1/bash_completion.orig 2014-03-09 17:38:14 +0000
++++ bash-completion-2.1/bash_completion 2014-03-13 23:26:44 +0000
+@@ -536,13 +536,23 @@
+ # @param $2 Name of variable to return result to
+ _quote_readline_by_ref()
+ {
+- if [[ $1 == \'* ]]; then
++ if [ -z "$1" ]; then
++ # avoid quoting if empty
++ printf -v $2 %s "$1"
++ elif [[ $1 == \'* ]]; then
+ # Leave out first character
+ printf -v $2 %s "${1:1}"
++ elif [[ $1 == \~* ]]; then
++ # avoid escaping first ~
++ printf -v $2 \~%q "${1:1}"
+ else
+ printf -v $2 %q "$1"
+ fi
+
++ # Replace double escaping ( \\ ) by single ( \ )
++ # This happens always when argument is already escaped at cmdline,
++ # and passed to this function as e.g.: file\ with\ spaces
++ [[ ${!2} == *\\* ]] && printf -v $2 %s "${1//\\\\/\\}"
+ # If result becomes quoted like this: $'string', re-evaluate in order to
+ # drop the additional quoting. See also: http://www.mail-archive.com/
+ # bash-completion-devel@lists.alioth.debian.org/msg01942.html
diff --git a/app-shells/bash-completion/metadata.xml b/app-shells/bash-completion/metadata.xml
new file mode 100644
index 000000000000..2bb3ef236242
--- /dev/null
+++ b/app-shells/bash-completion/metadata.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>shell-tools@gentoo.org</email>
+ <name>Gentoo Shell Tools Project</name>
+ </maintainer>
+ <longdescription>
+ Since v2.04, bash has allowed you to intelligently program and extend its
+ standard completion behavior to achieve complex command lines with just a
+ few keystrokes. Imagine typing ssh [Tab] and being able to complete on hosts
+ from your ~/.ssh/known_hosts files. Or typing man 3 str [Tab] and getting a
+ list of all string handling functions in the UNIX manual. mount system:
+ [Tab] would complete on all exported file-systems from the host called
+ system, while make [Tab] would complete on all targets in Makefile. This
+ project was conceived to produce programmable completion routines for the
+ most common Linux/UNIX commands, reducing the amount of typing sysadmins and
+ programmers need to do on a daily basis.
+ </longdescription>
+ <stabilize-allarches/>
+ <upstream>
+ <remote-id type="bitbucket">mgorny/bashcomp2</remote-id>
+ <remote-id type="github">scop/bash-completion</remote-id>
+ </upstream>
+</pkgmetadata>