summaryrefslogtreecommitdiff
path: root/app-shells
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /app-shells
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.xz
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'app-shells')
-rw-r--r--app-shells/autojump/Manifest3
-rw-r--r--app-shells/autojump/autojump-21.3.0-r1.ebuild61
-rw-r--r--app-shells/autojump/autojump-21.5.8-r1.ebuild59
-rw-r--r--app-shells/autojump/autojump-21.6.9.ebuild59
-rw-r--r--app-shells/autojump/files/autojump-21.3.0-supported-shells.patch34
-rw-r--r--app-shells/autojump/metadata.xml12
-rw-r--r--app-shells/bash-completion/Manifest5
-rw-r--r--app-shells/bash-completion/bash-completion-1.3-r2.ebuild90
-rw-r--r--app-shells/bash-completion/bash-completion-2.1-r2.ebuild118
-rw-r--r--app-shells/bash-completion/bash-completion-2.1-r91.ebuild93
-rw-r--r--app-shells/bash-completion/bash-completion-2.1-r92.ebuild93
-rw-r--r--app-shells/bash-completion/bash-completion-2.1-r93.ebuild94
-rw-r--r--app-shells/bash-completion/bash-completion-2.1.ebuild100
-rw-r--r--app-shells/bash-completion/bash-completion-2.1_p20141224.ebuild93
-rw-r--r--app-shells/bash-completion/files/bash-completion.pc9
-rw-r--r--app-shells/bash-completion/files/bash-completion.sh-gentoo-1.252
-rw-r--r--app-shells/bash-completion/metadata.xml21
-rw-r--r--app-shells/bash/Manifest277
-rw-r--r--app-shells/bash/bash-2.05b_p13.ebuild147
-rw-r--r--app-shells/bash/bash-3.0_p22.ebuild151
-rw-r--r--app-shells/bash/bash-3.1_p23.ebuild143
-rw-r--r--app-shells/bash/bash-3.2_p57.ebuild145
-rw-r--r--app-shells/bash/bash-4.0_p44.ebuild140
-rw-r--r--app-shells/bash/bash-4.1_p17.ebuild137
-rw-r--r--app-shells/bash/bash-4.2_p53.ebuild226
-rw-r--r--app-shells/bash/bash-4.3_p33-r1.ebuild249
-rw-r--r--app-shells/bash/bash-4.3_p33-r2.ebuild250
-rw-r--r--app-shells/bash/bash-4.3_p33.ebuild247
-rw-r--r--app-shells/bash/bash-4.3_p39.ebuild248
-rw-r--r--app-shells/bash/bash-4.4_alpha-r1.ebuild247
-rw-r--r--app-shells/bash/files/autoconf-mktime-2.53.patch199
-rw-r--r--app-shells/bash/files/autoconf-mktime-2.59.patch197
-rw-r--r--app-shells/bash/files/bash-2.05b-destdir.patch28
-rw-r--r--app-shells/bash/files/bash-2.05b-empty-herestring.patch25
-rw-r--r--app-shells/bash/files/bash-2.05b-fix-job-warning.patch14
-rw-r--r--app-shells/bash/files/bash-2.05b-jobs.patch28
-rw-r--r--app-shells/bash/files/bash-2.05b-parallel-build.patch15
-rw-r--r--app-shells/bash/files/bash-2.05b-protos.patch25
-rw-r--r--app-shells/bash/files/bash-2.05b-rbash.patch27
-rw-r--r--app-shells/bash/files/bash-3.0-afs.patch20
-rw-r--r--app-shells/bash/files/bash-3.0-crash.patch46
-rw-r--r--app-shells/bash/files/bash-3.0-darwin-conn.patch20
-rw-r--r--app-shells/bash/files/bash-3.0-histtimeformat.patch56
-rw-r--r--app-shells/bash/files/bash-3.0-jobs.patch56
-rw-r--r--app-shells/bash/files/bash-3.0-locale.patch112
-rw-r--r--app-shells/bash/files/bash-3.0-manpage.patch15
-rw-r--r--app-shells/bash/files/bash-3.0-multibyteifs.patch281
-rw-r--r--app-shells/bash/files/bash-3.0-pgrp-pipe-fix.patch20
-rw-r--r--app-shells/bash/files/bash-3.0-protos.patch68
-rw-r--r--app-shells/bash/files/bash-3.0-pwd.patch16
-rw-r--r--app-shells/bash/files/bash-3.0-rbash.patch18
-rw-r--r--app-shells/bash/files/bash-3.0-read-builtin-pipe.patch20
-rw-r--r--app-shells/bash/files/bash-3.0-read-e-segfault.patch26
-rw-r--r--app-shells/bash/files/bash-3.0-read-memleak.patch15
-rw-r--r--app-shells/bash/files/bash-3.0-strnlen.patch175
-rw-r--r--app-shells/bash/files/bash-3.0-subshell.patch39
-rw-r--r--app-shells/bash/files/bash-3.0-trap-fg-signals.patch23
-rw-r--r--app-shells/bash/files/bash-3.0-ulimit.patch186
-rw-r--r--app-shells/bash/files/bash-3.0-volatile-command.patch16
-rw-r--r--app-shells/bash/files/bash-3.1-dev-fd-test-as-user.patch14
-rw-r--r--app-shells/bash/files/bash-3.1-fix-dash-login-shell.patch52
-rw-r--r--app-shells/bash/files/bash-3.1-protos.patch67
-rw-r--r--app-shells/bash/files/bash-3.1-ulimit.patch122
-rw-r--r--app-shells/bash/files/bash-3.2-dev-fd-test-as-user.patch26
-rw-r--r--app-shells/bash/files/bash-3.2-ldflags-for-build.patch37
-rw-r--r--app-shells/bash/files/bash-3.2-loadables.patch239
-rw-r--r--app-shells/bash/files/bash-3.2-process-subst.patch12
-rw-r--r--app-shells/bash/files/bash-3.2-protos.patch57
-rw-r--r--app-shells/bash/files/bash-3.2-session-leader.patch65
-rw-r--r--app-shells/bash/files/bash-3.2-ulimit.patch13
-rw-r--r--app-shells/bash/files/bash-4.0-configure.patch25
-rw-r--r--app-shells/bash/files/bash-4.0-ldflags-for-build.patch15
-rw-r--r--app-shells/bash/files/bash-4.0-negative-return.patch33
-rw-r--r--app-shells/bash/files/bash-4.0-parallel-build.patch65
-rw-r--r--app-shells/bash/files/bash-4.1-fbsd-eaccess.patch29
-rw-r--r--app-shells/bash/files/bash-4.1-parallel-build.patch23
-rw-r--r--app-shells/bash/files/bash-4.2-execute-job-control.patch24
-rw-r--r--app-shells/bash/files/bash-4.2-no-readline.patch19
-rw-r--r--app-shells/bash/files/bash-4.2-parallel-build.patch106
-rw-r--r--app-shells/bash/files/bash-4.2-read-retry.patch41
-rw-r--r--app-shells/bash/files/bash-4.2-speed-up-read-N.patch112
-rw-r--r--app-shells/bash/files/bash-4.3-append-process-segfault.patch18
-rw-r--r--app-shells/bash/files/bash-4.3-arrayfunc.patch15
-rw-r--r--app-shells/bash/files/bash-4.3-compat-lvl.patch13
-rw-r--r--app-shells/bash/files/bash-4.3-declare-visibility.patch60
-rw-r--r--app-shells/bash/files/bash-4.3-mapfile-improper-array-name-validation.patch13
-rw-r--r--app-shells/bash/files/bash-4.3-parse-time-keyword.patch30
-rw-r--r--app-shells/bash/files/bash-4.4-optimize-fork.patch16
-rw-r--r--app-shells/bash/files/bash-4.x-deferred-heredocs.patch47
-rw-r--r--app-shells/bash/files/bash_logout9
-rw-r--r--app-shells/bash/files/bashrc88
-rw-r--r--app-shells/bash/files/bashrc-r192
-rw-r--r--app-shells/bash/files/bashrc-r2108
-rw-r--r--app-shells/bash/files/dot-bash_logout6
-rw-r--r--app-shells/bash/files/dot-bash_profile5
-rw-r--r--app-shells/bash/files/dot-bashrc18
-rw-r--r--app-shells/bash/metadata.xml16
-rw-r--r--app-shells/bashdb/Manifest4
-rw-r--r--app-shells/bashdb/bashdb-4.1.0.4.ebuild22
-rw-r--r--app-shells/bashdb/bashdb-4.2.0.6.ebuild22
-rw-r--r--app-shells/bashdb/bashdb-4.2.0.8.ebuild24
-rw-r--r--app-shells/bashdb/bashdb-4.3.0.91.ebuild24
-rw-r--r--app-shells/bashdb/metadata.xml8
-rw-r--r--app-shells/bashish/Manifest1
-rw-r--r--app-shells/bashish/bashish-2.2.4.ebuild21
-rw-r--r--app-shells/bashish/metadata.xml11
-rw-r--r--app-shells/ccsh/Manifest1
-rw-r--r--app-shells/ccsh/ccsh-0.0.4-r3.ebuild27
-rw-r--r--app-shells/ccsh/metadata.xml8
-rw-r--r--app-shells/dash/Manifest5
-rw-r--r--app-shells/dash/dash-0.5.7.4.ebuild58
-rw-r--r--app-shells/dash/dash-0.5.8.1-r2.ebuild62
-rw-r--r--app-shells/dash/dash-0.5.8.2.ebuild62
-rw-r--r--app-shells/dash/files/dash-0.5.5.1-octal.patch29
-rw-r--r--app-shells/dash/files/dash-0.5.8.1-dumb-echo.patch105
-rw-r--r--app-shells/dash/files/dash-0.5.8.1-eval-warnx.patch12
-rw-r--r--app-shells/dash/metadata.xml8
-rw-r--r--app-shells/dsh/Manifest1
-rw-r--r--app-shells/dsh/dsh-0.25.10.ebuild28
-rw-r--r--app-shells/dsh/metadata.xml5
-rw-r--r--app-shells/esh/Manifest1
-rw-r--r--app-shells/esh/esh-0.8.5-r2.ebuild52
-rw-r--r--app-shells/esh/metadata.xml7
-rw-r--r--app-shells/fish/Manifest3
-rw-r--r--app-shells/fish/files/fish-2.1.0-tinfo.patch11
-rw-r--r--app-shells/fish/fish-2.1.1.ebuild75
-rw-r--r--app-shells/fish/fish-2.1.2.ebuild75
-rw-r--r--app-shells/fish/fish-2.2.0.ebuild69
-rw-r--r--app-shells/fish/metadata.xml8
-rw-r--r--app-shells/gentoo-bashcomp/Manifest3
-rw-r--r--app-shells/gentoo-bashcomp/files/gentoo-bashcomp-20101217-make_globals.patch11
-rw-r--r--app-shells/gentoo-bashcomp/gentoo-bashcomp-20101217-r1.ebuild47
-rw-r--r--app-shells/gentoo-bashcomp/gentoo-bashcomp-20121024.ebuild45
-rw-r--r--app-shells/gentoo-bashcomp/gentoo-bashcomp-20140911.ebuild23
-rw-r--r--app-shells/gentoo-bashcomp/metadata.xml5
-rw-r--r--app-shells/gentoo-zsh-completions/Manifest2
-rw-r--r--app-shells/gentoo-zsh-completions/gentoo-zsh-completions-20141115.ebuild30
-rw-r--r--app-shells/gentoo-zsh-completions/gentoo-zsh-completions-20150103.ebuild28
-rw-r--r--app-shells/gentoo-zsh-completions/gentoo-zsh-completions-99999999.ebuild28
-rw-r--r--app-shells/gentoo-zsh-completions/metadata.xml11
-rw-r--r--app-shells/heirloom-sh/Manifest1
-rw-r--r--app-shells/heirloom-sh/heirloom-sh-050706.ebuild36
-rw-r--r--app-shells/heirloom-sh/metadata.xml11
-rw-r--r--app-shells/ksh/Manifest8
-rw-r--r--app-shells/ksh/files/ksh-prefix.patch42
-rw-r--r--app-shells/ksh/ksh-93.20110208.ebuild52
-rw-r--r--app-shells/ksh/ksh-93.20120229.ebuild56
-rw-r--r--app-shells/ksh/ksh-93.20140606.ebuild51
-rw-r--r--app-shells/ksh/ksh-93.20140625.ebuild50
-rw-r--r--app-shells/ksh/metadata.xml27
-rw-r--r--app-shells/localshell/Manifest4
-rw-r--r--app-shells/localshell/files/localshell-1.2+gcc-4.3.patch45
-rw-r--r--app-shells/localshell/files/localshell-1.3.1-glibc-2.10.patch12
-rw-r--r--app-shells/localshell/localshell-1.1.ebuild28
-rw-r--r--app-shells/localshell/localshell-1.2.ebuild32
-rw-r--r--app-shells/localshell/localshell-1.3.1.ebuild36
-rw-r--r--app-shells/localshell/localshell-1.3.4.ebuild31
-rw-r--r--app-shells/localshell/metadata.xml7
-rw-r--r--app-shells/metadata.xml32
-rw-r--r--app-shells/mksh/Manifest4
-rw-r--r--app-shells/mksh/metadata.xml5
-rw-r--r--app-shells/mksh/mksh-50d-r1.ebuild49
-rw-r--r--app-shells/mksh/mksh-50d.ebuild42
-rw-r--r--app-shells/mksh/mksh-50e.ebuild49
-rw-r--r--app-shells/mksh/mksh-50f.ebuild49
-rw-r--r--app-shells/mksh/mksh-51.ebuild49
-rw-r--r--app-shells/mksh/mksh-9999.ebuild57
-rw-r--r--app-shells/mpibash/Manifest1
-rw-r--r--app-shells/mpibash/metadata.xml12
-rw-r--r--app-shells/mpibash/mpibash-1.2.ebuild43
-rw-r--r--app-shells/mpibash/mpibash-9999.ebuild43
-rw-r--r--app-shells/pdmenu/Manifest2
-rw-r--r--app-shells/pdmenu/files/pdmenu-impl-dec.patch16
-rw-r--r--app-shells/pdmenu/metadata.xml7
-rw-r--r--app-shells/pdmenu/pdmenu-1.3.2-r1.ebuild58
-rw-r--r--app-shells/pdmenu/pdmenu-1.3.4.ebuild58
-rw-r--r--app-shells/pdsh/Manifest2
-rw-r--r--app-shells/pdsh/files/pdsh-2.18-unbundle-libtool.patch56
-rw-r--r--app-shells/pdsh/metadata.xml24
-rw-r--r--app-shells/pdsh/pdsh-2.18-r1.ebuild62
-rw-r--r--app-shells/pdsh/pdsh-2.26.ebuild52
-rw-r--r--app-shells/posh/Manifest3
-rw-r--r--app-shells/posh/files/posh-glibc-2.16.patch19
-rw-r--r--app-shells/posh/metadata.xml7
-rw-r--r--app-shells/posh/posh-0.10.2.ebuild28
-rw-r--r--app-shells/posh/posh-0.11.ebuild28
-rw-r--r--app-shells/posh/posh-0.12.ebuild28
-rw-r--r--app-shells/psh/Manifest1
-rw-r--r--app-shells/psh/metadata.xml7
-rw-r--r--app-shells/psh/psh-1.8.1-r1.ebuild30
-rw-r--r--app-shells/push/Manifest2
-rw-r--r--app-shells/push/metadata.xml22
-rw-r--r--app-shells/push/push-1.5-r1.ebuild21
-rw-r--r--app-shells/push/push-1.5.ebuild21
-rw-r--r--app-shells/push/push-1.6.ebuild21
-rw-r--r--app-shells/rc/Manifest1
-rw-r--r--app-shells/rc/metadata.xml5
-rw-r--r--app-shells/rc/rc-1.7.2.ebuild42
-rw-r--r--app-shells/rrs/Manifest1
-rw-r--r--app-shells/rrs/files/rrs-1.70-asneeded.patch38
-rw-r--r--app-shells/rrs/metadata.xml12
-rw-r--r--app-shells/rrs/rrs-1.70-r1.ebuild37
-rw-r--r--app-shells/rrs/rrs-1.70.ebuild38
-rw-r--r--app-shells/rssh/Manifest2
-rw-r--r--app-shells/rssh/files/rssh-2.3.4_p3-autotools.patch33
-rw-r--r--app-shells/rssh/metadata.xml15
-rw-r--r--app-shells/rssh/rssh-2.3.4.ebuild38
-rw-r--r--app-shells/rssh/rssh-2.3.4_p3.ebuild47
-rw-r--r--app-shells/rust-zshcomp/Manifest1
-rw-r--r--app-shells/rust-zshcomp/metadata.xml8
-rw-r--r--app-shells/rust-zshcomp/rust-zshcomp-1_beta20150411.ebuild29
-rw-r--r--app-shells/sash/Manifest1
-rw-r--r--app-shells/sash/files/sash-3.7-builtin.patch14
-rw-r--r--app-shells/sash/metadata.xml7
-rw-r--r--app-shells/sash/sash-3.8.ebuild46
-rw-r--r--app-shells/scsh-install-lib/Manifest1
-rw-r--r--app-shells/scsh-install-lib/metadata.xml8
-rw-r--r--app-shells/scsh-install-lib/scsh-install-lib-1.3.0.ebuild24
-rw-r--r--app-shells/scsh/Manifest1
-rw-r--r--app-shells/scsh/files/0.6.6-Makefile.in-doc-dir-gentoo.patch93
-rw-r--r--app-shells/scsh/files/0.6.7-Makefile.in-LDFLAGS.patch11
-rw-r--r--app-shells/scsh/files/0.6.7-Makefile.in-doc-dir-gentoo.patch93
-rw-r--r--app-shells/scsh/files/0.6.7-Missing-includes.patch22
-rw-r--r--app-shells/scsh/metadata.xml26
-rw-r--r--app-shells/scsh/scsh-0.6.7-r1.ebuild44
-rw-r--r--app-shells/scsh/scsh-0.6.7.ebuild42
-rw-r--r--app-shells/shish/Manifest1
-rw-r--r--app-shells/shish/metadata.xml10
-rw-r--r--app-shells/shish/shish-0.7_pre3-r1.ebuild60
-rw-r--r--app-shells/smrsh/Manifest5
-rw-r--r--app-shells/smrsh/files/site.config.m413
-rw-r--r--app-shells/smrsh/files/smrsh-8.14.5-site.config.m414
-rw-r--r--app-shells/smrsh/metadata.xml5
-rw-r--r--app-shells/smrsh/smrsh-8.14.5.ebuild54
-rw-r--r--app-shells/smrsh/smrsh-8.14.6.ebuild54
-rw-r--r--app-shells/smrsh/smrsh-8.14.7.ebuild54
-rw-r--r--app-shells/smrsh/smrsh-8.14.8.ebuild54
-rw-r--r--app-shells/smrsh/smrsh-8.14.9.ebuild54
-rw-r--r--app-shells/soapbox/Manifest1
-rw-r--r--app-shells/soapbox/metadata.xml7
-rw-r--r--app-shells/soapbox/soapbox-0.3.1-r1.ebuild41
-rw-r--r--app-shells/squirrelsh/Manifest3
-rw-r--r--app-shells/squirrelsh/files/squirrelsh-fix-in_LDFLAGS.patch12
-rw-r--r--app-shells/squirrelsh/files/squirrelsh-no-docs.patch25
-rw-r--r--app-shells/squirrelsh/files/squirrelsh-no-strip.patch19
-rw-r--r--app-shells/squirrelsh/files/squirrelsh-remove-forced-abi.patch21
-rw-r--r--app-shells/squirrelsh/files/squirrelsh-rename-LDFLAGS.patch140
-rw-r--r--app-shells/squirrelsh/metadata.xml11
-rw-r--r--app-shells/squirrelsh/squirrelsh-1.2.3-r1.ebuild60
-rw-r--r--app-shells/squirrelsh/squirrelsh-1.2.6.ebuild48
-rw-r--r--app-shells/squirrelsh/squirrelsh-1.2.7.ebuild48
-rw-r--r--app-shells/tcsh/Manifest5
-rw-r--r--app-shells/tcsh/files/tcsh-6.14-makefile.patch16
-rw-r--r--app-shells/tcsh/files/tcsh-6.14-use-ncurses.patch11
-rw-r--r--app-shells/tcsh/files/tcsh-6.14.00-debian-dircolors.patch19
-rw-r--r--app-shells/tcsh/files/tcsh-6.15.00-normalize-command-fix.patch14
-rw-r--r--app-shells/tcsh/files/tcsh-6.18.01-aix.patch14
-rw-r--r--app-shells/tcsh/files/tcsh-6.18.01-gcc5.patch31
-rw-r--r--app-shells/tcsh/metadata.xml18
-rw-r--r--app-shells/tcsh/tcsh-6.17-r1.ebuild94
-rw-r--r--app-shells/tcsh/tcsh-6.17.06.ebuild90
-rw-r--r--app-shells/tcsh/tcsh-6.18.01-r2.ebuild100
-rw-r--r--app-shells/tcsh/tcsh-6.18.01-r3.ebuild101
-rw-r--r--app-shells/tcsh/tcsh-6.18.01.ebuild90
-rw-r--r--app-shells/zsh-completions/Manifest1
-rw-r--r--app-shells/zsh-completions/metadata.xml16
-rw-r--r--app-shells/zsh-completions/zsh-completions-0.12.0-r2.ebuild41
-rw-r--r--app-shells/zsh-completions/zsh-completions-9999.ebuild34
-rw-r--r--app-shells/zsh/Manifest6
-rw-r--r--app-shells/zsh/files/prompt_gentoo_setup-133
-rw-r--r--app-shells/zsh/files/zprofile-143
-rw-r--r--app-shells/zsh/files/zsh-5.0.7-fix-cvs-completion.patch19
-rw-r--r--app-shells/zsh/files/zsh-5.0.7-pid-ns.patch39
-rw-r--r--app-shells/zsh/files/zsh-init.d-gentoo-r1.diff30
-rw-r--r--app-shells/zsh/metadata.xml14
-rw-r--r--app-shells/zsh/zsh-5.0.5.ebuild170
-rw-r--r--app-shells/zsh/zsh-5.0.7-r1.ebuild173
-rw-r--r--app-shells/zsh/zsh-5.0.7-r2.ebuild174
-rw-r--r--app-shells/zsh/zsh-5.0.8.ebuild210
-rw-r--r--app-shells/zsh/zsh-9999.ebuild210
280 files changed, 13170 insertions, 0 deletions
diff --git a/app-shells/autojump/Manifest b/app-shells/autojump/Manifest
new file mode 100644
index 00000000000..e6168c9d937
--- /dev/null
+++ b/app-shells/autojump/Manifest
@@ -0,0 +1,3 @@
+DIST autojump-21.3.0.tar.gz 51261 SHA256 217398c3135647f223356e055a1b84adb470385584d743baf7fe4d519fd78252 SHA512 b0b0292a08d01005f09581c58bff2bf9b4b860b53602c0777bab7ef5a5b301993fe2bfef154bedadc75407bcc41e8de4a6f01d5b70e2e1be6b4ae6a6162d5196 WHIRLPOOL a218cde9345077af5c365b3e8eaff994606a0c29f2c8f3c6772b043e68decdc915bd353efc20c61f6de974d59c617c8a9b292fc465823b818882ac68f438869c
+DIST autojump-21.5.8.tar.gz 52170 SHA256 4e18585aac319da1c900f0f022a4fe8ce3e21257d440c034d7abf29ed42d4e1e SHA512 a3857e0195cc77f19bd4eb46b4fc96cd5f7b1c01dac35c1f928dde19198519fa4848c0cf7f8342f87a1f71617cfcad62cc495a711541f32bec807347e9b6bd01 WHIRLPOOL b7686d0d1332d4cbeec6d88a35951bae0cc513843b9fd34ff407e88cf0fdb8f616acb9e48d40a91b63cf4beea085f8fd6a4215d5e0b38599e47af8212f2eb2e2
+DIST autojump-21.6.9.tar.gz 50172 SHA256 8918817688a4e5f1e87e4e559a1bb5cd3fe43cb11222bb5283fd0f44d395464b SHA512 90f2d5fa3e8e272073a8dd00e6023f74d6e9159f5c4d5345fb3e2fbb4829262e0de18d64975dbd7b85bbbfb83f5706f4463f7370806516385cae48595113afff WHIRLPOOL 89e4bb6380396c50a7509050e192ab3dcaeef4861191760a75464cbed0deeecb071544d255d88d8139323abbf38c84f6418821437debf273d1f99d76e63c67bd
diff --git a/app-shells/autojump/autojump-21.3.0-r1.ebuild b/app-shells/autojump/autojump-21.3.0-r1.ebuild
new file mode 100644
index 00000000000..d7f8d981dd1
--- /dev/null
+++ b/app-shells/autojump/autojump-21.3.0-r1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3} )
+
+inherit eutils python-r1 python-utils-r1 vcs-snapshot
+
+DESCRIPTION="change directory command that learns"
+HOMEPAGE="http://github.com/joelthelion/autojump"
+SRC_URI="https://github.com/joelthelion/${PN}/archive/release-v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="bash-completion python test zsh-completion"
+
+RDEPEND="bash-completion? ( >=app-shells/bash-4 )
+ python? ( ${PYTHON_DEPS} )
+ zsh-completion? ( app-shells/zsh app-shells/gentoo-zsh-completions )"
+DEPEND="test? ( ${PYTHON_DEPS} )"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-supported-shells.patch
+}
+
+src_compile() {
+ true
+}
+
+src_install() {
+ dobin bin/autojump
+
+ insinto /etc/profile.d
+ doins bin/${PN}.sh
+
+ if use bash-completion ; then
+ doins bin/${PN}.bash
+ fi
+
+ if use zsh-completion ; then
+ doins bin/${PN}.zsh
+ insinto /usr/share/zsh/site-functions
+ doins bin/_j
+ fi
+
+ if use python ; then
+ python_foreach_impl python_domodule tools/autojump_ipython.py
+
+ einfo "This tool provides \"j\" for ipython, please add"
+ einfo "\"import autojump_ipython\" to your ipy_user_conf.py."
+ fi
+
+ doman docs/${PN}.1
+ dodoc README.md
+
+ elog "loading of insecure relative path \"custom_install\" has been"
+ elog "remove. See ${EPREFIX}/etc/profile.d/${PN}.sh for details."
+}
diff --git a/app-shells/autojump/autojump-21.5.8-r1.ebuild b/app-shells/autojump/autojump-21.5.8-r1.ebuild
new file mode 100644
index 00000000000..d6a53538ac5
--- /dev/null
+++ b/app-shells/autojump/autojump-21.5.8-r1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3} )
+
+inherit python-r1 python-utils-r1 vcs-snapshot
+
+DESCRIPTION="change directory command that learns"
+HOMEPAGE="http://github.com/joelthelion/autojump"
+SRC_URI="https://github.com/joelthelion/${PN}/archive/release-v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="bash-completion python test zsh-completion"
+
+RDEPEND="bash-completion? ( >=app-shells/bash-4 )
+ python? ( ${PYTHON_DEPS} )
+ zsh-completion? ( app-shells/zsh app-shells/gentoo-zsh-completions )"
+DEPEND="test? ( ${PYTHON_DEPS} )"
+
+src_prepare() {
+ sed -e "s: \(/etc/profile.d\): \"${EPREFIX}\1\":" \
+ -i bin/autojump.sh || die
+}
+
+src_compile() {
+ true
+}
+
+src_install() {
+ dobin bin/autojump
+
+ insinto /etc/profile.d
+ doins bin/${PN}.sh
+
+ if use bash-completion ; then
+ doins bin/${PN}.bash
+ fi
+
+ if use zsh-completion ; then
+ doins bin/${PN}.zsh
+ insinto /usr/share/zsh/site-functions
+ doins bin/_j
+ fi
+
+ if use python ; then
+ python_foreach_impl python_domodule tools/autojump_ipython.py
+
+ einfo "This tool provides \"j\" for ipython, please add"
+ einfo "\"import autojump_ipython\" to your ipy_user_conf.py."
+ fi
+
+ doman docs/${PN}.1
+ dodoc README.md
+}
diff --git a/app-shells/autojump/autojump-21.6.9.ebuild b/app-shells/autojump/autojump-21.6.9.ebuild
new file mode 100644
index 00000000000..18a6c71d0af
--- /dev/null
+++ b/app-shells/autojump/autojump-21.6.9.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+
+inherit python-r1 python-utils-r1 vcs-snapshot
+
+DESCRIPTION="change directory command that learns"
+HOMEPAGE="http://github.com/joelthelion/autojump"
+SRC_URI="https://github.com/joelthelion/${PN}/archive/release-v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="bash-completion python test zsh-completion"
+
+RDEPEND="bash-completion? ( >=app-shells/bash-4 )
+ python? ( ${PYTHON_DEPS} )
+ zsh-completion? ( app-shells/zsh app-shells/gentoo-zsh-completions )"
+DEPEND="test? ( ${PYTHON_DEPS} )"
+
+src_prepare() {
+ sed -e "s: \(/etc/profile.d\): \"${EPREFIX}\1\":" \
+ -i bin/autojump.sh || die
+}
+
+src_compile() {
+ true
+}
+
+src_install() {
+ dobin bin/autojump
+
+ insinto /etc/profile.d
+ doins bin/${PN}.sh
+
+ if use bash-completion ; then
+ doins bin/${PN}.bash
+ fi
+
+ if use zsh-completion ; then
+ doins bin/${PN}.zsh
+ insinto /usr/share/zsh/site-functions
+ doins bin/_j
+ fi
+
+ if use python ; then
+ python_foreach_impl python_domodule tools/autojump_ipython.py
+
+ einfo "This tool provides \"j\" for ipython, please add"
+ einfo "\"import autojump_ipython\" to your ipy_user_conf.py."
+ fi
+
+ doman docs/${PN}.1
+ dodoc README.md
+}
diff --git a/app-shells/autojump/files/autojump-21.3.0-supported-shells.patch b/app-shells/autojump/files/autojump-21.3.0-supported-shells.patch
new file mode 100644
index 00000000000..a16fc2d4dcf
--- /dev/null
+++ b/app-shells/autojump/files/autojump-21.3.0-supported-shells.patch
@@ -0,0 +1,34 @@
+--- autojump-21.3.0/bin/autojump.sh
++++ autojump-21.3.0/bin/autojump.sh
+@@ -1,17 +1,17 @@
+ # source autojump on BASH or ZSH depending on the shell
+
+ shell=`echo ${SHELL} | awk -F/ '{ print $NF }'`
+-
+-# check local install
+-if [ -s ~/.autojump/etc/profile.d/autojump.${shell} ]; then
+- source ~/.autojump/etc/profile.d/autojump.${shell}
+-
+-# check global install
+-elif [ -s /etc/profile.d/autojump.${shell} ]; then
+- source /etc/profile.d/autojump.${shell}
+-
+-# check custom install locations (modified by Homebrew or using --destdir option)
+-elif [ -s custom_install/autojump.${shell} ]; then
+- source custom_install/autojump.${shell}
+-
+-fi
++case ${shell} in
++ bash|zsh)
++ # check local install
++ if [ -s ~/.autojump/etc/profile.d/autojump.${shell} ]; then
++ source ~/.autojump/etc/profile.d/autojump.${shell}
++ # check global install
++ elif [ -s "${EPREFIX}"/etc/profile.d/autojump.${shell} ]; then
++ source "${EPREFIX}"/etc/profile.d/autojump.${shell}
++ fi
++ ;;
++ *)
++ echo "Your shell ${shell} (from SHELL=${SHELL}) is unkown."
++ ;;
++esac
diff --git a/app-shells/autojump/metadata.xml b/app-shells/autojump/metadata.xml
new file mode 100644
index 00000000000..93654722ae8
--- /dev/null
+++ b/app-shells/autojump/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>xmw@gentoo.org</email>
+ <name>Michael Weber</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/joelthelion/autojump/issues</bugs-to>
+ <remote-id type="github">joelthelion/autojump</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/bash-completion/Manifest b/app-shells/bash-completion/Manifest
new file mode 100644
index 00000000000..122e9b0264e
--- /dev/null
+++ b/app-shells/bash-completion/Manifest
@@ -0,0 +1,5 @@
+DIST bash-completion-1.3.tar.bz2 211899 SHA256 8ebe30579f0f3e1a521013bcdd183193605dab353d7a244ff2582fb3a36f7bec SHA512 f0c6eb3edce982d1306fdb7ba2cb598c08cff4bde8496fca369b3c4d2d3af0ef48dd494ab96258cc90f30b875a56759aad13a6b1bfb4928bfba4634cce6bf8be WHIRLPOOL 9ea16b019eadcdcf60046b58d2c0f3ab68c189f461842d3d9f585ff25d8ba1bd48bf847868c2cc7e5475320d9c7aeaf21ce74818345c7fe648500549d51f29f8
+DIST bash-completion-2.1.tar.bz2 265329 SHA256 2b606804a7d5f823380a882e0f7b6c8a37b0e768e72c3d4107c51fbe8a46ae4f SHA512 0bc71039ef136b1ccb72527eb40f2ed4068a58dc31b1ac1ee52a40e7c950ea4cfbb4f1bee2f0da6774e56062578fa3653096e6d306eea7f028dd55ff737e92fe WHIRLPOOL 0275d8ac99a0ac5b12637bf2b13561d656b239ba7c166071cb283a481df2fdd904ad1c18608ea35b9af4f0f4db3b034f833f0fd586a0096626d1b268bcd8fc00
+DIST bash-completion-2.1_p20141224.tar.xz 257964 SHA256 a76ffdbc9f49f48e290f0e6f3d46060d51c770f91e25b35b014bc16fec76f517 SHA512 94649aad8dbf0f170422605a5f36c5cab61e45ce402a92f89a6eba3bd5d2e976087b35cd0a9b6d4d29ba608cee3bb27b692088c884b766447ee9eafa99c2814a WHIRLPOOL 0ea12dfc8f432ffed598aee65c7080de570ebe9783415c7ebe4bd5d152fc645a132fae3a28986c029d13a4b939e15053204d73ae9b207f4ad62b9c117bf59cba
+DIST bashcomp-2.0.1.tar.bz2 4078 SHA256 142348b61b32fb3f1580ac90b684b1014d6d177f371baadb503340c507f9a992 SHA512 8ac8982f418a2d71dffcf027ffe0b7eefa3ee49413a726a8ee9e758975d8f86c687a64b55cd94e09b7936d1c6990285ddc90a3c2b1989af44322937c5c4fb8d7 WHIRLPOOL b6daa0a93282e9df73635cbdddde97c473fd22aa3baf035c3ffcb5966152e20b26d85979fe8a5ecf9128157422f3f60dc27c82c843b9a0e6e80b7de7da596250
+DIST bashcomp2-pre1.tar.gz 3732 SHA256 fd201638bae06f134c243887cafe402ef0a21f9e62cca3966f405c249abc9eec SHA512 745801fe20c846cb0cdb044d712caacd75a2902c9dddc2261bdb179dcd826e5d1032d6b1f73340abe74dbb82d29b4386897291ccdf45d9bbd1fdb80a5f79fa45 WHIRLPOOL eb529c7263653b3e3e36c0cf29d44c57ce64bb2144f06ff7f2df569dd2ae66eb135b2ace5542c37cb100da8b3562b32ab61bcd9f5fd3cfbf67febf5e5086e04a
diff --git a/app-shells/bash-completion/bash-completion-1.3-r2.ebuild b/app-shells/bash-completion/bash-completion-1.3-r2.ebuild
new file mode 100644
index 00000000000..54f7bf39b26
--- /dev/null
+++ b/app-shells/bash-completion/bash-completion-1.3-r2.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+inherit prefix
+
+DESCRIPTION="Programmable Completion for bash"
+HOMEPAGE="http://bash-completion.alioth.debian.org/"
+SRC_URI="http://bash-completion.alioth.debian.org/files/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris"
+IUSE=""
+
+DEPEND=""
+RDEPEND="|| ( app-eselect/eselect-bashcomp <app-admin/eselect-1.3.7 )
+ || ( >=app-shells/bash-3.2 app-shells/zsh )
+ sys-apps/miscfiles"
+PDEPEND="app-shells/gentoo-bashcomp"
+
+src_prepare() {
+ cp "${FILESDIR}"/bash-completion.sh-gentoo-1.2 "${T}"/bash-completion.sh || die
+ eprefixify "${T}"/bash-completion.sh
+
+ find completions -name 'Makefile*' -exec rm -f {} +
+
+ # Part of >=sys-apps/util-linux-2.23 wrt #468544
+ rm -f completions/rtcwake
+}
+
+src_configure() { :; } # no-op
+src_compile() { :; } # no-op
+
+src_install() {
+ # Gentoo specific bash-completion.sh file.
+ insinto /etc/profile.d
+ doins "${T}"/bash-completion.sh || die
+
+ # All files from contrib/ in source package get installed
+ insinto /usr/share/bash-completion
+ doins -r "${S}"/completions/* || die
+
+ awk -v D="$ED" '
+ BEGIN { out=".pre" }
+ /^# A lot of the following one-liners/ { out="base" }
+ /^# start of section containing completion functions called by other functions/ { out=".pre" }
+ /^# start of section containing completion functions for external programs/ { out="base" }
+ /^# source completion directory/ { out="" }
+ /^unset -f have/ { out=".post" }
+ out != "" { print > D"/usr/share/bash-completion/"out }' \
+ bash_completion || die "failed to split bash_completion"
+
+ dodoc AUTHORS CHANGES README TODO || die "dodocs failes"
+
+ # This is backported from upstream 2.0 release. You can stop installing
+ # this file after 2.0 is in Portage and use the one from the tarball
+ # instead.
+ # Installed to datadir instead of libdir because bash-completion(s)
+ # are not ELF files.
+ insinto /usr/share/pkgconfig
+ doins "${FILESDIR}"/bash-completion.pc || die
+}
+
+pkg_postinst() {
+ elog "Any user can enable the module completions without editing their"
+ elog ".bashrc by running:"
+ elog
+ elog " eselect bashcomp enable <module>"
+ elog
+ elog "The system administrator can also be enable this globally with"
+ elog
+ elog " eselect bashcomp enable --global <module>"
+ elog
+ elog "Make sure you at least enable the base module! Additional completion"
+ elog "modules can be found by running"
+ elog
+ elog " eselect bashcomp list"
+ elog
+ elog "If you use non-login shells you still need to source"
+ elog "/etc/profile.d/bash-completion.sh in your ~/.bashrc."
+
+ if has_version 'app-shells/zsh' ; then
+ 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.1-r2.ebuild b/app-shells/bash-completion/bash-completion-2.1-r2.ebuild
new file mode 100644
index 00000000000..4927557710f
--- /dev/null
+++ b/app-shells/bash-completion/bash-completion-2.1-r2.ebuild
@@ -0,0 +1,118 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit bash-completion-r1 prefix toolchain-funcs
+
+DESCRIPTION="Programmable Completion for bash"
+HOMEPAGE="http://bash-completion.alioth.debian.org/"
+SRC_URI="http://bash-completion.alioth.debian.org/files/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris"
+IUSE=""
+
+RDEPEND="|| ( app-eselect/eselect-bashcomp <app-admin/eselect-1.3.7 )
+ || ( >=app-shells/bash-3.2 app-shells/zsh )
+ sys-apps/miscfiles"
+PDEPEND="app-shells/gentoo-bashcomp"
+
+src_prepare() {
+ cp "${FILESDIR}"/bash-completion.sh-gentoo-1.2 "${T}"/bash-completion.sh || die
+ eprefixify "${T}"/bash-completion.sh
+
+ cp "${FILESDIR}"/bash-completion.pc "${T}"/ || die
+ # reuse paths from the eclass -- those can come from pkg-config
+ # or defaults.
+ sed -i \
+ -e "/completionsdir/s@=.*\$@=$(get_bashcompdir)@" \
+ -e "/helpersdir/s@=.*\$@=$(get_bashhelpersdir)@" \
+ -e "/Version/s@1.3@${PV}@" \
+ "${T}"/bash-completion.pc || die
+
+ find -name 'Makefile*' -exec rm -f {} +
+
+ # Part of >=sys-apps/util-linux-2.23 wrt #468544
+ local file
+ for file in cal dmesg eject hexdump hwclock ionice look renice rtcwake; do
+ rm -f completions/${file}
+ done
+
+ # app-editors/vim-core:
+ rm -f completions/xxd
+
+ # net-misc/networkmanager:
+ rm -f completions/nmcli
+
+ # Forward-compatibility with new install location, for eselect-bashcomp.
+ echo "ES_BASHCOMP_DIRS=\"${EPREFIX}/usr/share/bash-completion/completions\"" \
+ > "${T}"/50bash_completion || die
+}
+
+src_configure() { :; } # no-op
+src_compile() { :; } # no-op
+
+src_install() {
+ # Gentoo specific bash-completion.sh file.
+ insinto /etc/profile.d
+ doins "${T}"/bash-completion.sh
+
+ # All files from contrib/ in source package get installed
+ dobashcomp "${S}"/completions/*
+
+ awk -v D="$ED" '
+ BEGIN { out=".pre" }
+ /^# A lot of the following one-liners/ { out="base" }
+ /^# start of section containing completion functions called by other functions/ { out=".pre" }
+ /^# start of section containing completion functions for external programs/ { out="base" }
+ /^# source completion directory/ { out="" }
+ /^unset -f have/ { out=".post" }
+ out != "" { print > D"/usr/share/bash-completion/"out }' \
+ bash_completion || die "failed to split bash_completion"
+
+ # Note: private eclass stuff, don't use it anywhere else!
+ insinto "$(_bash-completion-r1_get_bashhelpersdir)"
+ doins "${S}"/helpers/*
+
+ dodoc AUTHORS CHANGES README
+
+ # This is backported from upstream 2.0 release. You can stop installing
+ # this file after 2.0 is in Portage and use the one from the tarball
+ # instead.
+ # Installed to datadir instead of libdir because bash-completion(s)
+ # are not ELF files.
+ insinto /usr/share/pkgconfig
+ doins "${T}"/bash-completion.pc
+
+ doenvd "${T}"/50bash_completion
+}
+
+pkg_postinst() {
+ if ! has_version "${CATEGORY}/${PN}"; then
+ elog "Any user can enable the module completions without editing their"
+ elog ".bashrc by running:"
+ elog
+ elog " eselect bashcomp enable <module>"
+ elog
+ elog "The system administrator can also be enable this globally with"
+ elog
+ elog " eselect bashcomp enable --global <module>"
+ elog
+ elog "Make sure you at least enable the base module! Additional completion"
+ elog "modules can be found by running"
+ elog
+ elog " eselect bashcomp list"
+ elog
+ elog "If you use non-login shells you still need to source"
+ elog "/etc/profile.d/bash-completion.sh in your ~/.bashrc."
+ fi
+
+ if has_version 'app-shells/zsh' ; then
+ 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.1-r91.ebuild b/app-shells/bash-completion/bash-completion-2.1-r91.ebuild
new file mode 100644
index 00000000000..a6f38ddd349
--- /dev/null
+++ b/app-shells/bash-completion/bash-completion-2.1-r91.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit versionator
+
+DESCRIPTION="Programmable Completion for bash"
+HOMEPAGE="http://bash-completion.alioth.debian.org/"
+SRC_URI="http://bash-completion.alioth.debian.org/files/${P}.tar.bz2
+ http://dev.gentoo.org/~mgorny/dist/bashcomp2-pre1.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris"
+IUSE=""
+
+RDEPEND="|| ( >=app-shells/bash-4.1 app-shells/zsh )
+ sys-apps/miscfiles
+ !app-eselect/eselect-bashcomp"
+
+# Remove unwanted completions.
+STRIP_COMPLETIONS=(
+ # Included in util-linux, bug #468544
+ cal dmesg eject hd hexdump hwclock ionice look ncal renice rtcwake
+
+ # 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
+)
+
+src_prepare() {
+ epatch "${WORKDIR}"/bashcomp2-pre1/*.patch
+}
+
+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
+
+ default
+
+ # use the copies from >=sys-apps/util-linux-2.23 wrt #468544 -> hd and ncal
+ # becomes dead symlinks as a result
+ local file
+ for file in "${STRIP_COMPLETIONS[@]}"; do
+ rm "${ED}"/usr/share/bash-completion/completions/${file} || die
+ done
+
+ # use the copy from app-editors/vim-core:
+ rm "${ED}"/usr/share/bash-completion/completions/xxd || die
+
+ # use the copy from net-misc/networkmanager:
+ rm "${ED}"/usr/share/bash-completion/completions/nmcli || die
+
+ dodoc AUTHORS CHANGES README
+
+ # install the eselect module
+ insinto /usr/share/eselect/modules
+ doins "${WORKDIR}"/bashcomp2-pre1/bashcomp.eselect
+ doman "${WORKDIR}"/bashcomp2-pre1/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.1-r92.ebuild b/app-shells/bash-completion/bash-completion-2.1-r92.ebuild
new file mode 100644
index 00000000000..edaa25cd8fc
--- /dev/null
+++ b/app-shells/bash-completion/bash-completion-2.1-r92.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit versionator
+
+DESCRIPTION="Programmable Completion for bash"
+HOMEPAGE="http://bash-completion.alioth.debian.org/"
+SRC_URI="http://bash-completion.alioth.debian.org/files/${P}.tar.bz2
+ http://dev.gentoo.org/~mgorny/dist/bashcomp2-pre1.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~ia64-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"
+
+# Remove unwanted completions.
+STRIP_COMPLETIONS=(
+ # Included in util-linux, bug #468544
+ cal dmesg eject hd hexdump hwclock ionice look ncal renice rtcwake
+
+ # 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
+)
+
+src_prepare() {
+ epatch "${WORKDIR}"/bashcomp2-pre1/*.patch
+}
+
+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=/etc/bash/bashrc.d install
+
+ # use the copies from >=sys-apps/util-linux-2.23 wrt #468544 -> hd and ncal
+ # becomes dead symlinks as a result
+ local file
+ for file in "${STRIP_COMPLETIONS[@]}"; do
+ rm "${ED}"/usr/share/bash-completion/completions/${file} || die
+ done
+
+ # use the copy from app-editors/vim-core:
+ rm "${ED}"/usr/share/bash-completion/completions/xxd || die
+
+ # use the copy from net-misc/networkmanager:
+ rm "${ED}"/usr/share/bash-completion/completions/nmcli || die
+
+ dodoc AUTHORS CHANGES README
+
+ # install the eselect module
+ insinto /usr/share/eselect/modules
+ doins "${WORKDIR}"/bashcomp2-pre1/bashcomp.eselect
+ doman "${WORKDIR}"/bashcomp2-pre1/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.1-r93.ebuild b/app-shells/bash-completion/bash-completion-2.1-r93.ebuild
new file mode 100644
index 00000000000..15de0566f62
--- /dev/null
+++ b/app-shells/bash-completion/bash-completion-2.1-r93.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit versionator
+
+DESCRIPTION="Programmable Completion for bash"
+HOMEPAGE="http://bash-completion.alioth.debian.org/"
+SRC_URI="http://bash-completion.alioth.debian.org/files/${P}.tar.bz2
+ http://dev.gentoo.org/~mgorny/dist/bashcomp2-pre1.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~ia64-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"
+PDEPEND=">=app-shells/gentoo-bashcomp-20140911"
+
+# Remove unwanted completions.
+STRIP_COMPLETIONS=(
+ # Included in util-linux, bug #468544
+ cal dmesg eject hd hexdump hwclock ionice look ncal renice rtcwake
+
+ # 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
+)
+
+src_prepare() {
+ epatch "${WORKDIR}"/bashcomp2-pre1/*.patch
+}
+
+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=/etc/bash/bashrc.d install
+
+ # use the copies from >=sys-apps/util-linux-2.23 wrt #468544 -> hd and ncal
+ # becomes dead symlinks as a result
+ local file
+ for file in "${STRIP_COMPLETIONS[@]}"; do
+ rm "${ED}"/usr/share/bash-completion/completions/${file} || die
+ done
+
+ # use the copy from app-editors/vim-core:
+ rm "${ED}"/usr/share/bash-completion/completions/xxd || die
+
+ # use the copy from net-misc/networkmanager:
+ rm "${ED}"/usr/share/bash-completion/completions/nmcli || die
+
+ dodoc AUTHORS CHANGES README
+
+ # install the eselect module
+ insinto /usr/share/eselect/modules
+ doins "${WORKDIR}"/bashcomp2-pre1/bashcomp.eselect
+ doman "${WORKDIR}"/bashcomp2-pre1/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.1.ebuild b/app-shells/bash-completion/bash-completion-2.1.ebuild
new file mode 100644
index 00000000000..43bf12c0326
--- /dev/null
+++ b/app-shells/bash-completion/bash-completion-2.1.ebuild
@@ -0,0 +1,100 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit prefix
+
+DESCRIPTION="Programmable Completion for bash"
+HOMEPAGE="http://bash-completion.alioth.debian.org/"
+SRC_URI="http://bash-completion.alioth.debian.org/files/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris"
+IUSE=""
+
+RDEPEND="|| ( app-eselect/eselect-bashcomp <app-admin/eselect-1.3.7 )
+ || ( >=app-shells/bash-3.2 app-shells/zsh )
+ sys-apps/miscfiles"
+PDEPEND="app-shells/gentoo-bashcomp"
+
+src_prepare() {
+ cp "${FILESDIR}"/bash-completion.sh-gentoo-1.2 "${T}"/bash-completion.sh || die
+ eprefixify "${T}"/bash-completion.sh
+
+ find completions -name 'Makefile*' -exec rm -f {} +
+
+ # Part of >=sys-apps/util-linux-2.23 wrt #468544
+ local file
+ for file in cal dmesg eject hexdump hwclock ionice look renice rtcwake; do
+ rm -f completions/${file}
+ done
+
+ # app-editors/vim-core:
+ rm -f completions/xxd
+
+ # net-misc/networkmanager:
+ rm -f completions/nmcli
+}
+
+src_configure() { :; } # no-op
+src_compile() { :; } # no-op
+
+src_install() {
+ # Gentoo specific bash-completion.sh file.
+ insinto /etc/profile.d
+ doins "${T}"/bash-completion.sh
+
+ # All files from contrib/ in source package get installed
+ insinto /usr/share/bash-completion
+ doins -r "${S}"/completions/*
+
+ awk -v D="$ED" '
+ BEGIN { out=".pre" }
+ /^# A lot of the following one-liners/ { out="base" }
+ /^# start of section containing completion functions called by other functions/ { out=".pre" }
+ /^# start of section containing completion functions for external programs/ { out="base" }
+ /^# source completion directory/ { out="" }
+ /^unset -f have/ { out=".post" }
+ out != "" { print > D"/usr/share/bash-completion/"out }' \
+ bash_completion || die "failed to split bash_completion"
+
+ dodoc AUTHORS CHANGES README
+
+ # This is backported from upstream 2.0 release. You can stop installing
+ # this file after 2.0 is in Portage and use the one from the tarball
+ # instead.
+ # Installed to datadir instead of libdir because bash-completion(s)
+ # are not ELF files.
+ insinto /usr/share/pkgconfig
+ doins "${FILESDIR}"/bash-completion.pc
+}
+
+pkg_postinst() {
+ if ! has_version "${CATEGORY}/${PN}"; then
+ elog "Any user can enable the module completions without editing their"
+ elog ".bashrc by running:"
+ elog
+ elog " eselect bashcomp enable <module>"
+ elog
+ elog "The system administrator can also be enable this globally with"
+ elog
+ elog " eselect bashcomp enable --global <module>"
+ elog
+ elog "Make sure you at least enable the base module! Additional completion"
+ elog "modules can be found by running"
+ elog
+ elog " eselect bashcomp list"
+ elog
+ elog "If you use non-login shells you still need to source"
+ elog "/etc/profile.d/bash-completion.sh in your ~/.bashrc."
+ fi
+
+ if has_version 'app-shells/zsh' ; then
+ 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.1_p20141224.ebuild b/app-shells/bash-completion/bash-completion-2.1_p20141224.ebuild
new file mode 100644
index 00000000000..5a97d7e7ce5
--- /dev/null
+++ b/app-shells/bash-completion/bash-completion-2.1_p20141224.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+BASHCOMP_P=bashcomp-2.0.1
+inherit versionator
+
+DESCRIPTION="Programmable Completion for bash"
+HOMEPAGE="http://bash-completion.alioth.debian.org/"
+SRC_URI="http://dev.gentoo.org/~mgorny/dist/${P}.tar.xz
+ http://dev.gentoo.org/~mgorny/dist/${BASHCOMP_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~ia64-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
+)
+
+src_prepare() {
+ epatch "${WORKDIR}/${BASHCOMP_P}/${P}"-*.patch
+}
+
+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 README
+
+ # 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.pc b/app-shells/bash-completion/files/bash-completion.pc
new file mode 100644
index 00000000000..0e5921f5449
--- /dev/null
+++ b/app-shells/bash-completion/files/bash-completion.pc
@@ -0,0 +1,9 @@
+prefix=/usr
+compatdir=/etc/bash_completion.d
+completionsdir=${prefix}/share/bash-completion
+helpersdir=${prefix}/share/bash-completion/helpers
+
+Name: bash-completion
+Description: programmable completion for the bash shell
+URL: http://bash-completion.alioth.debian.org/
+Version: 1.3
diff --git a/app-shells/bash-completion/files/bash-completion.sh-gentoo-1.2 b/app-shells/bash-completion/files/bash-completion.sh-gentoo-1.2
new file mode 100644
index 00000000000..b72bcbd9337
--- /dev/null
+++ b/app-shells/bash-completion/files/bash-completion.sh-gentoo-1.2
@@ -0,0 +1,52 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Id$
+
+# Check for interactive bash and that we haven't already been sourced.
+[ -z "$BASH_VERSION" -o -z "$PS1" -o -n "$BASH_COMPLETION" ] && return
+
+# Check for recent enough version of bash.
+bash=${BASH_VERSION%.*}; bmajor=${bash%.*}; bminor=${bash#*.}
+if [ $bmajor -gt 3 ] || [ $bmajor -eq 3 -a $bminor -ge 2 ]; then
+ _load_completions() {
+ declare f x loaded_pre=false
+ for f; do
+ if [[ -f $f ]]; then
+ # Prevent loading base twice, initially and via glob
+ if $loaded_pre && [[ $f == */base ]]; then
+ continue
+ fi
+
+ # Some modules, including base, depend on the definitions
+ # in .pre. See the ebuild for how this is created.
+ if ! $loaded_pre; then
+ if [[ ${BASH_COMPLETION-unset} == unset ]]; then
+ BASH_COMPLETION="@GENTOO_PORTAGE_EPREFIX@/usr/share/bash-completion/base"
+ fi
+ source "@GENTOO_PORTAGE_EPREFIX@/usr/share/bash-completion/.pre"
+ loaded_pre=true
+ fi
+
+ source "$f"
+ fi
+ done
+
+ # Clean up
+ $loaded_pre && source "@GENTOO_PORTAGE_EPREFIX@/usr/share/bash-completion/.post"
+ unset -f _load_completions # not designed to be called more than once
+ }
+
+ # 1. Load base, if eselected. This was previously known as
+ # /etc/bash_completion
+ # 2. Load completion modules, maintained via eselect bashcomp --global
+ # 3. Load user completion modules, maintained via eselect bashcomp
+ # 4. Load user completion file last, overrides modules at user discretion
+ # This order is subject to change once upstream decides on something.
+ _load_completions \
+ "@GENTOO_PORTAGE_EPREFIX@/etc/bash_completion.d/base" \
+ ~/.bash_completion.d/base \
+ "@GENTOO_PORTAGE_EPREFIX@/etc/bash_completion.d/"* \
+ ~/.bash_completion.d/* \
+ ~/.bash_completion
+fi
+unset bash bmajor bminor
diff --git a/app-shells/bash-completion/metadata.xml b/app-shells/bash-completion/metadata.xml
new file mode 100644
index 00000000000..3b671124159
--- /dev/null
+++ b/app-shells/bash-completion/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>shell-tools</herd>
+<maintainer>
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</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>
+</pkgmetadata>
diff --git a/app-shells/bash/Manifest b/app-shells/bash/Manifest
new file mode 100644
index 00000000000..469e92b550e
--- /dev/null
+++ b/app-shells/bash/Manifest
@@ -0,0 +1,277 @@
+DIST bash-2.05b.tar.gz 1956216 SHA256 ba03d412998cc54bd0b0f2d6c32100967d3137098affdc2d32e6e7c11b163fe4 SHA512 595f84cfd38b239ff37f2c6fc22c669f8e1d4fea34400e30c4079ab657d05f735ee6b0e6af0db6c1b17dbf9cecec81805b467b4dbd45cc97044bfefac731aad6 WHIRLPOOL 999fdd8ec730364a9fe7926046d15e6f2b0ea3f9fa840d351f39ca8bdf360e67719db0946fe08c090850d684590b38c0d8adf72b1b7109c2569ce92d771817b2
+DIST bash-3.0.tar.gz 2418293 SHA256 72d3f9d80fb4622e79ee5019314668b7bd6747182fa0928c8742002b7568586f SHA512 2b56dc0531e908811e1cced23067d82505d57a3cf4651125a6e424649bc98f476366579306e03242388f0f5b17d2a09badc15b8358f70cde6f64c60b94015c9b WHIRLPOOL 7084d68e0fb4f01847cee785acc99641719755d2fff222ec969037eb38700c528dcffc236eaae855557cb67fa3fd5df857c0bbdcf1cba890823d1807b5bc974b
+DIST bash-3.1.tar.gz 2533934 SHA256 d6952b2c38f9bf417559dd3b071860e1099ddfb8a12c0228f22afaf47f79d3b9 SHA512 3b5d5f0de83d71c972e75267ab8f6b05a7e144acb39a7c6e14be7b4bcb9b67faeaf9a123fceebd957befa1222db05b9b539f524032d89eb1fb5936d9846c1c7e WHIRLPOOL 70042de87ee5520d48311d94548b73396fedb33ee612d6ddfacae1563d0fb4202d190abfc6a3c3d678e20c35e5e3da9849b766a29fd2dec71dbf44d3ff13b593
+DIST bash-3.2.tar.gz 2529838 SHA256 26c99025b59e30779300b68adb764f824974d267a4d7cc1b347d14a2393f9fb4 SHA512 cc88b1a4dab9f752cf6a22153e40b8590f6d3408217730bb28f5eb431cbb5577c4d3befe8bd44669b8fa64433f299e0dd23511fd1ed8a820020e2f7f4a461758 WHIRLPOOL f6cd6223203921fd186f5a1fe693f06076eb281bcd4459ce780f2162d040cb3fcd29028b333f6fada4d9c0aa081684c97e82ecc47dbc0f48e1a622bcc3d2328e
+DIST bash-4.0.tar.gz 6230779 SHA256 9793d394f640a95030c77d5ac989724afe196921956db741bcaf141801c50518 SHA512 dccd099d11d649b26d5b5c2ab5fb8f33915631e1d86fba519a0464f2bd3a3289655e956cf161a0dc3671b8be193b6b065bede8a407d98af3012dd4b824711255 WHIRLPOOL b8223f5dcee9dee92b9bb0c6d09a90ea2fd71bbd0894a9927be459e0a2e2b3f0413f57062f4ba7c1f806d778bca71641df4c2892fd6224861d2cd802bebe64f8
+DIST bash-4.1.tar.gz 6598300 SHA256 3f627124a83c6d34db503a923e20710d370573a29dd5d11d6f116d1aee7be1da SHA512 2f2a053d98be9a31cd089e1293e3369ad05406f6543d1d1662d8b5807fdcfebc1dda79db9bf2c596a6351ea463fb9bd9c8943c1d45da9b82f2fd3bab0b8a581a WHIRLPOOL 0259149d6f0d8f8a19e4b5a88e127c55efae0df4459063295aa6a9de69450b5f4b4b579894e4410ddfc0119eeb0356865b7cc4dbc7e4a75ad98acce0dfe2d46f
+DIST bash-4.2.tar.gz 7009201 SHA256 a27a1179ec9c0830c65c6aa5d7dab60f7ce1a2a608618570f96bfa72e95ab3d8 SHA512 fdd3c230f4f7a687d36db1b8f7baab5e553cf55756e2d49a88ffaa4260c8cb949897dec9f48655e96608ef0093ac101b60c132060f06c711c0ab81aa3f148b5c WHIRLPOOL fd5f321a8a89381904b1dd1f5acb5100186ce48cccc9b248cf68b35a1c1932177df1fc2b0215131999ee6018decf3264c45e54d407bf4b74ff8e4cc8215c630a
+DIST bash-4.3.tar.gz 7955839 SHA256 afc687a28e0e24dc21b988fa159ff9dbcf6b7caa92ade8645cc6d5605cd024d4 SHA512 a852b8e46ee55568dce9d23a30a9dbd1c770c2d2a4bc91e1c3177d723b31b32c5d69d19704a93f165891b409b9dd2cc65723372044e2bd0ee49ed59a11512651 WHIRLPOOL d82eb296b1bdee517b20e40d2231697dc41e2040d34e2da24c4fa40755c723d732929805ebef6f6923cd8ffecfb0db7063ec1dc3ab4e695a93916f2d872e236f
+DIST bash-4.4-alpha.tar.gz 8388940 SHA256 a074952a3f9dc2237d073c33f809c87b735795dd4eec4dcfb0debec3624eb776 SHA512 cc3b79af35c8bb32e95241234145a258a87a8b99664c372a60fd78f188f7a468fd39da5f3e4a682a046c0a8bb00e979b1b1634f368157b1077832af4ba693e40 WHIRLPOOL 9c02bbddcfb0e55b0f5ce62ad9da8e82cfe1b4bdc7c1adb82b8e37fc902fdf5b6eda05194023ed7e48f57647e280e3f74c88702fb1abad5fa459d6c9668c9b87
+DIST bash205b-001 1132 SHA256 bf7a055e0916b7899e7429e36e35d009db445b942b34520a601ea5a8fa634fdd SHA512 5ce4357468821b05e747201f3aa57225ad8f540c9e2c87051720490e039c30b478b9b662a68f14a0800fefe40184e4495e2645665200f9d75e9a115b2ac08071 WHIRLPOOL 90ba36843bbf2e0b7279d3bd197ddaa04e03e113be32051e5a77280cda6d43dcbf339780c57322fc0835a54c82e0095f0d3f2a13f13fec8c0b8da38e7e9b253a
+DIST bash205b-002 755 SHA256 affdd1808a6262fbfe291ebffa2133b05e4bb46067a90e3329d5741e10f0587b SHA512 46947b0229478d5c2cfeff68b8ebc00e4ef0c8b94e336ca12f72b4490ba3622c0240c01c17c1641c3b07adc2c64ec94d6d780365e8990768ec8888f3a9526883 WHIRLPOOL 7333910e98e517306077937881d4c5569ddd85552203b3ec833f0fda13822e388ce85f007d60e4ab4b1ef15abb66fa40dc4356ca01367463d179a6a23bcff8e7
+DIST bash205b-003 2356 SHA256 604972eaafe69f44413d429e0a826b0eae209ca74b14eeeccdf0d502bbabb340 SHA512 74528ca5d165b812d299f1c69b47757bd677c0b22ce4217e155cd641708b02364a93c6709fb57b546b376b36da74429a61493921c7c199563da40ddcf1c1f399 WHIRLPOOL 7ce09fb66d32f3aebda7fb2be66179daab033b4c08ea51c744148051b47e7effc2451971efeb14d6a403c48c5c46c2ac0a4585159f8115ec40b2bfa89f98317f
+DIST bash205b-004 1110 SHA256 fab91e9742ca4e990666441e91821742e6dff78e8e388ba55205cf7b1cd8e8e1 SHA512 d00fbac75340aa1928628010723da44f1f4c505194a867f380ece1b92d82d0e619a6c8431c6acb39433d10743de90fd74523a397824989ec96109d0a440e8185 WHIRLPOOL 3f10e5d7670be3018d023b31546eef52740471a63fe2f8752aa2b250939030577ba1f8ef60e91c231f6959059012dff84afd6230f2bffa96c0199ec4aaf63eed
+DIST bash205b-005 2217 SHA256 de80bbb3b7686c96c1d99354989c0dacfe4ae2cf082cdf7e9dc3c1c6910cce9a SHA512 76d2f2b4cc14263e0776b9425bc8e660e25bb6e8e7c55b05d3b96a0397ebe1ac8de262997e6b093e58c0f6ef1b662067f64065b086325988d5e867d545bd8bc1 WHIRLPOOL 0b5b7bbfc6013feb5f0c6b6f4748cad66178ee13420ea8e45008ed44fb8d9aea6b2fb5d5c9ef80c62254949bcf7c20cf3bf321c55c150461dae49d7317e8ca9e
+DIST bash205b-006 3155 SHA256 92fd6b3313d90194bb7e8868436554866517901da801b5a0c838efc620ea0396 SHA512 95bf5b3e5a30b5b14c6896bfa774f463c3271dad5d2678495b25a11700734eb5b0881e2e24a9b758800dd4ee031a464c4c0817ee6924f69937c482456fbb038a WHIRLPOOL 3f14a6e0e6f926758ca1bb4102ea9318b3c437d08f2b4e77ec321a25ac69668d39b78f02435ac6896ebcc9c0fbc81b3f8a4dfa1593da8682f55d976d41b93bdd
+DIST bash205b-007 1072 SHA256 0843c481bd13f4652e0ba722ea3786570b84440869e0944a3a2e1d0d4430500d SHA512 9849bcd97940c12c0ed4e87d11a0770a221e52daf2d6b86f39284f9a55113f3e44317f628f0ae54911373d2027109606740512eebef7043d5347d732ff453315 WHIRLPOOL 8083ee05e4f9617c6c214ad87207a120f84dcf061478c09420b0e651adeaa5ff813cc3a1fed6c20de25b222d4f07b39da151fcbbb1a68ce7ec5e445535d6ce8e
+DIST bash205b-008 2824 SHA256 871c04d09a3cee44db366346550a30ef5d1e07c04a4570ae9afc972e8b869222 SHA512 9b1e5af8d8a458c0d4b233985de3d69f774dd1b3941e567495717eacc183d0e2bb82139088e1e22be920681978d764476092aa5235e70ed4358d5fc8f19a9aea WHIRLPOOL 73d7f270980da523013e04af7a69989a7d432d03df90be42498f5dbae5360b4f96e9e7c244c0b516388cdc135d2a8ad658076199bc8160310a87eab6823a996a
+DIST bash205b-009 713 SHA256 30ce4aba2695e660722a405d709a049531ca8933dabef55cf954f171993169b6 SHA512 1daf812eb2fe902d591f63f65bfc02d00556cb8a77ebde5e6820cc3d3dd4c93332b95f048378d6619861f3801f7ba6eea9bafe5c2b4db03cea530cd0c35ccc25 WHIRLPOOL 469d299046af947525f2dfe1241517d758a4660180fb7668522a1a5157fe28a8f56907c262ba73e13a30bcad78e830797099fe4823aa910c186da71e9b3aaff7
+DIST bash205b-010 6267 SHA256 a6641e958d1876e0770b22f4ea0bf912864e36b37c068c71a6fb3084a13310a1 SHA512 6272608dd5ff55a22ceb9e6f6991a53b9ea0d809e1d1d8c10166519b62fb8fb78e24c9fd274ff8962fb2ac536150afabc88dfd0d5c14dece2c389b4fecdc5993 WHIRLPOOL a7fb77f696fbaa01fa7beb6a0d9bb31c45b85fa4acd1f22fe20a18596b9eb86a2420dacdf7ca17c7ce3151cad4b28357aafacc201b5e6bcb46bc68d55b48b782
+DIST bash205b-011 3223 SHA256 1f93855a2d0636380cc02f909ddf19ee9c68e528ee494e07a89de4114cb77b94 SHA512 3ee695648389d5cd59e1bdb4e940e93239c67b19082c43989bb6787da44f101bb593b7ba3514d859ce5c4e603c879610accc6862d3e5f69a6c02de359a6097e0 WHIRLPOOL 1a6f1a85e54e6146413c5465477e8b17e9bd4fb6fe1010c119029d848467a441338706be048db7909f5cdc90286b25ef86cadd91d7af6f27b5f16636fc9fe2bb
+DIST bash205b-012 1377 SHA256 605ce384f5f0b3466e15157a880d6eb303d9307fb02a47b75c155533bed90649 SHA512 4e02219ea03ceffa33ab84646048e7f52d6371a25e2df422fd58f349f102372934e640200eca41038bfd6d69a8d45291a0ab88696b83d565d190015e4e457771 WHIRLPOOL f00cf36f9043715042a594476c77640ad70520ae65a1ed872cebc4bb3590e108dbf0d9bf677e210a4b00a747f14f474993bd90093f27e3e39dc83e0a0528021e
+DIST bash205b-013 2779 SHA256 0a5224f5b3640fb612ab86196a44dff5ceb93115f7f98e22a3534fc60da145c2 SHA512 22e487265b446595583276a1e99a222f55173528949cb4ed8c34911447bf5716152569a0a50061e1c6b73ca0d7abfdab8fd0da5dd4a424e54192d91399a1593e WHIRLPOOL d9a682be8af5d9542259b3dcb1d6e1b023cd4794e4818b940e5d45dbc41bd2fc656c1601efbe5b4644864698f4b7b6d087b54d329adf97a920e10431ff08ebd0
+DIST bash30-001 4999 SHA256 cc10d8f92d612c3b223d5bd93747fbda157d43dd2dc46931b6c4a413dc025990 SHA512 70fca2ced05f63841a7be3b115f068e29edb384dc0ba61680fbe7e29212cc139864a5db8c419aa03b773e1dfb52d71b7f17f9fca8f4284c75250cab450450750 WHIRLPOOL b1256fb457321d8cf4c1e8889409b26c3a6d13fc95ea4e066a3334016de30d9810539a86e2013569af56fbbe4ac763b2b0be44234a755bcb0670fe35a5a9b058
+DIST bash30-002 2119 SHA256 e6ee9bafa05a3c9208243ab2cdcc811022355df81223c6268ebdf2f6490b127d SHA512 73b2f22c91eb90487d722537c42871fe60fdf3cd95d0b2c9f7bf20aef2424267fe50cefb0837b26c49b2944e0a017d8d990e01ee8523c23d74acdf2aa10502ef WHIRLPOOL 6b792ec97cea9dcb2c5d73ef65e543ed15393b0707689b7d56de9da8f74d5f3ae389272b49d4979af2fdcfb94160fff3630ffdf833a989567061fc4fedf75f26
+DIST bash30-003 4669 SHA256 cd1ebed48b14d97d1e95406b7e622c97ae8b30ef87a4aa343b3f5f38626e5acc SHA512 7ccf778e9fed7a85004825ad83b350b43859395c41a998480f1bfd589f6b936f2d3e2096e05f7811061c5efc168601b75decdc74c95363455e685465827a31a3 WHIRLPOOL 0cac926d0c5161e41c509015de5122b5ff4b1f4be184ff011ccc84e8c5de01349f08d30f6ae743fe81939808c56c1600d44d6e3af424ba9d77281fb5706b6ebe
+DIST bash30-004 3372 SHA256 7bada92d85abf50c1283986f633ea05448b59ea81ad34ee8776732b164c0deec SHA512 93cd7c7d7d84c9a15a7c0f434096aea9cfa027c76cf6b7f06a722bd47be22eee8a19c5601d7546e9e00b2ea83473be130d05ee2e4e05bc2e99cf07302b4247c0 WHIRLPOOL 455f3384cd8181baf3d5445a4fef59965b7ff4f22ba8340693555cea741c30822a7f06f71bdb184d89603079948446fda11e6fe8e51aa670eb7672339030a7ea
+DIST bash30-005 1776 SHA256 94cbd9ec49581d2eea24ced3a9e8fa7482145d2edff9de71c304d1a8a807fbc0 SHA512 4682a35f301fbb1f1dd20b2f120b5c3a7a88345da15f7a859cbed193efafb06d95d5b31a038b273b996ee0237fc13f2a10cd0bfb0e994d8d2eb01b7990edee11 WHIRLPOOL 5f4012d0792a33808240e53b1d79a3d8834b1abf8f26b2fbf3d7841fd1d7d35b6603422265f5cbd249c3da5b137044d2055a1fbccba84c66ff6f39aba9a3d7a4
+DIST bash30-006 4258 SHA256 7db67f299605d93fe6cba3e30930d98dfadb042938deb1772e774dcb3a5bd218 SHA512 49d0c847b9505677f8d7ffcac1a24b93c6946aed756b94f891110dc7751ca515c29ac79463a5d3f5b594be698a88c56ab1a2d5dec0d6141a57aee254e7e1e80c WHIRLPOOL 68603a224e4884b3a07bc8b21c5f204b69dbc7ce9db35f861d0b808d09a92a6144192bd60c22b48d5724f20b95a06db8c54c38554fe808e4d5d87480df16620f
+DIST bash30-007 1808 SHA256 b0c46db80a84588a1b51ff6e48a781c56c97677d0573ac0e793d6c811c6b3c47 SHA512 a57305b0509dfe81d87db2ad377301d50f4486f1723df763318d51c2bf947ad3d6b3bf220516e9f71151818e9b959e6e811c7e2c626519c18f355f1cb2f18731 WHIRLPOOL 484b40d8686d68b79baeeb83428759a15211130e0d1416211f1e0e458cc47f9bd2327f8b8f7d3f3adf42c8204c501fbafc704f09b4a77c3635ada33bad3328d8
+DIST bash30-008 1220 SHA256 5cf87ad11a4592f741e25ca80571fcb5b3900d1a52318f64fe8a9e885958c6a6 SHA512 aef8fc04b31abb4dccb64a305920d2e935222466a8136fc9e4fbbac5e567e9b573d3170211d576fe52e22d8afdc84db4f40d9451784010a77f821045a96c1f27 WHIRLPOOL 200461974ed636bd7e536dbb63662929da06f63025f08c63b141e49fe3df3f9a161a42659a885bdd39d0416df1fd34c4cd890b61f25d7f6602d830de0476ff10
+DIST bash30-009 2828 SHA256 0aca61348118b2538b3892916f508f2633528e49713830c848ac0515a747aca8 SHA512 d6eac26af855efa4b0d080d7c15d8a346351141725a9b405f098bb156d3ca4d5bf32affa75a75ff4bc45f4b4ec40d22c604f64e55d89503dfbee5d68ad9e83af WHIRLPOOL e523080c4de824165a750c91f571696093054adca02c6f02df098c564b27dcde84be5c44f7ef9056cc3cbe09a8b580108ef1956e7d8b2c0eccc29ec9ceeb8dfb
+DIST bash30-010 3193 SHA256 61f92dd3bd49113a2c8e8dd0ed89ffbaa0f60127bd09fc60aba385729a78b5e0 SHA512 f67e7594223d424f901c080b8c5d8f78882bb208a96a539b8a9c06c63f12f8b647e7173b814cf44800f00d6e02cd542d3e19fef4281c9c41e65d786e68f2808e WHIRLPOOL 34e81c31c2a07ac40db4a5a82c2df56072363b38bc35639d5af22b209ffaebb41ad2d8086de6e069e8f4e3c8426b6ff1abe7e13c85d94c6c8dd5e8e564b286e1
+DIST bash30-011 2635 SHA256 3bb9986e4264f4bf900c3d2a91e0bea69d06fd921f7dab6356e7fada8ce5ac2c SHA512 de8c33e665edf75b4ed7e5a866a49e718a8d1d052ecfb84a74e3c72e8466a7f809b9e77c548f06aac2041d9ad71550a931e504b1906995782a77826b82ce6d63 WHIRLPOOL f085113bbd5482419a34981b2b9d3a4fc88836b50988ef2fc8e74d5b448f0ad62a11a5caf0a5483f3c7ed3ee5b3d8c35a7c12dd1c0c9985d842503c7cd9a757a
+DIST bash30-012 1395 SHA256 818b5014fdb046736e4469817dae66f0e7273516e69fa7dd562c03ab38752649 SHA512 7f8a51b3b30dae139bb0b048f8552ccf96494cdd8367ead2718e56cd772db2f97f375c7a62157843af5af6235625df21cddc56c366ca5363c87551b2c91763df WHIRLPOOL 8cf9e79be42cf550015e516b1ecd2785e3b4395012c908161c99800b277773d45c2483f3ee36c19e8b7d786c9ef5be41e3c6b58e792306fcd4238fb6ec472358
+DIST bash30-013 1963 SHA256 43f46a3185fab5b79ecce01599629a7956887b625b2883fa561a99ccbe649926 SHA512 a3e7a1fef8fa0bbefba09fd49c10f87b604b87635c16f08e61a3d4053d6a202d3a955679caf36b7e32141cadb1ffa1da73fbedec0dfb55096958a318457c7721 WHIRLPOOL 7785ddf5a6d235265f8edf2bb303ae75b954239baca907681e2af0b39c47a6757e9a73b86c8654f212329827711bec717ca407d069ac91a6a94a60d26f963b8d
+DIST bash30-014 1165 SHA256 0f7cc21dc0490f24fc5d807d0884c40547788d6e2812f0dce21356ed0e12475f SHA512 0d1e59c8e3d2fe9ea6f4a047d18188e39ddb0448b40815148a733f73c57d48cf69082c4c9475d57532721d3560b2f5e1bef7e3903cd18fcbdc2133d0d854b7af WHIRLPOOL 9b27bc250b1e08b6f5b05a9dfafcd7c62a0f094e215936e50a1e37677dd6ed49dbac101124453680dd975521d9987ca9fce0e2c7d2eacaac5272fe19dd59a2b7
+DIST bash30-015 1480 SHA256 dadff53e74f0c7123336c4af0354b57c0d18953fc7710800fd2f96325430182c SHA512 ea138da9ca63badd647a4bd56f637f144bfac715617ae3a6d04e90983672544299ec8ffad2afcd01e7aa8ec6a5532206441a7b2e283d7fcb9e87b5cfcda6129f WHIRLPOOL ded337fad1955011e786d06461ea3517c34a50e8afbaee363fd7962219f736c4210a3a2fb77c49a88567d76d77d93451cf12adda64ea8dd84cff452943a86805
+DIST bash30-016 2453 SHA256 7b71cc18a21e5ecb4df1ef072b9d36ada268f33cc8492a70e4892ecda1f6bfb2 SHA512 ec97d4311a34527545a179ac251720714ff94ee1d7c8bb01393d847eefd40c148cc4bdb22c2e2d951b9ef7315af2a914a6e5d775611af388a4b57f6c0de230da WHIRLPOOL a0cd29cd951deffc3c0bdb13ead34e0890f717edb1148a78ae9a201623569a44d7deeccb3af52be7075cb05a81a9006c6eca9d0a592a1a3bbcf12a5b8e53d0a8
+DIST bash30-017 3226 SHA256 427c3ba3e0d6ea29b8ddbfc2fa48f0f90fbd68d38501a409ba0beb73840245d3 SHA512 c7c621f4a683b10b6e55729121786484ac075e050b82c848ffa2d79518759cb21ebd2fd7f7e529b7f2bfe95df79d6e2bd270b9fd5c91fac275a0ca3950884d56 WHIRLPOOL 084c63af3700cdb93d4705710a5303943e8dbc41bbd5c1ff77e965b24dbdbe78d21ccbb634317e1a38ff531af4f7658d0c2a334565a551626c428b8bd0f9ec93
+DIST bash30-018 1115 SHA256 51ba469c45d18a42394964b2ca4ea8c99c33090f6c0a43695d5cfe72df497656 SHA512 013edd5b11c526cc0539aba875064df046a6d93f6d417d7b2ac323a21e3013d6bef3b2dbde5773d6806445db60406c92acd697719eb4b689ed96909d209384a7 WHIRLPOOL 7ac7476afca3db162e7ca01e2ca33cef1eaaf9203396f6fc52027b7856f191f3af9756575a29f8ec712745ee94b31ce9fc2a327c5b58de3481286e4c604c181e
+DIST bash30-019 6676 SHA256 c9f92667975c751a1b7004cbd584ffb84028ba4869d622972922befdfaec7f17 SHA512 919a3d5a10e60899bde064b875ef593ffe9ad6265f4cb48cfb92791d7ba603db8e20ea31bb933c62ccefe345ef6fd0ec8ead7a0fde53f20262f5cd05e22f6929 WHIRLPOOL 96492c6e928c634d266145290005c8414ca0b7794e46b15757bd77bab92b78c13358ba88976a002ce79921fd0815d14dd0c6e1819d03328301e1decf7cd29a8d
+DIST bash30-020 4035 SHA256 877b0313dc5e572c1df7a7858f2571d75061fb87a7d85e0dc005b4e4aef7e8f5 SHA512 23696d437b8f0f56e1f6e20fbff2700f15001e6854b08269dff654046b2ca6ed0f6d040f308d486cc0e584315695c45c8f47f69196942a83f095dcb06197dfc6 WHIRLPOOL 4bfdac41279b4f0f37a5579db81cea42f6936a9705a8cc2ab343a42bfe62ada842e0145dd6be0ca8e78d9006d2bc28b898faf2d0a335b3405a111261e1aa443b
+DIST bash30-021 1778 SHA256 1942b82395451e083e152bfca13ae8d3e3774f94536dd030f399e2d38985b3c0 SHA512 7f7f93c3be8913a7de413032910e95811e9935754cbdb3bbbffdbd2996bc040bf314b7d8ee6446a46a0ee97e838a7b0c0c8d39ffb15b351a191de486999b8cad WHIRLPOOL f5a0e0af0b0afff95f175e534f07ca92c41b04ffef24f3827a0f2b48152a06b7f91aa218c2b750fe3fdb319ec20732ae4938fa866ba20609cd47d6b9321655be
+DIST bash30-022 3476 SHA256 a0a9371ce507b936af522822eb38ea86cba30dc9721baa7fe7e6ffbdb8e1c621 SHA512 a4f3d15031489e6c581fbcae2402a76aee78e77af57f5a60cf78b0e7deb33358648fe8de7da7e778ee217b694deed69e7cc7e7dcd4c474101ea08455eb593eaf WHIRLPOOL 8c5db5a45c6bdf856679f5ee041da714882bdcb35753977f1b80702cacce800ed06f81face83d4ac6c5f6bf4bccba210696a76bdad4efed12a3bc6a7805b0599
+DIST bash31-001 2708 SHA256 3b6d9151ca7a45dbcf43ebd1c6a647ef90c4b8eb54a245936fd6ffadc61fe727 SHA512 ec5aa8407afd6b4db29855ff740f880d20cd029bc27d6b996a8e4cc2982a37e5eb826216436c47f09cd45e17fb8fe55b748dcaa7a361bba8c9e59f1620b40fcb WHIRLPOOL 931e4829b48da4088f6775aa212dd8f110c2ef874a33469ddd3c1fce363a7c2407a1cf059261cbe5c625e569b6e0f11c36d416164d3d61e58831435249a50668
+DIST bash31-002 7169 SHA256 ecd248b1ca027368dae967502af5b28019eeee8fa3ee8d6a0210677789658f08 SHA512 80951d9c8abbb7ed83c85e8ed069a80305eb8c119b1f5b5a4b35e213b7ac98c4fb15e07512e028139ed60928c39f914ba675db9f068619a15a076844a46b1a2b WHIRLPOOL ab7f524e7c96efc93f58dd40bbba6d923f5c90cf87a08c8d82459e5603f89f2fb4fc8215f9b68c946fa48d652e3433e12b3f9173bae405e9773a600bac033d50
+DIST bash31-003 1324 SHA256 96cb8a42162a5876b2392b76fbfc78d073f50735e1e8a14e67e03b6e9c2b215d SHA512 37d64e5f04832d404887d1a95bf3973b66b31b7c2b6184e3edd5f92ad848bf01dc0051bfee6804069beb0b1f522b8e3a0b0407c65885f539cc8e1f1ce2a296a1 WHIRLPOOL 96a1f17b8cdacaf070d70119bb686a155e313257b38791f92883518f028670ddff8a6ff1b68a2fa835daae81887057b757248e7a8e6677786d71ebc7eb5aa6c0
+DIST bash31-004 1470 SHA256 a50ecd3f51e9a79f34855c68c61c9523fccb66da0870eade936cc1f64ba04415 SHA512 c5913e1f11fb7887a442496b5a70f8fe938d5311be848bb19fc6898c0ed95ed045b21db994b4fc4c4860c37924c6c4ceb30909a6e143a5d7742203c51637e9ca WHIRLPOOL 53ca18200f35771606a83d9d84edfc05e28fa1a5464d9fbdcd690ba88c54cf609c83c70c72f4761d475b88ee9a23b4414e3444c4ecf7d7b3443353814a0a77bc
+DIST bash31-005 1322 SHA256 3b057498f01cb2b528a154b9043261cb059846b23222409f7de95a7971dc6664 SHA512 619e5eec9d5f864dd3b94ea0bc89e2f5a80b74738444886763b1e692a424d2cc7650b7e16b7ac977f065ef4554953c1e7bf171d15837712a99b6b487876df517 WHIRLPOOL c99cba65c0d536b8b7abf62cfc92de5176e66bf370597b1d1bb752b69ab3a0f8deff59a275a7ece12d29bc9129953cd812258710dfab06ca75e8c673106a7b7f
+DIST bash31-006 1561 SHA256 d155030ed49de27812d9ae01211283f7afe5e718ea4ed9babe1f121d25acf778 SHA512 4a8c24789af60096bfb63033cd801cf090cbb81122e48fe936fd47beae594f61e1f37b9f31f8a9bb5c1608d114fa3fe0555c81ec64983aa06a4b8f6512a368b4 WHIRLPOOL 318defda4cd379c87993a61af0d7a9d3873e0a2c6478d75ab73277c5208af57a90bbe2644e71a6c8bb4d02add2d56cb4a3b06e41dcc095ce080d8525be474de4
+DIST bash31-007 3254 SHA256 fa89a6c808490e07cd7350ecb3390ce0ae6dc71d634c61c62991aafab97962c4 SHA512 b6842a7fa0ac353f5341e351136121c94be77460c6bd990e67987e3ea85a7c92e13d59cdb5d26316fcc21edecbc8f47c5f6147b3473b1e150bb03774f28b62dd WHIRLPOOL f57789e44cb09b9a9905e6a90e1a3c66acfd8ac8a5c15ea7f128be9e30637c31e7af91da7921e54c5f679c4b97df1713a23374197a87b6ee3e3ec5197903f6da
+DIST bash31-008 1422 SHA256 c30fe9da56261c7100c5b6794d4341b6b1fb6aa0ecc25b1010ac4ac25b07d1c7 SHA512 4d5c67738fea317e1e2eada7aadfd99b85b1a54d93801e0ea75254ff65156b219ef614ce278a9d41d4c24efe92cd54b7b4e44d84bd461f2eca0485b71717f734 WHIRLPOOL 52d6a009974892cacebc3a891dc7eac999f4e72cd0c9e23d3304bc3da09d75a5d932ff47e274a6962342e2aecbb07c3fac1a6737eae28e49668cb8e3f1b54523
+DIST bash31-009 2000 SHA256 cfdc6dd92d0f47988ee59e2a26e8e62a87558e03908a26ee33dd0394228ac255 SHA512 991bf65f32fde10305ce828e91871e122ad1601b1081bbabbd1154a7d5b05ccb0b3b9e3f8da39bc57edac053ab894061520a5211cacc2ee098eb11939e38c98d WHIRLPOOL 2de2a52accc3b535049e579181864d14c2686ea3d112554aec34bd59a24e67359d39a037672b5eee5e3b9d34fca6a78ebf1b63dce7e9f339c9a675e45408487e
+DIST bash31-010 5218 SHA256 7ba8186d5e7de76c5b4e7c8905ad82b3d7cf459141eedc4ebcc6a0ca3b23cfc4 SHA512 c5402af01238ebd33d8770992d9bae256b36c3bfebb9644dc1151b893eabc78834fc895b7a2fb452787e00ac2653185a8035400321cac9ad05a8b4a61dfd09e2 WHIRLPOOL 57ddaebba8a843ef1efb6e84eea3fc31a8ea4d8936ce27836fcc6daeada05ad683f2bd141a666961ab30fff45a82835f44d75c09e9762ea8661b3127f1b849af
+DIST bash31-011 1462 SHA256 09cfa96d03b4a12bb85687e61797214222e188c4002f51962dffa51ab12ed998 SHA512 f662f455fae03ce70dc5b837e9ed549289c75a6b9fd5fdc1f14edbcf0934e85f4a46c2164a15ee7f10e606ec771a1b5ea7c081a3d227421f2dd2321c8f267e8d WHIRLPOOL 48339c0c77832bfe6e35ac9b838462ab2dc84f50955d722719c0fcc9a8974564f4460e66c33d6e1b4304a0b9444c6daa2be649201942f6259584ab1922d2f18c
+DIST bash31-012 1212 SHA256 b28bf4a491658879c43d4150cf0be1c48db97a594b6657c1cdeceabc226b8231 SHA512 e8940ebf8b0282816b04fe399ba05bcdb49a4f144c02b86fe2e5cd01556907451f99944b2e275bc0204c4368f232744321daac57ea858911c21c7d72997e0476 WHIRLPOOL 63395dce19aff08c1a64d9d76d82e957a56e00afa3f58bc4695199ed20e33d6874035ad3d197fefa3f67524b8a637b05d54fab5f7489a395a60fa4f8a5b7aa79
+DIST bash31-013 1133 SHA256 8b9a49bd03994f789198269c80b544b04e9056973bd75f843c05e40873c97088 SHA512 4cb90f249cd92d730133792395e23521e8ccfd4bc841a42988aa20e0e19940114a3245bb28ab4b9ee48673c80f37a6d3f95e8211f0e93a2cc91c02b88d1b3948 WHIRLPOOL 3cdf7143fbc5ed65d93133d01f74ce0e787d19e7c41ba950b7dc1e220b2d05473347750041f890cbc596ea47ad8e8edd82ea4453fc43d519577c3c642c3d5391
+DIST bash31-014 2818 SHA256 48086c8572efebfab3535dfbd4767d95eaf98e7dcb7d1dd13698a16ab0580319 SHA512 83873746b75a9892fcddc5ade512c0fcf5f4614af42b836613ff62c10f3787516d812def4200c39b60179ba7ebb86b0ca0e3d2b7780eaa63e34387ed1e145e93 WHIRLPOOL 62a3d9b7e53b5b8293dbc23570c86aa5ba1b016daa3c9ff7daa025c8d01e97c7eb87974ef6dc0f7ecf965a4fa021d77278c1e22569916078a6af72d2d4095a6b
+DIST bash31-015 3089 SHA256 3070548adf1c6ce481000b6bb96db7511637d6aef52276fe2f83e2bcb078865c SHA512 5469e29f1b9bebfcf56d9c3db96115d6bcf49c68fbc3b1170623c291c181b8c887b9bddb145c2b6d2e161685408610610351a0f2c10d8db34faf484bcf4ca76c WHIRLPOOL 7d978d5d5bc30deaad72e04584072bedbe0ad8af1bed2e5a3e4fab5f16c7aefa8fabaa833e8877f85e63034a20b69634febdeb9175266f961c8552ccda398796
+DIST bash31-016 1295 SHA256 2438b71c7fadf2971141e6854d317804e143d86eefd6d7b4479d62afd385ebad SHA512 7f3e2edaf3523427f91739780c7336f3d63a37e9236d846763747b093c69b2df68a02eec0ea627852c6eb3d1b3d5044dfda1f9e74254d436af4a35a9e1fd0551 WHIRLPOOL 00f7cc118ec7d524e4a419db1519516b9b0ecd07a58bfcb8ca38ab325983b32c5c0426e053210eaae01e4586b6b14c6fa62825c309d10047a3989217402d59bb
+DIST bash31-017 3640 SHA256 8fb3ac54b9536ad1ba829f229f1ab906ab2af005f2bfa733f2687245e1569407 SHA512 5cabcf481a9a47245af383c8ef23b560674431e200b7d01918ccbe625ca9bd436b7a94d8064394a2c69c6383011b912575253c29eca6e2a8d597c4113e92cb96 WHIRLPOOL 10a98686f2b66b1e69bf8277c27791ddc11cc8b7d0cb531e6c5876facfbbed659ea8e6ac041c137bad06f1e066fc097f5ff79183d4afd51df5df94660d7a08b5
+DIST bash31-018 3225 SHA256 80f15b2719f3acd746edbe828f23b80116ca033b870120301256131eaa5050b3 SHA512 c2e7535178c670fd08b59db763fe84ba272e630353a6ff9da0ed22be4d449dc971f92919945444862b3b9ed9a73a636d1232f55a5cea082b85874ff47e5433de WHIRLPOOL c0e6efaf966d0f4f72cc060f1bab52acd6461d81f8049abab73a6690d0310b4a135f3404a3d0ac3c1551ca853392bd9d5862649c86509550dbe686057aaec56b
+DIST bash31-019 1115 SHA256 ee870d33d922d5050a5722470ba6a8d6560ee9b34406c6f66c25351120256410 SHA512 302e291dad01724b030c68e42edb2ca3d49c242264ce4e89652fa18d1eb4b30ede500eb2c4f4fc7237b25eda87330ee289c7f52c19ee8d4a4c782612b2175efe WHIRLPOOL 0d46625911b2bb0a472c1d0344efdfc3f281b52dc5782c1410343be9b699bae5453a7388bfdc9967d3f7ecc5e5f567ba1969e08f27a919d61d3303b7995d177b
+DIST bash31-020 6617 SHA256 459b70fec9046c63bc7be02284fdd7b39ab2c40760e1f5499c396674ae2e691b SHA512 eea4f5bc08f17784b460e124559ab87756f27bacadabf012b38db2e9ba754ebc14b027b86ec2cb51ae40443909779fc6ecdc91dad7baa9a08cb754969ab6fc3d WHIRLPOOL 9b463a4195ec695ddb87f6cbe5468c7bb6373d6370ebdb4878479cdd8bef398c2c4469cf3dc0263f78ff78dc4d71de01b817c6fc61efbf2fff009b13de512542
+DIST bash31-021 4034 SHA256 3dedc495d48d78fe7756e651fec2bc280542209d33b91b7f2e031e38a7bcdd80 SHA512 ab5243b941e14b7ce59df754b6f9ff757f8a607f819fce55906e7bb860a11874d46558dd949fa51492ef77d334533bc8175f3c2fce61731313d33a0b1d7af616 WHIRLPOOL a86d2938220448a3f9e0e97dd01a23192790b56ac5c6547343eaeefee034e059e6872b1c8da764689cb9793de13fda7268ed9204c4a4f06c8170439b06e5147a
+DIST bash31-022 1777 SHA256 d3fb461827b1289bc7c09dd331b469c95a5a81fcf16e52d410ac86d0a5be154f SHA512 879d473dd9cb72d23fe438ffd678c3860c71ff664b0c971ecdad7de58334178119822fd2616b0787b58a26dafab3db0321f76194ab1b512e939a0a8abad69537 WHIRLPOOL 7683ae2601a5aeb2cca2d0ec9732568496ff858729104681e4ada452e0de1410c8263deddf4cb375c016d2fad0093101a06387d8695b0a315e206b6ddbd7cfb6
+DIST bash31-023 3475 SHA256 7e042ed56819ac7c24f661c464503cb02fb3e3f4fb3b24603b926b1697f27e0d SHA512 5cd7f6807e77a9d4e4c298bc06399d351f22a88e77bad802550f79685c6e54505cb617ca31771953545638bb3d08814b8a69f1fda56698ae7c9844b0652d2567 WHIRLPOOL c63c82e465b2421b33d1fae3fbe871c7ae1b6f092650932eac6a27d084adf151f2d4d955659f6feda370df46592a331e02cd408cb5cf05976ec7cb9a3dad198e
+DIST bash32-001 1539 SHA256 beda60ce6186fafa36cd0a98db9ced42cff68daee4342cca73167fb0f2f43eaa SHA512 14d0b34dec1b285b46bfdcdf18b98aa9412afe14dcd330a6e07d4295bda04c18251ad118b3560e2db3c981e0e32be6e20bac082bfefa071ea6e680f3d2010ffa WHIRLPOOL 5934d7d8ac9d6bac475672eee9abbd4da7cfb9baa2a45e565c43b5bfc6b98c411f5325fa9421041543d2b60626db97246195772ab5e479c620cc08e52a7adf1e
+DIST bash32-002 1524 SHA256 a0ca49a3c47678ad074c990bdc871fcec680749b7f04f2def6527f04c589c40a SHA512 9b9483615a97bf3958f1efd055ecef6ee5f5e1b104d3d42a00a62c27e912aec4d3aff0b1a39de180fc20b12d2ddfbceeb595f2c3515eded40854f97ca0bfbc25 WHIRLPOOL 12a876c17e62afa67f8aeaf0001ae660ab0ceff7df1fe2f5c047cc66dcb66132d59ae2ca0f3091a120cd636c0bb3a78212bcb046867c822a06d79fb0c38fcd06
+DIST bash32-003 4599 SHA256 7ec9e5e7e402e43b12bfd3a9237f4f171029fc7f58e59335abf3ccb455a5a84d SHA512 b489841a41789b93ef505b19da5f756a6ed981386f9ee57a94f13ed03892abb800e00eba012fb6a884d8e6b2ca7db9032069d04bb57916b062097c3a8d89ef23 WHIRLPOOL 3039e873a5cc785146832bf31a5677a70400d06553f09cdd6b39140e750dd48fdfe15d00faa35a78ab62f3daab3638ac3d464acfab6ee7ce44e8255ed19ada8e
+DIST bash32-004 2585 SHA256 3de0938673637089c3b0f0f355de377bb2be2d3fca68053dda267ca11b5998f2 SHA512 553d1a9d3eadff28a1af8835b6ac8af17fe7a97f6a2b0332c8bcd837d49000b82b9330fc2862e691e696f7b842729eee12c8a8a3e2ebcb48bea1b1a55ecdbed9 WHIRLPOOL 7720de6210382d7cb38cf5140f1e45272201ebfc43f14fe5a533b8681190d69df3643db9798597623d41da537e4643921fe67ac6b667194c70c4dca3ba888b02
+DIST bash32-005 5910 SHA256 e7fecdecb12320cd6fe9aca83fab1828b76aeb5313b991883764cb9139d845b7 SHA512 58eb1893e562c72a23e1896a50f6b1e6e976cdfcdaf0f8ac30b493de7af1f7cda5c5b801ca363b1a22b78c8995fce9cf66c18bb4be75e32ec7f7e2bb348e6b30 WHIRLPOOL e22268dd3700d71f3c26173b0a61d75132a1d60726c6e5270bf78043eebcf0c7922792f5906edbf08acd1ab01df24eba72652e293033eb7841f12d33137370ed
+DIST bash32-006 1298 SHA256 8f14f81ced32bc057bc10abf6842f4a5ac172816631f2b87a5a3be4f01c0847d SHA512 053dbae4942250e3146b7402e41f11a004d5da578fae0e933ec71a96304c8be697031426d28e703e89bf01413bf99d76df339b7b2ce5cfc07512478b1f627b99 WHIRLPOOL 686703b4726690215250926d9614b9b85d3f556b943b86c14ae1bf7c19d9af6d1d206872dbcd707bb9adadf313eefb84b0417711c50a8236aacb7351748b1ca3
+DIST bash32-007 1375 SHA256 6863a712e5a68eccfb77162a9f947ffd80af648f0124c38f795ebba2be12eff8 SHA512 76dcf1e7fc620f23ba33cc8a25ec78b3a76483dbf22f5af490087df95bf7def23f7cff515525bcb581e56b7f90f3770bdd6dd0d45504802f7c7111292607871c WHIRLPOOL 1b49952441967cf39c18479d65b45a2c0166c4237f41013ccb6888676e66831c125bd41d48cd401111e84cb13effbc957c796166eaeb935848e2b1d714ca3b56
+DIST bash32-008 1302 SHA256 ccf303b4d199d89d5efc659235f8a645376e86d294260dda4becbb61ec06667b SHA512 74a73e9f47e586b47b5cb5d91889c7d17aa4a9fcfb31112ed6349fb5574a059cfb374a2831e6e2800e143c641a7060f6d8400a47a04e05861ee4c9147d707983 WHIRLPOOL 0f32cd8e04c52f5e2dfed3983c711edabc8800d9e21baaf88923665f1988c65fbcea7c72abbcfbf86527e7454ccc0e3e1e0b6efcca493f3e01ea891251f828ec
+DIST bash32-009 1882 SHA256 ef30c579419106b4b4a2d0064ef7e57ceee6cdf657f4ccd7b89c8e4fd70560d8 SHA512 b76760a6a09d33f5d1243a500233a30c581768b317233815e390f24e81321ece695f6db7b179b3f80c621b07f1bcff13fc9ccfaf9dff90034ec729b6d15ebfb3 WHIRLPOOL 758aa073ab7832816b0d1535b9d8b08b9a4ca530048184ea8bb2abc0fa80b4a746f38800431e75a92dcb98c3618e0de3bb4bb7ad5cee6462e9dd296ef6f132d1
+DIST bash32-010 6293 SHA256 bb7df9fefe88d62ee371353edf62402a667cffba6ea202aa1c8b220308a0c612 SHA512 1c576da5efb44be99516e3f57834092b7b8edf8d26d2d9a57d8a6b834d564f6ddad2a83a9f693e290a77293c873b25631fd711a06a3c058733c599ad1b2ceac7 WHIRLPOOL 7e6d5686bcf2d0fd6392c3fc5cf14ef4c9a8cca1c43657ae7327ab89bdc32f0f1cbcc54fe2a6eb79bd0fb09749a623d0c0703cb7cd4518fad9f0757cea76aa00
+DIST bash32-011 4776 SHA256 85bf656cfc49b1447b061341a4b1cb93ba89a41d8d1699a65aa971d1853ba472 SHA512 1aed732d4a4828486ddfd00cc399dd04d92df60fc135521a3077043162e5387c5a1ea2aa914a55a7949674e62546bdc0a6792ac6a680dbe3ec71a63f03b72923 WHIRLPOOL 4789ee7e25e55b4f8739ec1260a3e4c01735e2165c9ba259a070ef930f74d892ed1b3cb23018fabb0176063736f79ac1e7d7b19d98cb62738a57d846d526cfb4
+DIST bash32-012 2555 SHA256 45ef4ad98f2f218aa3acec15842ae1b833769c1dbe2f90c9bba00bbe4949fc43 SHA512 ac110c5f0bafc356c3c1705786bef6c77b331d2ed5bfcbf179e588fa76a8c3cd130809c5f0ebc2d15c8b92b8b4de0acc8162de2aa2e48c609c99acf9d4a6d97e WHIRLPOOL e87e65f8e0e9e88fc21c3de0555d668bb19682c3ad88f127416e27c7b24886473db1d8c2c4361caf0bb898fdd59336e57f96e01c52dc7d0509edd0fcc6af8f46
+DIST bash32-013 1852 SHA256 9fbf893c383f45d25e5bc5c9eae8d2b349521f288945b3bd21c781784b81f693 SHA512 046660b12924f8703442eef708587b7eed042f47ef77a93ca765a26d62419adc9a2e96303d233a2ab4fe847abd67f05874c86ea0b9b722beb89d4cd93856c9f2 WHIRLPOOL 0022d1eb0a39e0c5e52e55df8c20eb187336268047e68cf562deb67efc880e852d28fc6a3c407996d487d5007dc2f72564a9bf1be5b78948d3414b7ab859263b
+DIST bash32-014 8141 SHA256 62bb1a4d70f6f7938ca70a6aa7fe6f4b377ab5f450c7756b22b41de3bbd98ed6 SHA512 294ebeb27fdbc2e6d1143710d991f05bb34ae576f0823a0f197f0c34ee1f1050da1d6e8b2972c4574c3630119d53ddc7d01ce483def7aa3c096cef3a2a145ff4 WHIRLPOOL 3cc95f4a2aaf1159a71e080e67f7e98b4859e73113ea600fb80bfe294189c0b40a21e99c5ef3afd902b62fcad22c9db65c1f60e0d6656775caf142441853b626
+DIST bash32-015 2293 SHA256 de40425e83628eb7431f39340ac09b42b5fcf484a565352851961b3e917d8771 SHA512 b574774cd49c7640b3b7d1bff1fa2c8c3f9a1f5c8bfe83fa4d38b9d422e130f1c9b40b9679612944e128cdeff0c6c048346c99eaa3eebbcd4e0bf5d75a642d06 WHIRLPOOL 8a34d86ce119f75581883d8a4563048c9106fb9e396a7fe9b8693ee9742f18e3db0b609c82fbcde404e80f0760656b6a4ca09e9a66f3bdfb2dd2a45b1cd409a7
+DIST bash32-016 1620 SHA256 7abf66bbba3ebd6b6428190f3ebca59abdc0bfa3957f1a725489de7391c2d9f1 SHA512 5b8f9703af2a5779f0c887ac7131746ccbac3086dce5cdebd90710b8a72dd5cf6a4de22f8d2521a617921167dc9ab3eea4933a4d28ca08c128be67b8850138db WHIRLPOOL e5a57fe13a1fd2d7dd9523babb4fc1054814a408e53269990847e3f30fb379a88e3c4c9ea80a4434df46de0f950bbf6ac652f161dbb464ed8a3a1234813418a4
+DIST bash32-017 2611 SHA256 951aa2a07b38db8eea8e7368d3ac36af60af7f5ade455215006229ce3815dfe0 SHA512 d336f3cdb219689b89f6b399f46af68b7ee08b8360a219fb358d79a09eb06e027ec93ff210167faea1c1e898ce9e5959ee743f5892c9bc21b35ab332da26608b WHIRLPOOL 87d780c8a049be3ac6b4241b366fae63becbede400e0ab5a94f68817ffba9140e43e423d8a29e7379f91aec79977b2ca9ecbab36640b054883e5f1bd780d20be
+DIST bash32-018 2433 SHA256 c85e2bca6084a79774adbf801698c62905662836334e54355b77fbf1c529074c SHA512 f2059a93758f135e0909163d45d9610950139cef048da89ec93489e983307a291041094db6707a76d10fe2a23c7ffdf4c2c6cbbfe7e6991ce14559e4a4a10b97 WHIRLPOOL d44f0beb8c1bc573e6496b28475437dd15d6ce4798cabf0eb3301400f0a5317c58179a5e3a57abd2aa8149fc05c8486041e7a0a0c262c02032c7eb94a015e8fa
+DIST bash32-019 8618 SHA256 d83f1d740cb103be444589dcd9da61c2802815e8c256a01cfa7e484c50a9eb85 SHA512 2822e39bc19fd4074889006af1489029b6a379c9d74a6669fd1dc13695d98747b1ccb3ca40a7883155e443a50f4aeb8258589b10621831296a4834df815b8397 WHIRLPOOL 50a538cb001de304f68f6029995f1b47274cfa1b3f440617a1f80eb7db813abe4517d6d7318135f44b8fa4d6b5a30de16f36cf8c135a8800671e866d0302822a
+DIST bash32-020 5182 SHA256 3e66a1d05566d5501c2f868d3c94b8d71821a21d0daf9baaf594369697793013 SHA512 dbbfcdc30cd51f33c36ce28b1f7f35e39bfb5e7277e7ed25bb9bfffc7f958834210d36637f73d80e8e61461095c1eb712daa1b5ad833fbae0c9890ab0d0c51f7 WHIRLPOOL 64aca652cc23201c55ad75442d241d4fc873a09a5c284c4809b6464c72c89db8fbacf8e9641e5a101fb005d48e551cf7df58722d7d374d41fd04c4e0e117f122
+DIST bash32-021 1814 SHA256 a5e54704e6867c969a3e60556a5fbacedecca7404c3ddbe8180a92b6898a2a58 SHA512 a7d5b6a542b3912cfb0099f5f57b9d9050cd0a8a8ba17c48eee6c080253897171ce70ee75f290e8ea3d2f5b46c49e5b1e031f3ea0fb9e1fc7bc2d8e06139a10f WHIRLPOOL 25d9c811b5fa2d5b97c3b9671ec9b1dd94547eaedeea277e1143cc1c7e164dcbd9c541b57bc91af33bda4959094944743c93e9d0b782210d2d1abc9667411de8
+DIST bash32-022 3034 SHA256 057e03d593b858637056c0458b168e9c012db914727abba964afcaf377f2c5a4 SHA512 82f85f5c99d72cd2611c586c9d96a3051e07545676aadd0e8530dcb042a4c4ba37fc24f743139059da1ab36f0286c9e8275beb3e5a186f10aa45194d0fee6ec3 WHIRLPOOL 5c1e0eee55cf3d4f684aa1bab2bdf8cf4aec141f5d2d96949d15d642be7c09830cc1ad3567f63ab854a98d97e4c3fc6f573b0ae74dabeb53608f6f1ecaa3abc8
+DIST bash32-023 1321 SHA256 869466d80807cde59c0eab9a39ef1909be4d5e8698ea1e3daa530ad59baaa97a SHA512 b6b91217de9f34c4c0764056491fd42ec573ffddf3475405eadb79a6a5b54ef64e8b3cfe9c1502cf9649f2a49f9cc756c40b539006ff3b8f2c777690f7cd2c67 WHIRLPOOL 4a3b73c5c5178e45995ff0d3b76a87c9fa94ba4da4a5f8b3b420beff709805e6d1a0010ddd61be1f89d9c7fa241a9744dc2c28a1c26268122062c18692b3c4be
+DIST bash32-024 3228 SHA256 d13c59fa6b182f79bbf9ba35f72085aeb755f9785985eaf9f4a55d58045fe327 SHA512 6d0a3ca7664b9ca2b134e79e4fa26d850b6d3a276b632f6bf7c47cca5e92fbe0ef22c02bcede6edacd97722e28c319e9cd83cabfb0095a9ad2f5742544b26591 WHIRLPOOL 27f351f87d5fa4b93ee2f5972d66e2bd02a19fc537be7e93f0f9c78196bb2fc2022dcd37f51a0d9edd40fd0bc97968dd42790e52695500e61373d11b03c21f9f
+DIST bash32-025 1935 SHA256 abfc1e1db3af956d4e71deb6a1ea9de1164c49fca4020b2546df3aa56f08cebe SHA512 75f3f6dde820263735eaeec0ac8662eff0178bd8f53feabfbc8cc212226ae5dd399cca7f4ddee17d9ce5873e7eb6de7a5b521077367a7bf4658c059719620ea0 WHIRLPOOL c85b2f828ae37b4fad4553fd17567062436f3856f00abe3e701f4c3919d3e141c9b14bc9d530095d5a452f49ab433894b9a0d6234183b201d3afa7dca1583d1d
+DIST bash32-026 2438 SHA256 07985caacd6c150cf89c51965bd18db2c89a9f32f7a2aa946757007409c292b9 SHA512 ae320a3239f6183b19b3af6c72f64080984839137099746ba9c6104fed9f4fd77763bb207cc6f0c007585f02a42c3ef7e1f22b4cbe6e6e442beb13f9623368d0 WHIRLPOOL 822fa92339b3a135b65ac709957bede9605ae5fa818ea0702af53460eba0fa990bf4a0b5db265f2a81b365e5d6b6061af87bdb435dadfa6de33b5f3a2396f4ea
+DIST bash32-027 2690 SHA256 79647e3af94db8c2e636a293ee5b2f12516560b12aac0d4568a125d36cd21ddf SHA512 369a44e4f6555f28eef93d18d2931db6a36e67ce227b203c33a2863931969d06001f5242ab1665ed152533061de80e0bca6dc55a2c1196719788bb0d129589eb WHIRLPOOL f69820cbd4ecf6cf131a71079490bcb70f64e1e81e1cae72aa40edd644d76713d2a6b779eb08a8904317290a18f80e7457fe0816ab4ccb0cd2345a5976057829
+DIST bash32-028 1750 SHA256 37289390175097c23efac5cb00d66b8b87e41fc37398064d11ac00de0e9934b0 SHA512 2cf38013c6e9df96f0d49bd68df94c1e37b925ee56cdcb1a1df2b9173b27ad40a20ee4858ea51eebdf611e2d7f8320a6f62af2a4a4fd01a4842942381bc71eb3 WHIRLPOOL 5ecbe452bccce4e54b64714cd06e545597ad720d9fe3e17e8a96a9dab60fe21f11c3fd4c2881efe94d128e3dea868604e5204454b07eb33f5c9c8040ec5f8d65
+DIST bash32-029 1330 SHA256 1f4e543171bd66bc28b197938811028ea70e9e406be2529326d2a586844b98e7 SHA512 1babb4ec8e3b35a0f6b76798e053aff7dbf0bd4573793ea27f303ba913a2f53f4d0fe202965715ac988c655c16199d8c5ef5eac0ba2e0cec0ba355ef36768133 WHIRLPOOL 5b69ca05a0a6d06bbf433c568538ca6ee0987709d49418399af8a39e9c870c587af07267473593d970d2e79827662dfce8ca434dcedd8f3d78da2f79537085cb
+DIST bash32-030 1558 SHA256 5ed6ca19787f2285e0c080056f65a137e053387380b3d8f6133812dd8f824afb SHA512 8f14933c8f0a0e3060c4f392a00031b8e1415459c6769220bfee4ba1e71721ede50f26a98cf0856122bccdf8b77262bf39febbde9da5199ab46e17285adca6d3 WHIRLPOOL 3646f55221609ce6c4b72332ecb4b191c42a13734ec1beaf331dd3ca1f32d71cc4c2095beb277c835f43e2195c6f0697f386409feab1c79b9d71c481eb1d607a
+DIST bash32-031 1961 SHA256 81ddc8f45e3272dd0e463fab87b58058be28d9c867674f3f53432dbd25cdfa48 SHA512 93c559324acb6366035efade5c7d70963b5ad761bf28b9dc4adf6cc81f68f077b018e466fc3da9e51b7c6890c4491419e11d6a1a16d617da780ea7b609460870 WHIRLPOOL 22d19aa249146b12e4f830ae9c2ced8ef6461007e20fbb4d8ebfd4c822938dad3da88a5ce05bebc5ea109d14cf7accaf64fc912e8e8ee888ec253b328fd7895e
+DIST bash32-032 1304 SHA256 926a9115e5c885ff9f2ef8abc6c3c552652afc370ebf65a87f41ec6810bdb569 SHA512 7f1f2b5616c9aa148987a1ce9cbf466a2172542dabafc39aeb26b3a085f032e981c33686f5df9825d63346d11f22305fcf553a7719b12b6b85921f0d2f9cec6e WHIRLPOOL f09bd932c9d1b9d758e804c707c24dafdd4eea3ff79d40576829b3903b154301b14eb7ba0d9341e7df92fe3c175798d1da69c957f9e061797436e6db8b0e6d38
+DIST bash32-033 2181 SHA256 9d7abee640dafbcdc6b75544015f3ffb5ed5aed2747465ec1412e959d3966740 SHA512 0be93faf459283142936da4c99642a0845c702c4a17fbad6b2309bb884f557ff88d06d1e724b4aa4f72dbd62d3657a9e420c65f10f6c6fe0088f19d291cd1e86 WHIRLPOOL 088a5ff2ffcc588b0439ea606ac33f41175d7c63df8fee8317f209628ca022def92679635da7cbe9d89c3d62578dca34c89a0c7ff3c0bd5504dca18d1c1c02d3
+DIST bash32-034 1866 SHA256 adc52e3427b606fe9649980b01c5b2b18f0509c4dd6d59a84f85b6a2989f9f8e SHA512 c8cf9582d0abee1820cac7af8f72ca338e6cf6a37a10ae0b482ecf526867904c82d28827909ed466dd33f5adf971696b0b024a6fc7aff909d8eaabd1c0ffa2ba WHIRLPOOL 4e47a200cebd29a041aeae18d762b7ca88f87eff98f06d5c33a537fd5f0e672505716a5b27765c60bef6dc6f51e6c1ffde27d1db4147ec753322a4120e0f31fe
+DIST bash32-035 4805 SHA256 d3d906b23fce195d5d6f0db8969fa5264e80a98b5460008d6a05e4156ca73953 SHA512 3a19c3325a26281e39fc1edeac31fcadf4cb52055e220e62f582b3f7ba04350ecb876829b73c9cf00f33b826c400a95c72c9ae1c5675e224a4dc7d3305712788 WHIRLPOOL 5f59f762ea546e973217ce36446a4864f26505ae4f71962a1185ea1765e45c06aec4fdc2fa872b75ce7d4a3aa670bdbc6be5900fc0a5b86122741b8b0a3bd2ab
+DIST bash32-036 1264 SHA256 bdb24d65d1170234379fe587f5dc8b990c5e0c2d61c394bb8c81b91c1c64ce23 SHA512 e0dfaa808f23bdd945b6f07d823484f2fd2eca25804e32c16483f18e36062079deb60f276112638c0c14f9a6a1223e3fb77bc93275f76841027352220daf728f WHIRLPOOL 5e2988480da1fb39e21bbe457392047093b683e380b489050a56ca453c94715be53b5e20359f316fa7c6d34e48187b373c4e8c494a51d61c6bc6569528f2b858
+DIST bash32-037 3227 SHA256 9688a352c0fb23d2ce6e685ce39cda1c49f4aa7819bde2508ff8c90003f484df SHA512 237c419545a46ab1542fb5897c7cc8dd1256bf712d6f1ce46f143d0d98bd61502c07186124636d63707a62f3a811a8285a17a82164a3cc662f40898be9c18a0c WHIRLPOOL 464ef47ab19715c74e867a9f2a6816b33fae13d9b4939605b028c2b2f36900b8745aa45b1d410e38f10703d8f464e5dd7eb2deeaa57069e09be50e2b8d8920ca
+DIST bash32-038 2412 SHA256 0e3649531c3a5675743980ecf5ff5fcbca2801afe4dca7fb4b250aae7ac3b782 SHA512 085b7c63baad97c266d388d7000c60994d7578e034c67cf9a3f8e77e1e089ce42ab3d23a702db5ba942d29848e6ef74cca43fae50058be524a66258072fa2ae9 WHIRLPOOL 617914bea6147ee30723db825ac7ffc0d8c81aa0445b2ca0f2a3200649c07fc463d9413d8ca9e9788eac43834c39910764296d84b189e488efaf8fe0efc977d2
+DIST bash32-039 5034 SHA256 46d427fd5b1509ec7dd980c07efd88634fde61cf07ab221dcbde9e1021bd2817 SHA512 8b113de654eabec0e607534129b486a50b937bc7a6e334aceb8aa5cbb3d1447a762052fa082f2678114928402d794c59f3bd98f7b8c0dc1957e5c428f4090d11 WHIRLPOOL 3d984d552e77d1c705a511d7c3b9230816d0926879443b7c08b108bee139713681a616024b27b0b8539846b7ca7f580877ffd62c2f608948a7e5f48ee2dbda62
+DIST bash32-040 1403 SHA256 c9e0387eb4a2904126864d24de0699cdb6070789e1c02287a3b81ea96bf945aa SHA512 4e4def9ec1e4954ab9c28d5dca9cc78b87829e54c9edd262a2da906d17f0429c9f552b602b109922a0805837546eaf17c6e621e601a240c9d5fe6cdbf8716ee0 WHIRLPOOL ebb89f440c8fd60162955296528e459e68d478173b693e2fa28ba6d68adaa6b9a96e13ebb5c1575d9915c3e90990c63f8e3880b6dcf6aab8347556d543258e96
+DIST bash32-041 4446 SHA256 cc551fa57d613efea30ab2404fe724793a3d10f012b030e611d2c6449e463bcd SHA512 c5ae4008fd2e86ba92f0c0fce4f93025458c8012b55eedd137d70f6570b52ea981952853f863a3751f9a82b8c355fda5d7b85365314b643c4a9368463c4c71ee WHIRLPOOL e4939e25ff09bcc6345243f0f03f1d175692d56553be4f4b2aff05d9705be234d5c1d9b8ba59b45edc7111df37d80b6cc024e32435afebe433d7d3c23c0053ae
+DIST bash32-042 1209 SHA256 fd0df54d03034e104b6377f249624bda0271aa874190a46e9d41fc49ad3caaef SHA512 d8ad8ae3a462d59f4c34e704b10292642e03cf5c1d0320aca70f6a9fbe4e203b7d7a45a20894c82e8575f9a01a0087950990471d9d51227f102d075badbe6d35 WHIRLPOOL 7b19f74456e7bcac2108e99752cad44aab682e4f54d6053a59b04f97006854a681280d67e7b86122c06ab7eddaed6607af799c0c8a5c3eb74536c62396b03ef4
+DIST bash32-043 1658 SHA256 43df7d2d7d61d3a8f0e14bc86d4f55b6d2e64829ba0829a78f5214d186087af7 SHA512 6d13a3051fa5be41c40a12a1ab3edf717da7e9f002aaf5de105a15b11026d0cc3748ab0655e61d98390e782597b9ba212af2810e59e99211fb77e97441f0d71e WHIRLPOOL 0485cfe20bddad134687a37d207527f97c9559fb942790cebc6ed7e7f59e0fbd9cd3ba8cf7811ed56e8b07a4ec59f9fc2a018c39c55bf8a18e1962775e85bfa2
+DIST bash32-044 5565 SHA256 204b5ecaaa5de334c3cfbce6dfd8a9d3770b09024ab4724d86080fbf501ded69 SHA512 a042c996c9d925e2e2a74296af1ae8dbd7f4afe8d83921c6a449612fb193c66c0c71943f64c95032b732b3e0e73de5f97be1ebc0eb77aefaa6b6e36d29b7a61b WHIRLPOOL 226ea2fedadef36d35763e146a5d08b60dde4808746523ae149e4758a9280a4beba521bd77f0cca602ed7cbb67174ec01fc68095e1760ec385765a2956e9ebf6
+DIST bash32-045 1338 SHA256 3250e6c6d5d6884e31beaa2f521d2a1af9c2f701a4c0e67a7cd011b6ad8f082b SHA512 8aae43371e0c126ba8fbd6faf34eddcec8656c5161359e9b57532093694aaf1e6a2786b018156371b793d37cbeedb5040b93728f3dbda85199f7994511dee741 WHIRLPOOL 0ec5ad5961755e74b8ed179f20d161bac7a6ba85eb6586743121d4c4bfbf5e7a2f8bdd146e4acc297e4943d93c68f57a9e0806802b33f58d0e436102aa34c2cc
+DIST bash32-046 1275 SHA256 fc829e92fa951c34368d83272d746f5c0ed345a7ad037f93322347eed00a1e1f SHA512 1fb2d29c70850a0ab2ddbfa2868f626a19ae88316c5a32da3033832e9e73d7f0768eaa147348a1f008163b0e796c38fdc1fb629ee8b71848b0047c3f773e97e9 WHIRLPOOL 34583b91a3c0d3997b9e431f877410accd189c453ac5ebbd5d4d5dcaf672d72f2c13dace94e4bcb87e5853fe2f91af2e3865aea8e1edb07c715dd545628081c0
+DIST bash32-047 1981 SHA256 623d4a958d2b022a15929a4de7403766ff07b295a185987b4d1e6cf3b70ea106 SHA512 587e3fef02d3fa0e4cccb12b994a2def2a8fe2f799c31f27d60dc393b0f5d9e5f71d7996fecdb83a4386c0de2ca3fa5676f899f94e1b8ad3af82c5e2bc5a5c6c WHIRLPOOL 6259fc767083a752b38dde95491755cdb74af60cd159b33022e24d10c1e337ad398a56bf2679fb27d39ccb4a329c3c60cbb4b4272f35aba1c2ed387b40c81786
+DIST bash32-048 1948 SHA256 74cb56764274f393676f68738eb22a3ed8fa388c0487feeadf0d78a45b549749 SHA512 17105999c7afec123a377d82b2218746d54b66479ddfde641a2bf928aff9851b554ca36aa6f84e0e6943b52e4e3c1befc1d1070aa700c5278196aaa7ad384580 WHIRLPOOL b640110dd91bdc4b48b080d8869da1437e58cf5356992a6c9dc5ee4f70de72379ac3601e8175d2553f69cf820d2a2dab4e61e342719a58b24acbc716763ba4ea
+DIST bash32-049 1663 SHA256 b1217ed94bdb95dc878fa5cabbf8a164435eb0d9da23a392198f48566ee34a2f SHA512 18d6ba61c9ed2c8d710d62a006c58f8b4cc14c507743811dad3afd74ec6b017b2297b3ea1ef3c0b7ad38f834f1ba83937922ae8a87225ff2ca45ecbe6df1bb1c WHIRLPOOL 097fbad27bfdb23cee0344e517e9750c3fe1406b2f3dee16d61634584f5c01c1a1f3a11e81a82d80d52face0fa66694945ee590c4af9edca1f9ee343f3336c9b
+DIST bash32-050 1697 SHA256 081bb03c580ecee63ba03b40beb3caf509eca29515b2e8dd3c078503609a1642 SHA512 544dfe144e51b3d81cce4d01a6627478407edbbd53184c675c73f05eb3a85f99959c021749f2643beb9ab7163dd5bc86b97b9df289bdde2d83474bab4e9c0749 WHIRLPOOL 23edcb9ff2c67b166bb2dad5e511cda7f7a0eb0f1e0b8a5afcc345d5deb9d09bed974f61bef53c029b13dc50fddfa73c26d3bc0834b537344e21da6e28200b5c
+DIST bash32-051 1371 SHA256 354886097cd95b4def77028f32ee01e2e088d58a98184fede9d3ce9320e218ef SHA512 862000d29e5134bea3ce0fd3b8bc478cbce82cab37ab31942030e03dddf2d597cc3d469554bdd255c3ea18c359528b3ad8f7320a9763c95e578de4b30d35c2f1 WHIRLPOOL be75780b1510fde12900a73546c767a7cf3c1950ab964c41f6ac3e8ed5897b5fc5c6464c060b8a0fb50fb41084e0399544febb7800acd1599b78e5b2f2ce8f57
+DIST bash32-052 3250 SHA256 a0eccf9ceda50871db10d21efdd74b99e35efbd55c970c400eeade012816bb61 SHA512 c52fa2692f264a6c49432b22cee9aaed3584f2357687028f4b96ba67104a3929b6136bb91ec64acb94fbc10c2de842372940f4ff450b9c534bdb28c627c55e66 WHIRLPOOL 685e9561e4c2559500649bdb7cdecc4b985f45f6a4bcb99d67229fe771fb2a1f4dc348045eadf478f5d627574c1f7984dde55951178331e7e8cf9a445ced7ac4
+DIST bash32-053 1115 SHA256 fe6f0e96e0b966eaed9fb5e930ca12891f4380f30f9e0a773d200ff2063a864e SHA512 46cc13432224bad89736de4543692431480505616df6240276cc37ef1ff405e99653880910b39982b2449184cd08dfbc34e17fe7e3ee506c2f2e546c4e825360 WHIRLPOOL 97e2d62126b1356f467092af8bfeba0c2fb19b502d75c7096f9131716f6c7858f5fd016cdc02763d14f693baa8f7be8ee8caac2a338a34fb993b0d9764102e9d
+DIST bash32-054 6617 SHA256 c6dab911e85688c542ce75afc175dbb4e5011de5102758e19a4a80dac1e79359 SHA512 76deccbd28e742c54b494316cf6debfa2681e9682b2cb34c9c105ee7a0a571e8e044c034f97e349b0eafdd919627c8ae2d4d26fa1100b6c9a38273d9a9e8852f WHIRLPOOL d6f80584e3a8b51304f25069506598045b14c14f9fab4d4a5c17f88768fa32ca500bfd4f9c6a5ee614d608f9dfffc23a251fe9635489d9900c47907b425f2e9e
+DIST bash32-055 4034 SHA256 c0e816700837942ed548da74e5917f74b70cbbbb10c9f2caf73e8e06a0713d0a SHA512 7be87eb61d5d619b8788d2e4298d59976aee90febf59b89dae2df1b43e85b3916c16b559b5169226dd99f1a86d1f2e01da2d682fedb78b97e8fbea58541759d8 WHIRLPOOL 4abcc5667b76135999b19f7bb6260fd19bc4bebbd8d0aa49d15470f0556b8599eda8f46d17bc91b008d9036dd3933c8a6d05b1b5ecc6af8e902c08f9f3bb3ba9
+DIST bash32-056 1777 SHA256 063a8d8d74e4407bf07a32b965b8ef6d213a66abdb6af26cc3584a437a56bbb4 SHA512 bb1a5c84e5d8676061e06f9d2ece972fa4d1a8936252d2d199757a35afc81633a5737437fde099277af0c16d3318bba56cbd97ff14b832593dc2d63ed3f6e8eb WHIRLPOOL e5690703a96811b618b62080563d90f7975cdefc8fe96fb15fd3b69884eed3c5e1593f69232ee979bd33724353937e1f06a70f1c6849b490daffa2200b4291b0
+DIST bash32-057 3475 SHA256 5fc689394d515990f5ea74e2df765fc6e5e42ca44b4591b2c6f9be4b0cadf0f0 SHA512 9e0808363823d34fb054ba11441ef71e24cb226a1f2f062ba775951546b6038468ed1808067c7f1212594554b0bb5eb1137dd932b7f6fa6da06228b6364631f0 WHIRLPOOL dcea697907c1e65a9b7fafc472d8c53ca10f6bc9a5285742aca44f46584aa143caf396d4fbea05c3a573918a86dda3a34b259c38c150fcbbd343bb870a20d62d
+DIST bash40-001 5156 SHA256 e3b514204e5da7bf1aecf7d0981514b2367d4b529da6d4a45d09dc29e2f0031b SHA512 2898b793404656d63739e478332789a6ba51844c3a388ca4a18e42953883065c3164cb90e525cc6ad8e59d1f47e7e8058ff7ca42194569729aebbbcb5e93dab0 WHIRLPOOL 747515eff1af46bbb1423086f4f852b93fa20963eddd1591ead15bec39f9e22e5e9db52cb6785b7afe90746a6b42c110ae0b4c3982fd0449001bad71633bc073
+DIST bash40-002 1220 SHA256 495117e566019b9cb0ab49504945b30cdda6e5b59597e43e18eae1f06b1d5cf4 SHA512 5af8cddc9ebff7433fc200780e46becca4b13a407c2b85aa08871e3a3019daab9787aeaacf4fd86ae3666119a3f35c8548ab488c72cef4fbaf991307d6bbd348 WHIRLPOOL b36c8bc8d6e7ac48029904a915a052817b3f4a2639ae93a55fee772e70b9af5e52144735a59142baee81c45d3f67fe31826513b5bdd00696fec30a1f4f926ec5
+DIST bash40-003 1749 SHA256 e300c40611b1e3775b7d1fb73bd770ad19973c22d7016d126af3304bae797bd8 SHA512 700821bfd1e890118c2c051a589911fff5ae2aae7ecf6aa6eb2da019ad45136ccc5bccf8103fc923a1b4bf0b1d2aa2e2d4e3cfc9a5cb0b5179f1221255e0de47 WHIRLPOOL bf67f7568ee25b37d663a68911033669c5013e3813ff00a926db2092517c196ef3088442e442475e5c61bf7748b0f62a2fed6be9b064b580fc4b93ccf96e6b54
+DIST bash40-004 1347 SHA256 4b03ed1f8aea99dec4ab3ba930bd126c6b7dbaeebf219e21ce3aa6274c52d2ae SHA512 e9e88426a4f8222b32e59af4b32a781b9dff7fbfc50d6c40f97fd62fe4dabf08b8c257c685b3be01ffbcef2a918d30dd951b86e670ef283804c7ef4d923c3985 WHIRLPOOL 502656caab4b7ba108c453474dd9999bad755e4495c6348c3da3383e6fc2b4a14307a2dc9c4ba0c42eb95bdcb7cf6b9b96a0a677bcf937ab2effce7fdf5f6168
+DIST bash40-005 2021 SHA256 420658c026916610a07d40b71eb70f6674b78c3b3da10384c7535c15b3309450 SHA512 1d84d131c3677db0e827040174d78aa45b4444e4164bcd392ad630a41e10cb3445dc4abcde214c2d808a4ca23cae8b7005a290df463074851c598a9df5eef2e1 WHIRLPOOL 15585ce3b26abcb93d3145f23958aca4cda96a51c7a3d8d6cb37cdc49f5d936e67900efbdedea86f6e4242f6701b17b6eaeeedc3983aecd7c7b234685cad2149
+DIST bash40-006 1133 SHA256 c78762520f3da5f39319c3143f9eb4f4ca3351a6306cf94b7c42b3b2844d82e4 SHA512 49e83eab424e3423e65f3793c53daecf2e809194cbf2b8edd5fefafb0478c1ce42d6e7057ca367908949698a7be20269a03dcbfee3f1c1c5c288a67ad3b01459 WHIRLPOOL 6aad1ae263e5e598a7cb2ff5bfd52017fcfa78ebfe8328103598249d7639ec63b2a69746bbecb81c4779f2cf875cacbfd16a77963d7ca9a68a78a081b754ffbf
+DIST bash40-007 6920 SHA256 558d559e24d15a9eedb42951f4706839322c644791d20c11ca5e958cfc0e616d SHA512 3ddbff2676fa94d88e1bb824affeb3cb067089cf1c6c48a0ff0a3323f6e64ff59da4dc1126829925b4ec86f11c55a20ef2bd1e517b4661546402061a0aab73e6 WHIRLPOOL fdba9c77f60bda4ea47703652d910a2f7866a4fe0f2501985625249870922709dca06db468366054b4693e8b8964455627e5e5f8c78cd16c7a35ca17b4cb26cd
+DIST bash40-008 1196 SHA256 87db24c00f83db7bdeab585dfecc76cc6ce6fd9269fce0ac7197771f3005d8fc SHA512 1a51acefb80e78bee86fd1ec48da376028e15570bb79c6d108cf8c89802f8dad5d89fe99d492f64662c687e3ae747a8658037579e43b143c0112ebb89697dd03 WHIRLPOOL 6f3023dcb5cba32d42d8f7a283aa39b2a34f95ec9cf48c671d3a90e04637ee0c03a793bd317a8d7a99331ff69c6bfb20d616abd620e5f5bd1f2baa87af2bca33
+DIST bash40-009 1821 SHA256 0047c240617a4aa633bb699f93a4fa9caf77051f2bb85fc2e9c6c899d1df7e2b SHA512 a732f24b5d39a7ba0f2c9b88fea97fc50c96ee73a15bd40085184620eea1c76d07224179b9e9a47ab20401259c548519c0801a3d8260ef47e830e8176e289232 WHIRLPOOL 4a504eb69d92b4ae7fa194328aa3d185d13390505eeffcab94f26c1b6793438b1d7dc278d7eecc217d176b836203400b97baab0e61290d1d75ba0c5db9d12489
+DIST bash40-010 2152 SHA256 f2416f6b45ff3d9a315e41b3da023eb727f53e7dd6e8a07e88d1f2a005ee4816 SHA512 bb0a48acdae924dfa482f2403802454bc3ce276b6179cedd6abe7451709c942b0e6253c18c6d75347364578604619cac9b701540c09148077f65bfae5ddc123a WHIRLPOOL a39d5e3d5ef2d66290adde4a2230626c0026130315ccf15650e5fc7abe925c82aeea2522c14f59f6f6e28c8b61b3b245c3d737ec3a30c73f2a345a36587103e3
+DIST bash40-011 1383 SHA256 ffc81429efe88958356684c27a914d832c1cacb16ca6881192832ee3a18354d4 SHA512 2c33054e6ef2d2816b62a7b6ce0db8a207e99e7a00ce9b9fe005d2de20b4d94a2ba74cc301848b3c72b5319ec4ca76a9113092c3663ca5278810bed4045801ad WHIRLPOOL b688fd9ffc6688b75252061845a24c1fb2ff7dac9d93c3165ae888b62ca5c0a25b001aa89e6ff5f31e7528526944238ede553bc6cf1910224e0749dd15265665
+DIST bash40-012 1459 SHA256 b2c4d6e9c12a8695bc177798b9857b9dbc85a035ad83fce401e668a2de1183f3 SHA512 d39c5a9697dec009bfe3ee3a102f2acce3723444a1e575afce152b082f4dce12c126e391ed1bad10c718a08d9d5cdb571d1e9b86bac5559f57e6c0549a0fc48c WHIRLPOOL f529dfc3bdebd271472e5af13c73f7e41c210281c184393630c2d9379315d61770a2b4d24e3ab80de9cd67d15faf28f05c435547dd7fb278b5bb65f2dce6cf6a
+DIST bash40-013 4629 SHA256 760ccaf9d1f3be5d81e6bc1f8201820b42a2cdcd2a561cb0fb021b4c241e4c3a SHA512 1108f2231c531fddfc021db2ce17b5f1e522039a708493447af5fc8298c6268cfb6080fd38a79edb6877eb2c92ef79b77eedfab14842af91f6bf5037beab0825 WHIRLPOOL 1d22b6b72226b04d7a4a9a9a416f995c47d29c9b90e69db5c269940caa6e4b3158a100a253026437ea0e68133d8d2c87edfd1192c22164c1c93c35763fb99481
+DIST bash40-014 3709 SHA256 13edc4c691768672f680b4f266bdd1c12e7b247349eba4d30d0bd923cca1c39a SHA512 7f05486fdd76e35700d8eb690d90d4fb3e24677a648036fba2f06528f61f7cb230e64cd1f1b374a865acccab4a57841e465088fcb69727e9e8f5f999d673cc34 WHIRLPOOL ddaee711e067ce4874a7306304452ee639315fb82f903816dd174cc8deb0bcc36ba14087186768a39d467330df3642ac528854849107832dbc83979033dc893e
+DIST bash40-015 1914 SHA256 7ba0e2bedf54c80b58e0f471e7372c539e5a43d55eb3f1881f5b8fb649758814 SHA512 f99c9cfb03f2ce9971d866a76b48e3d045fb244d0b223e6db0a7fb3e445107de624bf0c9cdc6fbbe0664d054e5973c5b0fbf15e5d231d8030b256f8d75dce358 WHIRLPOOL 4e3804a77d4c5dff7349082fef77b7073e50bbb29cc651da8fb08410eaa3521cb89f752c1939f48dd30dfa8fbeb9be6748f57bd23557b0496e50d83f205f8eea
+DIST bash40-016 3032 SHA256 8f3a936e928fe78ae10df109d226f79207a5418a7eded376e880fe57a571d519 SHA512 9ae370aa3943731c62209fc15edbcd99d66ea3f7fa8c834262dfc2fc06dc17ad3a509013f902130f5c72ac5411322b018ae8e821158d65ba00c015e23cdac779 WHIRLPOOL 3b8b5763681a9e71c3186ae813d2907b940d91ab7368aa9410b294df66b7bce2ec6515f8c2eaa42edd91b04b72aed4e91ef50b0a8356884990371712eecb6c0b
+DIST bash40-017 1496 SHA256 2bee2afe6339b034e3a8d88bfbf922f6f4704abf0fb56041fa693075f530f021 SHA512 6a78c3fee549b37850ab2e3c0049572c951e5f3717f54d6661d008b6240f7ae869f7a333a422d008025dce47ba222ec350d06d6c8764b06937431bda5b09e320 WHIRLPOOL a098a8282658f77a7cfd681a59b12261b680ffcc4e2b34d6ce1c94b4c88186299b012e2f75001d54f02fc4ce75418cac90c53ffd98c2f173c819540f0627fb29
+DIST bash40-018 2614 SHA256 1db3bb8db0e386be938ce3ca9d3aff10edee57e696dec353fb134960ddc0e631 SHA512 76072a06cdccd49425d77ecc47908137473bd128e3186c4149b93ec06b9809086a46af6f215a63d03c4c178f1a26c061eafffbe86c65e90028d28fd93dcd2420 WHIRLPOOL 4f30e646d3585b84cec237003a8b3d891fd0addabd7366a711024f7321b405d8c321280cc46b48a7f1556b5452c2dc00709ab5801049b0c3e85c23e9bddd5097
+DIST bash40-019 3309 SHA256 5049948f077090c02286445a441cf8efa3a2d95d5660dd8acef512408b0b7475 SHA512 56c751098f9395ee48d35c921b03a089edabf94060cff404614d0ce14aeed3ab904562c0ad6e3fec3e18da701ab4eaf31b3599b4ac94820c06fb114d95ab94df WHIRLPOOL a435bf3a223cae0e2b7d30d96b93d7e00b0f99de341ab482c14c6115b5f18f7fc7dbbbfecad6a32c84137e86dc1aebebe35312e900cabffe82c6ca326b1b498b
+DIST bash40-020 2666 SHA256 1c9a9aebe316867c71fdf94f1b2d3c2b40c0d291b3d220e36785e1ac340c6784 SHA512 0176a995921e565855938f916288f3ed40cb027b2af29bac7e2fd0678f81e8dad16437cbb94428a4391d1951adf844be355deb520b11eaa8e7ae493a7a167c86 WHIRLPOOL dd21d4f1882cd7caf7a2eb3b5e97d129050ca43aa15f26a3139d6105e7bb7215090ea19a212364723fde64189923c6f62f7fc4460c397a6350c2c1b48294ff52
+DIST bash40-021 1547 SHA256 02472d6f8b104941a2b6d4c9ad823cb0e7cfe6e5c20f0b12ab1d7eb23c88114d SHA512 fb72106b26803aeb5afcba89ad3824943accca2c162d6ae533ee1d86b7f66d3d3d8ac8be4a682de9c8deae93c9667315d28320e5f9e2df58478c1c01cf9d43a3 WHIRLPOOL b418f561cf2af8876bc5378bff62b44a6cd2f2b3164b1ae4e0fc172b74f03f0f6719a5886ae91abfb44cf268dade2e97fe6b5b3579b022f1a45a7ef8a1fdd964
+DIST bash40-022 1592 SHA256 045a1dc71aa1863f73ad7be00ec4e18ee3c43c20fafe58d9e2c6c51592359012 SHA512 51ba81c6fe4f03e20f4d80a6fd5aa86848adabab8cd43cbf5120ad16358917904b7ad0989115a0220e7bc4b6be6f6d5a1175c49bd93b93096e9510eb67739b10 WHIRLPOOL 5b4445bfaa70cc1fd5672291ae1748f102c6099bb002aa8be4a38ef021fe5c9bfc3678a1a5543505b49219bb3ee0a571b8d71c0ba1db44d16e7ba7974c83f02d
+DIST bash40-023 2148 SHA256 580b522375f762ca5ddf9dedb6431ef4a9b6e887ea25fc0ce152d747ae5ddc86 SHA512 1ab80dda1164c1edce11c7ee31999be2ab6c6e7fa8e755c9c490164308e898d05a9d46a119e60e98c2bd6fa6715375c02d3569e7d68a0f713b80e7a7ce60c401 WHIRLPOOL 5ded44ffdcc0c659ce10ef34527579d2a0dce26ad3faadeeb6152ce133109d8d297fc2aeca55edfa918d1c131b79e5eb8b5e2f291522e4b10043edbb04cda15f
+DIST bash40-024 3049 SHA256 a59ebac47efe31b951e1732e4223cc725b2748c331bec98248355c5ac53717ab SHA512 6142ff4c0315397d84eb365382cfbbf2e0e14b5d180c8d59b437925ba3d683567ed2a8eb7838d41e9beb07b5500f345c60a9aa55dc5f5709aed7b8f568a1369a WHIRLPOOL 64e5a6c7b057b8fff529419232d6fce9bd46b2177fc6bed516902e5f9dd0fdd2da1d135e5c504ee92913a81607e1e189d012018e2ca6926e4f7aeccbe051818c
+DIST bash40-025 3435 SHA256 f77900d636033474bc15d39c4948515fdfe718164ea668edd64d8d4d5a8f6a08 SHA512 ac84f5d5f997f2bd10d5c0cd79a2dd1c2cf510eee0ebfc291597df95fba9f5851d0449f477f82bbf860652ce618ffa2f2b0108921b8c8e6e582da0f43d4ccbd4 WHIRLPOOL 480f3c5f510ff0744e48e8d1be8aa07d51f5a7a411e97a85892d0d272176ce22710a43ebee06a8f8605b046be3e135423b8e49536814b18d447f0b38e0f29c15
+DIST bash40-026 1433 SHA256 a9bdf4409c6625561884be58026a52ccb47600407f3d5b8d0889f0585040f6cb SHA512 92d65885d5989fdd243074ee4446e51a721bc501f39e3887530d6422c25fce1f2ede2ad567d5acc8d1e2754e2f73001b8c1db33d95032f68fa4211d5786c0d29 WHIRLPOOL ace91c92a48e03eb0d7ef8f300382f772f1744572f84d5c318da9caaf6273d6a59b83b181cca0486ddf9a9eb8288e70ca0fba8d7da8ddd0553802eecc843a43a
+DIST bash40-027 2010 SHA256 f65dc26bb1bacc8a66610cd5f6f2b8e70be8d8c4e397e7a5ad6f3306224b77f2 SHA512 89688509123ef15bda34528569d5e3c2bc6627bf669e8dcf979d81336875457e82b669b9ab50dccdad1ac40d5f07a4d5c6cae963d94ee2ac2b19b7677aa187fd WHIRLPOOL 5484470dfe6b28ad12c6d7143026c7a5012de79993a7fb24994fb0022bb3b4439d79d8be6c1835cdf0fa417b9b214317c8950c80702b14517c28f3e1c5025c98
+DIST bash40-028 5567 SHA256 5b222cbaf3ab1c1d9b4c5956a0e28cad49660f5746af08efe174e7b474022d1a SHA512 037ce07c6fd5872054f2d924ff81753af2a28a2e70b1da498b8278d08a5bcc49cb8f242f4960ab465f2db3b6d05f9606c7d6d362b028ef898d08a2ad08c9d682 WHIRLPOOL 57d810856daf96e752729f1d1e1f1a7fc1998ae08f2b80905e95670d14c93a8bfa24890122e65a44e8f8b8ac2dfdd5b7fa6b4a1743392f47fa4268825078e4e2
+DIST bash40-029 3119 SHA256 15f5a21f91fc19c20e2befa568364f11e72ba30e86e4c61eebb6d7544555fa66 SHA512 cdeec36c7d448c167fd3e8bdfe1234685dafb5c4010efa5ae605be228006b89f3ce68d143617ab62159f790b381067d57d0ac25dade3bdf55a2f0abb0dd852a3 WHIRLPOOL d1b9a956ca26235d91fdde4a03ed18c757356b85e3ed0de29b435aacb404f8662cf0e9b2ca58fff764de291ac555d5937cbdca5609e192b261fddbad351e87ef
+DIST bash40-030 1649 SHA256 7f85de6839a6180922c2fec86f4c150036fca096e43a046a117e97e50e958af3 SHA512 1c27708eada140d99155144b622e8202591ed3680bd8d099803a4072293d6576a850a42bee67c1968fb74e30847d36b81b2d84d6eddd657e3e962095c8e7f822 WHIRLPOOL cae87c4e268ffeaebc109565fbddae3b0610ec8086b025285109de8a22b26c125db43358c05e15c746c11e70710b528c467d5cbb79eaa5eaf2ca7bb6b52076b9
+DIST bash40-031 1633 SHA256 603f318906ee4cd5fdc6a32360b59a5b64bcb50e393fe77d6116269ba28ffb0c SHA512 e6b78291d4aba78cfbb4a3ea0ca14f94a0986f0cd9f1a286996745037ac79da87b70c3936c32bf9e69d99dbab0d782c8811ae6d3d821106d135a19fd07d681d5 WHIRLPOOL 4f97fbb83d54a421241821dcac01f36274553b8234cb23af5ce364990b55d9d1dc1db2e2c85e6b585a835f434805d6baaab4a242ff0d3eb029e56aea8d4a996a
+DIST bash40-032 1154 SHA256 ea6b4736bedcf73cbf2a2558a2c3a04e3b18064a9730ac7e0c03e15d103faade SHA512 9e6bf2123557d8b4b908fa3afc278c8d10b8f647dd7de426ffe2a88098a9932d9f2fcd5fff922d731a7330a0a5067306b9bb626f89980c6b6d66d7e77a73d69f WHIRLPOOL 3bd5510cdedf80fb83e7a256589c03e23373ad4e1c7e3740468ca893b6b3f7edbb73cce4c5578b3fefb770de6f74966f7ccaf40c8bee76ada2ffaefbf860d01e
+DIST bash40-033 1380 SHA256 c496f6e0329940925dbdfc002ec08b8b06dc7e6e3269ca490f99a3879d2d04f5 SHA512 ff7af4d5d2da49e60741749b1e3814704bcf867480cab33108bf23dc27358d0a1c6f79d98991f245f65e5bfc67fdcc4ab05dd84f8f90c7a2c922978f8d95cf1c WHIRLPOOL 30271463a7c704ce80511cb0209b19a6bcc04fa3aef5c98b719e91a56b4a4d12780b2af6768e1235bb3bb6df2b87f08a68e108438e4ef4b809635aa9ea794df2
+DIST bash40-034 2160 SHA256 37d2f304c5c283602bde8195a501c19ef5ade3fb5494d25ca22fe1f00cbb42f7 SHA512 90248b7bf39fc9592a14b67d4aa0367daa50afce230e406a31c8f2e6dce091fbaa80092bc3f98ce4e9b3c20b6c66c827882dc1eea669dccc5b87ded185d60eeb WHIRLPOOL 6eb58c9514beb153f542eab6f98ad9c34eb4896917004fe1e9d54616248e1cb65370d4375ea16a33f4b8010dd81d403a609d13a47716ed6fcdb64e7c12143e0c
+DIST bash40-035 1884 SHA256 1806e4efa9b7dc796cec0acc4062cd501b2646591699c14b4899c26438c8f673 SHA512 17a926fefb672991331ee278e94ccaf880054379f0c6e4cc2b847937f54153b8e304ac9d54b65961f3e24fe89a32b961ac219453aeb6e182bd657e103c6ff8d3 WHIRLPOOL c24d7fed7adda74a7bb76ac5365eaa3ee51b1d78e84afb91f6276837a2fe2c56c013057219f5dc99d7f026fcc65f472f0e46677febc0bf5d2458f4e2d66e6471
+DIST bash40-036 2618 SHA256 7a78204900f68668dabf7b30a6df2398b47e810c51929e1c2b3f69f5a917102f SHA512 5c3f84b70420ef1ce55cd1c9fd30420754f93d7ebac6b2191e1c879b2aa2a147f25e3f881dc845d9d6f21526f0a294275725d41428fe1e214665262d20743250 WHIRLPOOL 928e3af0120b2a19d82052e347944ff76b650d3ff18bbf11aa1d6df31225d6f09822b86cadc7ada741326ff583f958535c448aab51bd8f9f8c3876da17c69ac0
+DIST bash40-037 1626 SHA256 f02284ad64deccb232bfc6c12fe2bc365c731d7e3ada354dd9527164c98cdf0a SHA512 24f64f9457ef4dfb31cb81bf4e683d94a71b269c03c1189309d3bc6dfc3354594069960bfa704c76141b9dd9a1d7994bb17e803c341b94199752d44d18b57d8a WHIRLPOOL 82fd2fe6d5105f1ffa69cb0e86777f59e44b0d4970b03e1291ddd046123f0f5185fb74c3bce4f2522a1ff015738b13b82dedea8f025d2d786c6294b154c793d6
+DIST bash40-038 1620 SHA256 b31ea07d9ac47b261065265beb01a5420939447aa0932ff9f78b049117afc19f SHA512 8116da5e07a7aa8afbeea7f868227ab5d21f7893a43fb4754da9a4c6598de099e32cf47eb028289a257cef100a5e952ca9f87e7943674a713b63ae59b455346e WHIRLPOOL 06a6f29301ed0d60df149853178ad6a6465b669d2de7ba6f72a52bba0cf490040490d220fb7f99bcf1e86d652bfcc6ef337cb81fa0e5a3f3b75b920fd03d06bc
+DIST bash40-039 3272 SHA256 09de2a4309fdcdff470754357073b6e9b1e4662add5981888acba27a53954a1e SHA512 3db7ab0fd9ab1e2fc8a4b457112053a3a04fbc2857161f765937753f75eab15595f0454bcfbf895c31774a5b5d96152b95a3d9009f53f8caa4df4854bc260769 WHIRLPOOL b0d4483ef339a8cb17a9fc65b0978890b1f96f04cc8d119963bc16b5c7b0d6a0b7f9c97566855ebd160bf6601c258a273b08f38d6a8532233956767cce5b235e
+DIST bash40-040 1173 SHA256 d71810ce346bfa8c6b77e5070e80207de4b8362678516be8febf50a7ec748039 SHA512 adcd63fd74f0d9c17cae0595bb6e8a3d678e296d5ab37b3c601af47cc64bae2c2a63367f32a9b93033423f819e0aa0fc4cbca7051003c296cf108133cef0ed92 WHIRLPOOL 1ce87e303522a56b2f2910a038f839c4c270278a09477a6dab001732b66fbf43cb1a4cb879fc911539fcd716ea9786284d1d4870baee7bc5175c72920604e885
+DIST bash40-041 6639 SHA256 9adecc88b5b3f2d87b8469d00d1b37624d38d6ca13227e787b46df723fab1c60 SHA512 bb71f3a26d6f0d099c69e3f4c5b25a4644f7c1217082fba65c999317ec5611edb8733057f973e84eb0ddfd3149cdedc1e1430f062a361523bc04a053e125de6e WHIRLPOOL 327f47ec9fb3816df7eef3d07487601a01f38b0af0aeeefe65bd9c604d693d0985f23ebba154cee3711f42b2d340432f20070e2c3a48ea0a144b8936ebe70988
+DIST bash40-042 4056 SHA256 8eccf5a7a67368c32b145d30a75aebc4530b1676f1ec300fcafb9a61e217acc6 SHA512 98bd4d05af90454b26831af690760544f3074854acf6fbecfab30258bd8aa8a010d05395867b7bb3c1bea80b3baeb6cde643c4ce99bfeaef65021ea7a088503c WHIRLPOOL d97c2ae7ce64433d8429f27e69d718fdd623a754838340fab46ea8d1e8b82ea5eb2f00eaa7f1cdce5d6b23c9465744df38e9fd9ab3378b2bad0521309c275c7c
+DIST bash40-043 1824 SHA256 1e077dea323010fff5c625d506530d9f05b76e179f3bc8efb46e17cdd4a6ffec SHA512 bef809c83803d2c48de2e7181699b0a49c31990fdb7ed7a056312d1d20963b07c33e97bff746715381ac9114afd3338c3256dc79813d593880418bc6099bfa6f WHIRLPOOL 3b4e73a686a134e80e4d72401ef8a39010d47dc60a05127477f3d84b74b2cb6a0a4e978302cd1f46442532957fd7b2415103b4be09ed46840a7fa0d2261818a5
+DIST bash40-044 3882 SHA256 05eeb7818fd4409ef41b6308b9de7f47217a0e956067219c7300c009212a5c88 SHA512 89b36451b46efce43772663ee3c1cc6090f9c66fdf689b4a2cc0c56fc000df27deb304d85713d22f0d014cfb5fdbed5889b3463cee82614cfa8dd1a0effe8162 WHIRLPOOL 97b1a6f58ff0605accd335e5a58c12aacb7a61248a7582f7fd1b0b30c8ec797dfeaf21d9ede1e59405e5f193ce1e407cfc04852867caef2df5d44d8af4471284
+DIST bash41-001 1445 SHA256 a6e47fa108f853d0f0999520509c11680d37c8b7823b92b96d431766dd620278 SHA512 22ec94f2459a3bb966b16e8216a35cba0d58d532c553308191c2d9aabc2c38eedb0aa2fcf972f1f9ebd1681230a5a7d49764dd435991db69c0f025f6de9243f4 WHIRLPOOL 9ca873752e778c71aa300b51aaf0054af2b420a73060551b4709b648a4432f59399d67b2030d2132a87ed2eb39a4d9e3466f6aba51945f038139b525a954cdf3
+DIST bash41-002 1799 SHA256 322e229de186b3bd87dedabfbad8386716f103e87ff00cd1b2db844e0dff78f8 SHA512 0e0aa000db8bf56cd0948579cd96c3bc0aec4e4ec0bd129bedab57e9d7a4c54450f0e4739255c3be4bf4f4ff679eadb1ca6bff07d76a2951fb11cec20257751c WHIRLPOOL 402ab8fe47ed28f8219d0324d25d4bcd77f411c1574ca05c86b7680ee637e7471ee32d641810093099120c9a8d8030304eb9bea52dbf0aa3d4f524f0dfd87912
+DIST bash41-003 1407 SHA256 91763dddbbb98c3ff7deb3faea3b3ad6e861e7bfd2e46c045c0d1d85d1b3256d SHA512 3d8db77e8472c232cde67f6dd25409efc8ef3f40396d5bddd22b15622a55a664887d46b7bf9f4a7bcc573e8de9dccaa39575d0822b61bdae5c4e98553336aa65 WHIRLPOOL bd270f3de36ae1a39eaa61143560eece549b5b857674a889853f95d8ef495e561c97d3c32104b802116d027566f6bcdc0ee74c58320ba910def3d69250d48060
+DIST bash41-004 1705 SHA256 78c063ba34c1f390a5bf2e5727624ca2e253bbef49ce187cabb240eee7f4ff9e SHA512 e95f64cf4e59cf616072a46022f61e9289452bfdc625f410d7688e8a54e40ef738d8d6c78d567cc0a5aa7e5dbd4701d7dbe7a457f761ec1c9151f6b9adaae6e7 WHIRLPOOL 874b569fb97b112c74ae7ec2b48916b7416deb97044cbe7477a3a59be81d048025ace9cd53394aca7e710643de979781a1a840714c70b2e8993d64494aba0f8a
+DIST bash41-005 1626 SHA256 519639d8d1664be74d7ec15879d16337fe8c71af8d648b02f84ccdd4fb739c1a SHA512 48023385e399ff55fa8197503147c229c33ac29f986323677cd810c305c5b58d175f1c8156664dfa70f3d466b5d5b17fd71e5f26e800946e326454c16db58824 WHIRLPOOL 798955b7c8fd3a419a6e47e777f83b4ff6bf30a98bb2880a2254607405659d10d409f6b5c770e9d73da460d128c6c897a8dcb197acdc7c8d33bd4321200c8f19
+DIST bash41-006 2166 SHA256 5986abcf33c0b087bd5670f1ae6a6400a8ce6ab7e7c4de18b9826d0ee10f2c49 SHA512 bd5365314d3dbf27e23697be6218b54f2d547990a979e85beb97d49ca5e42b078a5b693bbab6b778bc67a7db022b1b0e0babd898023dc61951e431676a01bfd2 WHIRLPOOL 04b13d5f65f6840af3e841dda269aeb6d3bd55a7aa32102d403ef420575187d279a008d890b1714db556276a4d0dcd95a8a4e1eabf4c7687da58e67b875c6d0a
+DIST bash41-007 1610 SHA256 74012a2c28ba4fb532c3eb69155ac870aac8d53990fa4e1e52cdc173d4c205a7 SHA512 757e11b04562d016f7479ddede52d6ed7480c87c3cd6d675d2147a100cff8344015bbff55e486f2847f6500922d195a41ede14e21829554ccee549a2fd6542cb WHIRLPOOL c9c7bb081f53fcdf4317505310eaf65059032cbe58690171ae68d27dc07c384b4e1e7a41e69ae2642793b029ae61bcaf0cd4b26809c1e157a01159402f888f79
+DIST bash41-008 1610 SHA256 4e2c2c251432cdf6b84dd5b4fd06d698f4dbeabb56a6c247ca8bf18443481215 SHA512 e7bdfa2ff43ee48ea9941f7df53794fb00673554a67b8e6334204f9b66e05b20aa052766cbf27b495977d3f0812a1117bf1eb923f407bb7f4a0f8394ce9ad6cb WHIRLPOOL 0b9ea934fe270156c786b30260c70de103be26ec9a31de87318fcc5a02f3a9579234f61419c22c095a7aec585a4f94923f1d8e7b9a27077c34d8e01cfa5db0d2
+DIST bash41-009 1323 SHA256 bd4006964ae88a5ed8032c16208130084efd43866afe19bb88a167e0c0f156d1 SHA512 7bb1b8b6c36a4704cff39c25abc48c87129981d340e51c70e53e54f222867c62327211a9fd431f176bc40ba4bd345835aa7f5d5a38cac94d4525a898e9e0702d WHIRLPOOL f0645393d1065c35baf7f48e9a68d5988934d5148220f674fe6f6b9ab8f8d99f6690d844728b20c768cb19ad78ea8ca38c8f89dab4ef81f4707e850565543ac4
+DIST bash41-010 1801 SHA256 797758a867b6c93530be0217bf0f82edf747a3f5d7733186ff313d11f8d9d815 SHA512 bacd653d3d8adcd5bc3ea8e2da089a57158d5f5241fc1b2a94bba821a3275ec52df412202d2067015172027f9388ce6ceab6e50c22548752cfe6c9224cb98816 WHIRLPOOL 570218cd68f0db6388f1cfe06fc718c7cca17b2d40e1ad5b8111cbdc18faced81dad17ced0ffd853ee69418b522f2e19e25698539f0edba7ccde37b73130abed
+DIST bash41-011 2444 SHA256 1b2b81a20712cb56c10696a940d583ac2a01d07836f8139252e8fe023d291621 SHA512 9ce8249dad5646d6620188c3d844a1d66f0e5429bffedfe3f87816e801e29c74f18f21c6d1558ccb8fb7c7fbade12a08d532e6b844b285e57529b477a93de3ec WHIRLPOOL 02608ad64cb861d8976251ebe124f241159eac218caef6e4fb283edf3cb1282fff9228d0a97286a80154a3820e2af7b5c5ce6310e14f710b3608f0b7c4036058
+DIST bash41-012 3280 SHA256 272e24a9a2802e896b20dae7c88d6a34b8dc89692c9bc90542cd4bda77607b6d SHA512 8a269842db2bcfb37b94a15cf75f0d1c357f4a451e1d69cf3dbfd71ede9eabeedfdfbfab78e67a4fc07dfd47e52100c34f5cc1d71f7e6bd3d5b27f2b3e255c5a WHIRLPOOL 6eeffda0ad369f196bb719f19c2295c06f9e1c5c5c338199839c568b1a8da44f319c5770ec3adb5cdd702affc64cf3f2046b32573bd58b7eb05132cafde7f04d
+DIST bash41-013 1181 SHA256 cad722e20534882ed6177f7287eedf21dc966816757fd964ca930f0ca230fdf8 SHA512 ae1a0c2a7efd1fa9858801b68f47bd4a2d3eb0f7a37d24029cabb97b980d40b6e116a8559c358d67ce7f8fa290cbc3b88e5c07743a78a8939a41aabd474044dd WHIRLPOOL 86ec7a12959018a6491df9b184ce322af7a2422ce24ac2b2419e1eaac8b126c1b0da9d5d5567d347f87c5d7fd9ebd2aa1ca6ff9c15c13a7cbe49efc3623f2cba
+DIST bash41-014 6672 SHA256 595d1efedea8d63e2eb426e0a800b52a5fa8b62d3d8476b912e1f0d0d7fbf13e SHA512 762e7487e9ba079c18d35dcdf3a2453b7de3ddd176986c502286544e735325ae3b6d710dacb250bece0e8a1251ccb026ddcd0f881f8a95a94d02c1be241ec572 WHIRLPOOL b80fd4f95c5fa1d81bb8072efb4e085f96044f5bca46cb0c1bc842145136d45afebca0721742d37cc793e73578490915dc319b4549ee149372769ebf75acb397
+DIST bash41-015 5085 SHA256 ec580a8e31c04db9d5e7ca279740a0565c4e32b27e87f56db2bfc21df834ce9e SHA512 3044a1acdd380f21317da0bc3b8455f7deddf464c9a70bf35e30ea434278b9b0c04756644e6037a133442b52f673757e223157b3b3301d64bacb939b4cc721a9 WHIRLPOOL 04a6467de9d962f32f5dd63943bb14cdf55c421390a658eec9f6cf19a0fb23ce931be73dcd7a3ea7fe875f32848ac6f5c5b38021d749f2d3abb9b0375245dfc6
+DIST bash41-016 1832 SHA256 743088c7d6dfaeacac0986ba74a959f2beac4c758441b97280b9c3fea29d3089 SHA512 d2e76f9e63787d6c9ece914d75ad4292235d753f146858c9597137b148d56b1847a322a0f7e07092f3d717815b337d3eb369e4b9d661d10561a0857daac5bad8 WHIRLPOOL 05869cdf9c8f98de357655d547ca762f33a1eddcc19107d7c861a0716bd42ce80d780aaf1b9abffecc3b79d5d0f1b90f71181342d5e3dc134b8c3e7574ca92c3
+DIST bash41-017 3771 SHA256 e5bdeaebf7deac2514f3f100e5ff5bccde843377249f648d89a6ddea4c17c06f SHA512 38c90ebf7ffae6b7f93062232a467f789ff1a642f791c8270e47562ddcb6472f696a0ce9336c5f0046b724c495f90e8090bfc48a50ea556782353e00d2ef374a WHIRLPOOL 456cca01a2adcb767b32c1c17a84fb8dde6034567613de66f1e43c8568c07cc29595027cfc447e3e0fcb712da07dc6129c3d4f7e9c2c13afcb76188778fe1dbc
+DIST bash42-001 2944 SHA256 8d6ca028576c4af23e660a2fbc2112221a11c8a785c0b37f033967e5cd12b47a SHA512 931f2f1d4e677925b5057558ea6f157073a9ba87bf4ed59e7d8fe20957c5fc40f3384a98fc4a2d5d7b458129ec096d9e28a860b6844ebf15f377778a6ef8aade WHIRLPOOL 72f1c1453d00f72efe77bd31253ee6978415abb3c943e2de4ba458de09af8e9f76469febfbdda54336e4399ea0f63a2cdc93d023b09b8caa97c435e4eab27a52
+DIST bash42-002 1780 SHA256 febac927e199aceeba2004908d971d4afb49b521796c3f42d1166f9fbbfbcef9 SHA512 b9ca62e397a05b368b74920d8d1b168367ffe840cf168e312b530c5b390cef3ca53e31db63c9fe15fe1a36e4c98369bf10573db40d20712fb1a016f10e0fc893 WHIRLPOOL d0803c477e120a323e79d842269db60eca7ce0eef8e2b829926a8b337d27cead87e9f8bb26c51f8f68eacfcc280123ad4ebd654c3d6744f361a88ef5c12f2a97
+DIST bash42-003 6896 SHA256 5a0a7c15018c87348ea87cb0beea14345faf878dbb0e25c17fa70677194cb4cd SHA512 6cf944ab0f554ab53831cbe114f771671c7a9420778d2caa524c09a24ec8064e7a7ef1355e66ed3a53100b72736284a5b44e2c6bda03a8234a2f2d340ed47ce4 WHIRLPOOL 8ff610b9bf6f81eb7ea68691c6d2bcfdcdc6ae2a5ed503306f4b5cac1f020c59901c3c3a35a6206934407d65be58db60fd2c0e74497a0fd30fc87822e8fbf36f
+DIST bash42-004 1686 SHA256 4e34b0f830d2583d56e14225a66937abc81f45bbafcd2eb49daf61c9462140c1 SHA512 aef5e753e59a82df07e18269064ff1d075e3b7558ac5aff7465da997370496bd4ef9c25920d7a47f66110d2ab719742033d96646921782d9ae15a27541765067 WHIRLPOOL 5cb128049a38905a4aef54c69fd1dbe7c0257c5e13de7bdab4c7a0c35b0979df0d6c34706077889f9e17ccb132f0edea96405caf0d2a3861f18c57c6635a05bc
+DIST bash42-005 3424 SHA256 a81749e73004b81cfdf0fe075bec365dc1fef756ee5e3fd142821e317d1459a0 SHA512 ef7fbc3fcc8174e7dfb27fb5e977d3a52b1b4b989cd7f748b1b35ea0e581a59668f41ec030e80f2afdc8b43dfcf472fad2985da284632b9228a6fd30ba4d0556 WHIRLPOOL fe5d6d320a4f3c3bf939b3b872b4dfdeeb2ac3baaea0ee871745aed01609e9fd8bfa555711a7e0190a32736e9362fe1c65148ac8d66d10877c59913c41855856
+DIST bash42-006 1187 SHA256 c91148945a2ddafa792682d7c8668c59e7e645eae1334b15b0d5d9ad22634bd1 SHA512 018031cc0cb2078937c81bd42459b98cfe793ff7d638ed2bd2859ec1c73da6a420d649f7dd49f2367035fd08af430ba783c68417088b1e4126095ab9467c55c9 WHIRLPOOL 1471ec01a11030b31d479913a952a6b52c65fcdfbcfbc41a76f231ca9de62031bdfa1eef58e5ef1ce493eb018bb97c5a88ff1f371e2337535eb23c770f1af944
+DIST bash42-007 1394 SHA256 405826acf443dd1084f236a15cb76d7f0ee2dbe5edff45c5fb836db571fb7e95 SHA512 65cef48b77530a3b87dec1c8c3fb28f553e83f28f24d5e170022b4962472e3e0021a57051800e1ddeebdb78548a3c192c4e1fef0f6e82612321c5d1335e2f8f8 WHIRLPOOL d937f89d9ddd3695c4f8ea73b555baa3073f31331f541e27baab16fbd476192e198f52c337d25afd153cc5fe5673dcdb747482350cb3ecf962c84c09de41996b
+DIST bash42-008 2164 SHA256 23080d11a60a78941210e2477f6bca066b45db03defa60da86fd765107ba2437 SHA512 5a782a165701967dc3c34d7723d13668b9ca0c4679de0f6150f42a183425e110281d893f30fa81eae27821a6d89e8ce9d9631268d9e02bca57cb8fece0389f3d WHIRLPOOL 98e06ac0869bc789f62b9e0bdfe7cc7d5a8107bddd2c8a4646072537016afb1d97d9999fde06a85d226770ac4a59ca5c19e7e11f2f878bb72383411c9e8d1914
+DIST bash42-009 2384 SHA256 e7ed5440b4c19765786e90e4f1ded43195d38b3e4d1c4b39fcc23de9a74ccb20 SHA512 ad0b58d00f37e8626a0bb664df7e24e0f19dc637aa829ae8f92fbe02a53140a3ca7de00f620c5b53001223a002ec774e5088354b342a640666810fd57cd1ff9a WHIRLPOOL b1af4e438027f10e51112b9e6476d8b3aa14917ccba708634f7927b80adf9333bcaae0a0d91c9aecf32b491b54fac4c8e88cfd355a20d18c7cc28dc6dcc5f05f
+DIST bash42-010 1818 SHA256 acfc5482c25e6923116fcf4b4f7f6345b80f75ad7299749db4b736ad67aa43dc SHA512 66e84164be08be47b0d7c8286b7d94a4da8538316dce8f8be54702fed2a44798d5f717ae3f524ce735d071430195ce10052a264f3f458b950fe26381fe6506d0 WHIRLPOOL 5694177e891a3f4b1906819e59b2d0fefd5537da9adecbe067b1c63c1c6a54fad6ecf8a7cd9e31175ac223fd1893d79229ebbea453ead39b8dc29ce4d579bdde
+DIST bash42-011 1426 SHA256 a491ae359a7ebbd7321aede561728289d71e1fc84777f402766a8afd4d261532 SHA512 0664fe80f3da9e5e64f1f0fc227e3937db6999526f743e74cf8d6eb589add10449c505422e241f1dfa0cd1e02c03c029cc0b7459850a52cc17d9c3a8d9c26a71 WHIRLPOOL bd72e7865c1f89ee4f1b7a7393b322c7ee3e2c053c0b693f50d3de4fa965d66e182a63b4b8452891638d41cfd4d44e7ffd17843fbc1c8672320bf395946df6a5
+DIST bash42-012 4247 SHA256 354433f1d2da02f1b9652cd20a5b85bbfb5bc2aaf79c42461ebd929d89b9b7b8 SHA512 0da4822a29d26d713aa5bfae00911db2db37242ec962edc4f256c8740e345b68e23dcaa4ca8bf37eaaa9e58facde6fe87c3b20c5bad565725a178555aed49503 WHIRLPOOL 23e090f6041c85a5f0057b866200c23852b81aacb8bcfabf44ed6aca4e33eeecb7b0d17b50190b663acffd8ee79c877b4c0b408d1f3cf7b405f2e834cf64d150
+DIST bash42-013 1340 SHA256 3412c5c6cbbce6c88592604aec054d8182ce64410038b5ecea69fc3968cf85ea SHA512 25f4caed2f4eb3f65dfb052b4b9b30a02fff8a1e6d6575e2da6bc1ce02d10aeb113870916f0b74ea2cd0722f81bcf8c05f70be1af178cff3c7091151d5791de5 WHIRLPOOL 5320dfe584243fba6c6c538d5a71304d63a4dee784d87714c2d3e9a9987ea7f39113a83076c431140fb5195645c91b7e51f3ed1e32ce6652ed90ba17aeebb7e3
+DIST bash42-014 1434 SHA256 b5a678e609858532735f94faedb5fabce00dfd6577a4e9ec5eec85fe682c8b33 SHA512 ea8dbe73d40bdc0bfc1752ad6fea9503b72bf4c204a6b0d04ee898429f2b16bf9fd21f8ce25b72e87efb82769a228ace31f1624f03491383129ce7935ead97aa WHIRLPOOL 868ffa5468262939845fba686377c93f1921d3c83b1070e0b9e937c8587a6b25e4bdf8cc41d584d549b647937949b8d515426ac7adf66cb3c6600218d1826660
+DIST bash42-015 1991 SHA256 2d876a8304bdf3d664e87e0a8d73bc4ccc100a9dd8c0d054e8649472d8748a98 SHA512 dd572539a26ae5c80b1c39cce8c548b9de0ab5b5f7e711974413322cb20845690f15d985713facab71957b6988553c0a613d5fa3dee2d263bdd9a8d7a5599ea9 WHIRLPOOL 22a67c207e4f3bd1bfe059d6814b779b5d2efaafad2bdb0442ba40b0344729cfb2ff7ef17c10a970c865d9afe1c28ba9964c8cf319066b7e307668a0bdf357bc
+DIST bash42-016 1410 SHA256 2895ccbcf7fc98da73a8fa3ba7440aaf2bfaef6c0af8bdd3a9c39403cf03e2a6 SHA512 2203fd108df4e9c8c93974ce2ac10d8d7bc9b6df1db92ff88b3b394d6fa26ca13de6e308480c192907ecd658df5b4bd3b077a946127b82167c3cac431c3defa3 WHIRLPOOL 89b9dad82200501de1358d8bfffc533bd4909fb58d3d05e901576fd4cfd862474877912c3221eefe65d6c7886057f0c17d688a5cdeb649c34ae4af2ef5214104
+DIST bash42-017 1399 SHA256 73552444498c761d6073dd67ccfe043b36ef24bb418c266d91d9750884daee7f SHA512 e2b93fb5f904a0064addd2d2d20bf4f8d868120bad1486916ae0774e41ef4123cbf5b31ef64109361d091ff317cbadbd28882d6571d3014052229a14993ed933 WHIRLPOOL cece85996181372a8406fac605f720562161f66d49a57592ee9bb4c5f409edff166854164093d531343773eaa22990702fb756c6783b235006843f77db67e5ad
+DIST bash42-018 1929 SHA256 e2a9457172370d454d31b84bbcba758ee6394316dbe755374553b52aadbb494d SHA512 facbe3d258e0e7514bfe3a8c6516aaf2e405facd233e205794ffab815f850ba7385d2d18d7b3a9c000cfe254a771779c6d8829b2fee66a9d6071b1888155b5a1 WHIRLPOOL 28737af2a1a954d5a34e9fc9faff5a05754f72cfaa51a270108ce90457b2c56a7870ce3017ca05e56ef2938e2e2a601f783f64e4bbe8db304a28aff284376fc6
+DIST bash42-019 1415 SHA256 a8b7cd02207656976016d93cab48e073cb5da002ceb27b7a63fc5ea62007eb56 SHA512 f8086b8358201c10e96d9533b90a58248e26bc379be96a8a9fba88e09c227acf85cddb26c04e93043b35371c12cbf156f591c9af88b1eb61ba8acca53f6d07a1 WHIRLPOOL 0c825c577ffcdb1102f3f9cfb69f6a92ebf73781c0170ff0788090ddfde0d7fb5f3534d06532b4f86b5b8cab7f6c07e30dee4e8f2cbc40bf11a0dd69addf6974
+DIST bash42-020 1825 SHA256 494773f0d0078cb35372d24caa523b00d8fdbbaed71e41dc14c9e47579da3c6f SHA512 23549c7a56e43f9aff7ebc376657ff498d07b47ebbfe6707ba3711e095fd80ca86d077c5379ee62c86711880979debd7b60733d83e12f349ced9e93860d8fc8c WHIRLPOOL 3f4aea688452e778ba440bbccfd0a4e76735ec7b7b3916d5896fcfdc3c4aeafce4c52c4cd21282915b21d12cfc03c170535d2bee86232f90ded87f2731f9cc07
+DIST bash42-021 1532 SHA256 a887a97be226575ecf483be2c76655bd6d1edde1cdfe199c27bd2e6baf32badc SHA512 09783ce72651af6abffebdfb3d3e7446b29ac4bfd395aeec66ef1f5c8a2bdc2238957b7e6f4e896178a5e4e24987de209e6776f29330879c0d8e14e8495d8284 WHIRLPOOL 821d16cfec3cabb2b48a6d46518993d47abd71d1ddcea90301d5f8a7b203c6e224031b344d543ebce2f534e14469b03079d09caa26cf4af4de6006bd477b4a61
+DIST bash42-022 1395 SHA256 9dcdf69df7f8cd2ba88d18c45a0d8f55fbe4f0e273411179db94dd6198b85c6b SHA512 ab6f3f175581f34dc106176fbbf5c2d19e9f421e16f328cffe98f11ee01462b63e0f1e720ec467780d91eb240a4a7fd4fd1cfdf6e0cb1293a8e42e8a4805c152 WHIRLPOOL 80eb65f4cf97167983ead281acb6a114cd866e22a8715b7106c342a442c942992916bd9918931422ee0ddc993762d86a21537724adb7fe4f3543f7fa7b2bf666
+DIST bash42-023 1699 SHA256 5dc11394f1a6c887373c081396efd4f4cc04492696722c57a4811c207965f0bf SHA512 b9d7044800a988dac8c59c48bd4845d3197d6ba965d22fb8f62b51b9d48f5a55519104a16283fb638264a6f858a6d574f8547d75721b96da640721bbdf097d81 WHIRLPOOL 7dee6a8915675019396d0003bd870315a44268c8af1015b29da802cd744fa340a7303d26d189b5a7a162a58f5931ee268a8e8129349b9bf3fa899720b0b119dc
+DIST bash42-024 1363 SHA256 99c826bdd33bee281d0a9191550d62a24d0b256cd41c90afd10abd63a66b99e6 SHA512 b4964ff258905cef806add58eadda17501e98bb3b3b5c8ce8ee0a9250e5bdf0a01329e1bfa973204b1c8e5da8fd068bcef624ec65c2f401c41d0b6b55cb2ba76 WHIRLPOOL c5c615b6d14ec8069b0990be04aa5e4c4ce3d41e910186e041c6ece46311c1591d327598981130c98a2a54144ff0efecfdaad9f6540173c4b0deb7927c70f736
+DIST bash42-025 3969 SHA256 0db0646fd7a559d5702911192bdd387acbbc61cf3c29a34007c3ec840e275515 SHA512 b4b80ef1a7599506454a912e2ee23f422bd199a675199b926c3770ba9091fb69583ddde84e67d897c79e6a047ebecbd18a5ee72557e7526c4108476eb5cff71b WHIRLPOOL c97157bec29f43d3d1367dc3a1625f51cd650646feecf8efc4b902175898c8cd90b7f403a7fb8798cde8232e770933de2e0bfef4f8fc0bd8a3e2bd24ae6fc8d4
+DIST bash42-026 1577 SHA256 e7e90cfaabbce3b4b9c699994e9d9ea4a2f084fd9f37788a80b0b70b47d323d2 SHA512 b00200d0b9040c74117e0150c589abb9e511abb01888c485eac770ab61c234669aeae3957a6752ab99c378ffd8188154bbec713c608b92cd3185a649b71615bf WHIRLPOOL c6851fde44599df98bb1c46bce45fadba204cbf7c368b8c5234ef992d24a2dc43fb107dbc36245ba4d48edda3cdc5c5f6c357c1fc2492ec4c66a36ffc8d97b3f
+DIST bash42-027 1461 SHA256 0c1f6b7256fcc17f42c05f9bbb4138f8e8bb67e79c622c3485711b6f37f7ed42 SHA512 107e13482deb9f6355196b2be9b717090aaffd8cf1580ab347bf38600e607c31cef5173b68e426a45d1678c7c64e7e095d5b6da941a5f53218919a0629e2fcfe WHIRLPOOL b4771a0bb540aa3f196400e4873c565a293ea656831a600d233755b3bc8bddce3d881b39a6f52a57b8ce5f622e9031a624f182a192de7e546b11f999f41a1294
+DIST bash42-028 1834 SHA256 204226de39ba81aaf3dd5a29cd59de052ec9f648538bb9e7f1c8150852b1ed7a SHA512 6e6ad04e7cff2d65045a9afb617c041b571b6c8cc728f9994825545b7d43c0c7868c68b22546784a6f604d3e0ec22b7bf0423e9d49b7109fefdc5d3db4b31399 WHIRLPOOL b13fa3ffaf6a38766743d2760493f58a4787aa7a244038e2fdf266270443d678cdc7aa6205be48665d2455e031f346d2d9095776f2aa879d70857e3132136aa0
+DIST bash42-029 16812 SHA256 d0b08c0817bc5acdb28b466727622a8422ca4d61188313cf162443b7f338f581 SHA512 9349625892201cb46f3669c18a38c86d609c1c9521fb8caecd6880df822897c6d2541dc0cf5d3d11d27779a3be636b0c6550b7e3b010d37e83804fd1ab27d35c WHIRLPOOL 045d8bec5da9508863fe93843cdacbb9fb2ca56e048d1a5bbfa305742688a9476568441633b9dec27a6e9bc56501d96a798714bcc1f9079de6c57d6bd3281cce
+DIST bash42-030 5046 SHA256 12594366591a136d8ccdcb8e218010f2ddab6be28a7f96d0ed32ca927e44afae SHA512 4643252a45b7fe84451c0bea95bd0089a1685067032c8a2e42bc78587deef5b6095de77500d1c54227f92940b201d193984852f65ef886237dd435617639a46a WHIRLPOOL 26c5209c8a29d6c12f61beadbf91d49707d090213d82b44da0aebde28f6ef0d26e256eabb89ef343c24e941a837a6bf57538ca6dc10227dca69536a67bb0f8a6
+DIST bash42-031 2047 SHA256 55f38c4d34775fbb063510c4222b195d998dd86f88288b64a6103e3812f8d9f9 SHA512 de0ea5c279ac956aca48f12e2962dcd4ae2f653349bf2350ae7b53e8370aaf882109fcb29bf559cd81512362bf31a100193de6bf193ff52331e8325df2f82e91 WHIRLPOOL 2dc6e5197beb2204b15493de41c041ef8df948d656d06e18cbaead2ece15d508980306ea7fbb02a1b926bdc92f6e09d182586b07c51fc93716c7c438e2dcbe63
+DIST bash42-032 2416 SHA256 e3a8b563dbb1e5cb7ca85a53515da8b2941213973496d48c4cc5a11c604791ed SHA512 ed35285989290c10f5013770397aa14897e63a28f5ae5a61319ea5881b0abd84410686288cf0f14dd9486d8fd623c410f857b48fbdb62350121e3596527dd3bf WHIRLPOOL f1d156a6b8d68eb71eae54c33aac8c6d24b09bc7ba07e856a71e39ba0f4e4ea7e1a4084d710f4239f7002af2ec73ca8953e81827d4f782ee0fe88406ace86311
+DIST bash42-033 1634 SHA256 f5d12790d69fdfb2f47ac86fa1ea1ecc088880141570273f38dfd3fa4a46434b SHA512 89e277e5a2f43fe75678c0dab57cd7c8761efa38f5902ed0b311ef6a0cdf48f683d3f28fd419908db43afdaf4f81d831f0fd630795f4d20b317543cb9ab95970 WHIRLPOOL 188eb57de7957a73c587904701a16dfa6043e785f47d685b6c4823729806080bb0a11b9c3409b4df69769c3f31ea00306ab42daa73dcfefe37c85ded518b6162
+DIST bash42-034 1345 SHA256 01c1f332101389cedf347c7736102966722a3b213900954e5d625bbc2f1e41b8 SHA512 d59a4a67a241d262de5fb27b96af0f15b0f6e7e922b2d61ea86e037dcd07ea77ec3c1ef6b289e5bbccd011b632538f264bb6426c3a07dba1946c094be56e0b16 WHIRLPOOL e2a2310a55db78a4d668235a4a70d266c28108ac4a04b50864704f7ba745d3e1cf080cf34544b426c1a2d6067adedc32d7491163f0ef5d09df3d51c99451b5cf
+DIST bash42-035 1920 SHA256 cecde463b038b4849635ff0993d9b264fc92403e7ae0accb52c7877aeaed78df SHA512 9f294177e91600f65cfee1b9dbf59b3ad7db449a99cc1013b7c97ef6c814b51afa7a2d2516a37fcc110ff3f0b25c4b06e42094f4665e03e41650bfa69c15eaf7 WHIRLPOOL e8806743da1f16375ffd29fb7c9ae78d8966d6f7faa833025e57fb59bd290a2afdf94777e9ac51917f378312fc8ce05d72ee14525352412c5826e8a2a9909fed
+DIST bash42-036 3123 SHA256 fe293a1bc92ac4d272ae9b9a0de3afef7c06145a2b52337a09cacccc5305aafa SHA512 7e114b99d8f5b210b826715c77adfdbb115e86ace35f7ff331fc6f595a4d0f689a055ccf7adfbafc057c7549f5597e4de455ab9e18a6ffeb5b4fd1d3a2aab99c WHIRLPOOL 6f4e9e9e8251b5a703bad2202301edb45546d94f452669ef681786ff5882269b70791456c7c2040731b5b7cff27c4028823592a61d46204a1271218f7e6c7b8c
+DIST bash42-037 3483 SHA256 c7578cddd3bb2430689c740f58a03403800726dcd1268b28f91bf37f368e1674 SHA512 4466990dc3499ccde5940ddfb383052fa345d4e53fff7c8963ac7482fa280658b4516a1583486175cab2f3a5c8afbbedda8461e3cb1802031bce8db386404608 WHIRLPOOL 918dd53aea5ba7c5da2b6ef3325289d80d5c9e01aa57bd5bf9b9e6a22302865929a670ed7b20a5916237e2078aa69223c681e00c79c5db40dcf4d9ffa455b603
+DIST bash42-038 1290 SHA256 b8c9a81bdf206be58ba491dfad80373b3348af769e80aaf72f7611ddbbbe6d57 SHA512 f835bb393153310fa2e4c2d95a98c0db53a97075f8989d61cccb095db223495777e413b21e9b235391a4a0f34d935a828ff5ccf337520d5dc87d380170efb351 WHIRLPOOL 3625b8a1e17e2ec7925027b6e048262126366ec2691e7a2bdfd23f8da2eefcea6ce967382067c8d6969d1a9cc641ffcd05ab71a713a61762c43d77df01082b8a
+DIST bash42-039 1603 SHA256 f4f9300a60321a5088ae9e54052a64c4d3e876f9a3a17ca104d58fa38b9c1791 SHA512 4c5e44a623840c7efe7894f313a5691307b12aea325dbc923b48deb6ee6ac0bb2ff7afb0d2ee12ab97b04d60c1b9e2a4facc51b66c93be9fe0beda317ec7318f WHIRLPOOL e863174def546d9e9cbcdf5cfa1f735a1503a7caa10ab25a017add965cde524412e37c7fdc43ee80b6dd23676f2231093df64de1d1f41aa823e6cf5c79136531
+DIST bash42-040 1710 SHA256 b265f9caf3c7321f95bc8e0b9e2c46bd86c226f00f05e823699aafb83c4aaa6c SHA512 ff5cfdd2aa846f0831a1f2f7b477e70fc6b68b6c4f4785293c417039a7f3fd4822ade4658ea17046ab9616c3fed02b463e6a3e60aeb7daf6ab667da14b9a482e WHIRLPOOL 7b4672ee3112be3919cef4a30e730daa534ee61c2b5a8e48cef799bf5e17a9bbf58dfbb96626f6edcdad595c92bec0dfc9b5f41a9785c20af7cf3e829553fe65
+DIST bash42-041 1463 SHA256 05cc1951bd9f6624088dd6067486ff47f1825e333273d7df5f1b06b23baaf5eb SHA512 7c9c12fc77bb764dbe8061e6df9419ab84d296a76c4a8bd96cf0f507bf70652a1c869162ac8d8c36f2d16ea0912a142fe14d6db45636bcb6e6fdf1444f0672a6 WHIRLPOOL bfcc374321554787373bac3d1cf22e2cdf4064a0ece447bda2426b90bd55c09f7d2ea2491bbdf2e03c2152783e45bccc98797fb4f12e4fe8095543ddb51f0457
+DIST bash42-042 1571 SHA256 faaa5c1f456517b258b2a65eaa664dd6a01eeff73c8ca4447c3a6de371bbf304 SHA512 99fd4f5f70e3d7d2e8dc1dac80e6ee6e0bb9ba1f629f41019b13f36aba2404aa4d786049bb0039e5fee138a01b813d295d4303c7c3d561a3cf565ffa19bb081e WHIRLPOOL 944cf532a9cdc42dcda55f3b2af96337d31596bcb39e83fb3e223bc3aeb1a45696dfc69e60ef0a68fd0c133728d9d23a037d633d9a267b09f51954ba7693e262
+DIST bash42-043 2110 SHA256 dc2683840f3e890a9c5f85338366ff6cd923285e558eb46aa818a03fa67c5c57 SHA512 70503181c392faf565ef0b23a2f6d1614836ffb9c04791cc4bfb31aff7786fd5efab4072034a4cfba0035595140cf7f9461b1565e4854ec34823cbd4f5ab419d WHIRLPOOL e988a962aac3ed9cd1f105cc5c9a477aaa52defdb049be8d9cd37da40177664507c06550193855cddea3b0a9fea3a04ec027ad14eea845317ee67e1b89697076
+DIST bash42-044 1871 SHA256 10d32d6c9ccdedb1d826f46468631d475f9dcf983fac087766e16df7b99766e6 SHA512 e94cf93c5760225d4ac16f9c73078c3ce9913ffe1e20ffed8fa31084a0efd3dd63762b5437221f6b570078667e3ec19d882169ffe0ba4c498e258e56f17d2511 WHIRLPOOL 23e3fd1ed1a708eead2ce463c0e5acd720accbe9727462b7fd3916b14b8eabf2339c1f7b1dc973249e075bff4fa566753ae43c540ce3ddc84b5cdd72814d568d
+DIST bash42-045 1572 SHA256 ddb7eff0f59d394a483b09feec3771d9026f81ba90afac32846a19b172b2986d SHA512 64f62b19c79eb2c581feda2b9f3c36196b3a794ee9996f6d72078fbb0b8c5878aa2d8ff3e2698cf9769e42083704dd9342bb108212d02aeb79875fad70895560 WHIRLPOOL 02fa25cf02c831675a78a5625e0ba5606b52eb9f3dbdf546cd62983d83cea7fd159b535df94b3c8d39907a7739de7459b69cde3583f28d952a54b384122d264e
+DIST bash42-046 1988 SHA256 95c1323b68c0ecc0ca09565ef2d5218625ced3957b702e04c8bcaad9e7b3816d SHA512 7e4a9d3961cb8bf8559f82684cb75fe8600a377522f582e1a9537696ceccab32d15d1045f850ea91ea8bd2cf286d79412bb47460af26bec8486d5f3137f5d54f WHIRLPOOL 68d83498307dec79bea516c7e7b03dfdff10116a716922c780c66d9017abb38cf6b32f17674490fed93b2701d8271f71f4aaeab6712b184fe4d880b818fab988
+DIST bash42-047 1353 SHA256 c1979201d0345011c419a1c82407cd2a00c60a0c75b7f07e145d17f3718daf7a SHA512 0b43eefcc0ef3a55e309dff339db31a07849ce794e645d917f1836f48c71b84bdc50aa3315b3b2e33acef2e6e81a07f2a026cb43381d0f809c8271cc0a0699a0 WHIRLPOOL 5b2a3000dd72b4cd34f74ffcfe160fe891c8e55766913260207cdad0ed205843398ca9a261f41ef5d54c76782ae291809be0b78c3bb960ea84bb0676cdc6e263
+DIST bash42-048 3258 SHA256 751a5d2330b21ac9aba7323acbbc91c948285f30a4bb41f56796f9a36b983d24 SHA512 4218377052da8900ab6d49b855ae6f7779ad94e9e76daf3424240fbbb1bab37b929989b976ecc3ccbfb66f3c278a7ba546e5d34b214382b41767991945d960b4 WHIRLPOOL 16da3dfb42b1cbb50841e381428135a9d0439d30c519725bd52bf55093c618b7ca8983b4638749dc87d5893a20b4cc5546c1ef5141f62d78fad8ccd5b4261fe7
+DIST bash42-049 1159 SHA256 901cd74cdd9f3e9bb5cc907d563e3d4dcdf9d5f6a751e85b706a958f51bc510e SHA512 a0472af2c3bb30fb3ebf0217b34261aa586314a05fc19c959b4931dcd064e0a6a8b4e37f8b4a9dd13d8fff38822e32e12fb28f4fcb73b0f6dcf42827fa5aba05 WHIRLPOOL a34df0a257a3db06b887abbda2afa823b471e1ba705318822e98d4740ce41fe906edf2d91602bcbbf97f1202067086b33217824af7cf8f2f71c58fb4d6fd65eb
+DIST bash42-050 6650 SHA256 1a19b84455e83b46fcaa27759a5dd643dde2e11ceacd1e84e351970ea04d8ba6 SHA512 317a5f90d909a5db697025894b50f35f26f8293b3ce1ad9b8e9dc6d0661f277659c8cc0a70a113d3889b2de6e932e5af5ba89a427f32879c69d4e3db24e6a2a8 WHIRLPOOL 2d77d23cd0e2baa59f8024e3e09f9db48f0ab999157d9c6911c4893abcf6a3e320f8f1614049ebf2b7b9ff5da57041ef1fd1b873746a940cf720ca947ad75d43
+DIST bash42-051 5063 SHA256 3e15347bc23a116b8ee898acec9d0ac744612ce9bbc0096fff47c4cf1149051c SHA512 de9d35fae23b9c7782139b9812460a602252675a9db556d7e38e8c15ae914db0e4a1f2e06db909e249a36f33ca1f04aed25fc8e036d9b1fc6ab58d8148524e2a WHIRLPOOL 8a61a34206d97e087a298dabe5b6347eaf22e846bdfebedfed1c534063e7b78f9e2a6a68de330f6069aeb736444ec50bcad105c683ecefc64f288abbe8a44b96
+DIST bash42-052 1810 SHA256 f098fa7148f76c80ec82c704a1aab6ae246960a7ce05624ecc8844fa1561dc0c SHA512 94654d078a58a7acdea99c955315f9537575c7965514eeb19d5af9a18973042338500a72e917094ebda60fee1016cac8328f37e1bc011f2b485f167cba2aabdf WHIRLPOOL 9cc299e57c9039ec0d34cfa0031fc89f9a59aca394389b807bfc193bb29ef8b9dc7aec8a0f8a4349bb0b0dab2bbca76a7bc154566188164528e5d05067ee08fe
+DIST bash42-053 3859 SHA256 20e693d7543885c8da78db873782e56206f522d27da2c953103f23b950ffd3de SHA512 241dcc2d3b944d0f136ca5f2564dbf3593491664c5bc18d5643d9861f273ca18dfa92da2f98e2c8d62e770b7450ffc27b82260fd50974708cddc4c26604942e3 WHIRLPOOL 78683a3107521a2dd76b98f8412d96eed69b6402f111f6ecca2bd91b2cb753eb22a7bce302f9618d7a99010e8022259387350258a463e78865f5f9ecdea71cb7
+DIST bash43-001 1617 SHA256 ecb3dff2648667513e31554b3ad054ccd89fce38e33367c9459ac3a285153742 SHA512 a1011392652180a28f9837af4a341a80beb929c1458e2384e282f0007713c5fe8d0b315abf1340b3707748d3caed322135dee87b59eeb7612ee5130f87d79888 WHIRLPOOL 94d34b6ae2496b4007bf9b3af69847828179dfa90528d7fc2f9a91facc451535e2fa46120cc3ea22156974c92f2633f91423f2d43b4733f8960cde69dfff81b9
+DIST bash43-002 1594 SHA256 eee7cd7062ab29a9e4f02924d9c367264dcb8b162703f74ff6eb8f175a91502b SHA512 e3178c85f553522d5d1c5fd39e76f015b680a8ccc84836a5e10283b2aed6e5b7cc3d23af0e67a270b7622dce0abf35dd8a95afa9bb6f89b73a9439f7435175a4 WHIRLPOOL 2d1b6679a1263f7a4325b692c3edac9f5daaa72e3f06dfa88958e70ad64c1fc74b92d8325becfff2c21dd28c002470bdaad50f57037c2676352078291bf0b0bc
+DIST bash43-003 1465 SHA256 000e6eac50cd9053ce0630db01239dcdead04a2c2c351c47e2b51dac1ac1087d SHA512 dc2c5fad8d357d1301e419afd959dfaf015a63172857080c11f77ab1bb7d1d737f411eb0e70a861f98a36bed1b19edb7217a4fa9f4773e21706b62dc56ec3464 WHIRLPOOL 1ef78321cfe3ca6e9f690ae3dd6a7c06bc72d2e6590bfdaa8543b0ac3ff84eae998e4a2aa44531423cab1137c974b09ac30baf5fa2746e2e5a2006cde03a2b32
+DIST bash43-004 1534 SHA256 5ea0a42c6506720d26e6d3c5c358e9a0d49f6f189d69a8ed34d5935964821338 SHA512 6a5177d5f4205ca9d3824601052dc6d0cd768638cdfc125501c5643dd51d537f5d075cbd11a10356caf4205e47a0287c72636065789ecce264129fc92fbda420 WHIRLPOOL 90c2f4f7752cf84a67b1f648137b6c25b8a6f5212fc5dde26d6f0fb6f316e923bec916368ba9ebc6b608bfa0fd82f86b6ac7ec6db32d06b83c3d22730788cfa1
+DIST bash43-005 2636 SHA256 1ac83044032b9f5f11aeca8a344ae3c524ec2156185d3adbb8ad3e7a165aa3fa SHA512 e201aa8ef0ce0d74fa5ee42e8171bbb5ba633d831d863a8e8afc5d5157581bb055d16c52b316cc945979a852b0eae7921244a24b89818acfb7c96572ed04d1f8 WHIRLPOOL fd4c6b03fb8b4344cc3833beb0310738af9826c56d2b0cf7c5262f3d2a99e83f700485dafe0e726e84a2dffcb1b907efcc860a685160ff22c99e40c8a2b659b0
+DIST bash43-006 1445 SHA256 a0648ee72d15e4a90c8b77a5c6b19f8d89e28c1bc881657d22fe26825f040213 SHA512 d1da3c9d3781482d87cdcbfd69ab3958ed4950f2a00e9d15228ecb4ad5ca8ae253eff378010b4908d04df2ecf658e08f7c2efc97d6a0b8dd2317552c1895d7b2 WHIRLPOOL 55e3c5e7be01f5928247a7677482dde1f0c89a0344ca23c947e9f84bf93d43ce1d7f621b39d74e09f0dd2de85ef304c5d34e68eb0af35cdf61c611e649dcbf68
+DIST bash43-007 1331 SHA256 1113e321c59cf6a8648a36245bbe4217cf8acf948d71e67886dad7d486f8f3a3 SHA512 c445b5cdd486d06991c78d4c88e2e44e49f74d1fc07b8e4bc9492cccfc4ff4045587bed6b24d745974c6339340e45b9756c27723fdb79e7591e7d6c5d350a86e WHIRLPOOL 0537006403347466536de5843d62725be75b6f5b4e6d9228c9f5671201de6a473ba04d8fcfa29894584b51f3ee35718bb46c2acc5c014713e03ee24828f10d43
+DIST bash43-008 4575 SHA256 9941a98a4987192cc5ce3d45afe879983cad2f0bec96d441a4edd9033767f95e SHA512 53bae88cd3341a4ef8c60d6a294c09402103d1b20f485cf85775e6730a3d2eec8e6ebe15aa6dd95336e4a1f540f21db394823b9d04b416e5af071a7a6c618900 WHIRLPOOL 94a3e9f004729490f70cb3a33de0605fc11f498b6bde2dc37bc08578283e47a3b625619de9d823b2796ce6fbd4982871fa2d428e94c892c863fc448ef2711482
+DIST bash43-009 2413 SHA256 c0226d6728946b2f53cdebf090bcd1c01627f01fee03295768605caa80bb40a5 SHA512 8d06fe612cd32cb414fdcdc34d4420b8991b268dd3ddd2dd47b3d01679954debd78e21f697a7f495d2340f0dcc8acdc3ad6809b8870bf5fd300afb1439788776 WHIRLPOOL 66e13efba99362a361e9e7d317773d51862f4c474f5c213654eba875a86b6d83b531b246bbd22c53e8a81fa7b67cb564c2de264ce28063967426fcf586ddda4d
+DIST bash43-010 5357 SHA256 ce05799c0137314c70c7b6ea0477c90e1ac1d52e113344be8e32fa5a55c9f0b7 SHA512 e36e550d749f52bab01256ed5f8f1b48fe53190c1a0a0a15c545328261c1f50b85f574b44188855858de1f2d045945770c4940bdecadd8381ea2cf174bde2fee WHIRLPOOL 830e7c82afd2650cbb00818928d22be0e0518aec2752736ff7a5085c5628bc8852c6c409f21684beec0c675d79898917efafb3f8dc1bc6bfcea41e1a8521d4fb
+DIST bash43-011 1533 SHA256 7c63402cdbc004a210f6c1c527b63b13d8bb9ec9c5a43d5c464a9010ff6f7f3b SHA512 678bbcd92b927c86631cd42d6d3ab7596a3ffd20b640f471a9783a7972f05d2d4fb15970c12e7645e90d407c5a2d2aadcad698113211724b0ef8d89eccd2cd66 WHIRLPOOL 1d0b84ff75d19db1bfbd60b37551978825902be2187b6407471a8810ebeb9136b2846e6c76505fec0c828a3e83ba8d4dd0950c5e6020b649da7ae530f7d5bf05
+DIST bash43-012 1365 SHA256 3e1379030b35fbcf314e9e7954538cf4b43be1507142b29efae39eef997b8c12 SHA512 169453248edb55baf761b0c9c7b296ed2c24543b80fcf4756b8dd398054b6317da285c5e9cd68828f2620b05874f21a08773844ee32416daef76b88d0ef3ee6d WHIRLPOOL 52b6c6d6c374b307ac562c1dfda730dc3ba322d3d6e9c7acb3f2a40461bb61ad5cb54dd65e2e4b72e492b55b436c323cae95ed63948df3b06bcd64a3487b3374
+DIST bash43-013 2151 SHA256 bfa8ca5336ab1f5ef988434a4bdedf71604aa8a3659636afa2ce7c7446c42c79 SHA512 536bbf0c9b23eb824579955e7fce892cfc1e1d9fbcfc66810353ac4ff238e9e57361c0a46b3f3573ca8ca563331070ce55442ffea38e2a632840b6a318db1c88 WHIRLPOOL 15fe2e97ac2a07a1d4c0f9946adc63e64b9141a3837391206fd5c934853f7e9ad9ede3baeecdd7a0dbb73e2bf007db8a5b57f0f8e2d03d693de09502dff32636
+DIST bash43-014 3533 SHA256 5a4d6fa2365b6eb725a9d4966248b5edf7630a4aeb3fa8d526b877972658ac13 SHA512 79fb50f62dbdca5e45a1359570e6d2173d442b3d4ddd4eb44809ed45ac022de4fe3f0aadd7672b4c8d9739405d51762486ee0c677b56f9c7d60e6224be84b87a WHIRLPOOL 10b6a2b7a7e5e6dfb3dd730b9ccc2ce3152bda1983a78745aa7367e9f5671695577d45070ad800158a36ffeb7db176e29f6b48d139075770ec773a478adfa1b2
+DIST bash43-015 1894 SHA256 13293e8a24e003a44d7fe928c6b1e07b444511bed2d9406407e006df28355e8d SHA512 38a7af22f13f1f45705ceadf3abb52be75f3239959c2b1d57f333d137f25f14ed92c4d209b35417d449b1ec4291bbd984bb5fd11ad40375b22d2668b33fb8efb WHIRLPOOL c06aa4977f891ec606f107157a0295d5025fbd24a620644547ee3f3a79582aae1ea4cd4be4254f92c6d2aee9322934839f01cc118148cea85af700e6f83c21cc
+DIST bash43-016 3674 SHA256 92d60bcf49f61bd7f1ccb9602bead6f2c9946d79dea0e5ec0589bb3bfa5e0773 SHA512 52ab2966ccd42554c8bd76041e07921388220b46c93c34190197cdda38a085fd499d71e2e0a10daea130e6782ada556f35b1a37d06d023e83c4c4d665d07cd3f WHIRLPOOL 9b7eb252291680d5db2596700774fddcab7e5c6c14ed5b1da7f8e23e1eaae85a927cf69d7662807b99c63fa083d2267f7e70076d4d4927a8bd4cb9273c416b4c
+DIST bash43-017 1565 SHA256 1267c25c6b5ba57042a7bb6c569a6de02ffd0d29530489a16666c3b8a23e7780 SHA512 88b11f324a780823b459b1e8a0904348c56079b4103cb86025d34dbba02543b0b7fbc2397bf043c24c1363f30539a6fe9b9f9fc717be9798f466071d1d420bb9 WHIRLPOOL 1aa1160771b98d393a2fb341e9025c2169aa43123f682bbe7648038e555b4f70eb1dbdba90492edb514c9621468f5005c2cf5fff82921e941ad3ca42534e7b1d
+DIST bash43-018 1315 SHA256 7aa8b40a9e973931719d8cc72284a8fb3292b71b522db57a5a79052f021a3d58 SHA512 f83d8e1d6d8fa8adf1715b8d4130730a13f5cd626f75e9e4b8c63244645a45a3f1fbac03081bb9d1e46864919d1b3189a9bb6d7a5e7a8854e6270ab3269c771f WHIRLPOOL 14a216257c3d1d3501dfc23d72ad8c085a216cdac83d5d909922d51b502ce83fb454c7e64a8d44e91a87a1a09237d965272fb563ae945c5d81688e9f0686264e
+DIST bash43-019 2610 SHA256 a7a91475228015d676cafa86d2d7aa9c5d2139aa51485b6bbdebfdfbcf0d2d23 SHA512 77e6dac3079d9282f6f85940a762b0da2473ac0d35e9bad2ebc2862bf0f3c4376a6220c746c1c37de0b4d492251ec9531a62c8a042a1be5e485f8f5ae6fa0704 WHIRLPOOL 5acde269ea62e2074ca5eb30750dbd67512b69658908f532165a90873f54de7705b0d41515ac6278e942f8ea66e0abe67c13b842e404a41cd7684ec0683928ef
+DIST bash43-020 2777 SHA256 ca5e86d87f178128641fe91f2f094875b8c1eb2de9e0d2e9154f5d5cc0336c98 SHA512 fa06563eb46609115750ffa88098b07c608cc8b13fc31356f33e1428a4da4d2610e122e0241356afcfadfecc5ccee5db4b7cf07f74005e7f30240ada4a81b5f7 WHIRLPOOL 9f05ce5028f20e7cbc11c1995d99a47274f782f228faa752919e0444afe1df748adb7837c0a3affa20633c63ad0175780327b9a02a39f5ada494736f0fd694dd
+DIST bash43-021 1623 SHA256 41439f06883e6bd11c591d9d5e9ae08afbc2abd4b935e1d244b08100076520a9 SHA512 90dc85302d9bc60e68fa8cce472b7e022d8a6ccee361f97aad4cbe5f1585b4870ab9997a3e6fac420aaf84c3dce9757716eb08f4fa6b38e14bac4f2d5d503731 WHIRLPOOL e7930992f6e2a1f5a07458eee74ed118fe93152ceb78fbdb41a4a3d799c5f9aa71fac52bc3cd43c321b983c5a4309e9884d37cac1facb54a2f38383527c8e765
+DIST bash43-022 1782 SHA256 fd4d47bb95c65863f634c4706c65e1e3bae4ee8460c72045c0a0618689061a88 SHA512 721b772349f9e0cc65975e419fabe4acdb23c77796a5d8fde01f110687ea1cb7d23fb706fc0452fb3c2082958a81c95b82f277e1f8f722b1156913efd59afc30 WHIRLPOOL 7387429460d85bffb9f7ce9cbd524f4b2c21b116beff30424db2cb66d48ec81707c7cb9479d5d72bcf36879248963a405dcdf87515fc0f5b6642568d9d236df2
+DIST bash43-023 3414 SHA256 9ac250c7397a8f53dbc84dfe790d2a418fbf1fe090bcece39b4a5c84a2d300d4 SHA512 d45b5f5dc4682c7260c8b6ef6faa99c929d2159cc34534931790f71f76e7324376e4a5d4a2a3bc21c16c25a8206554580943e7a3f672ec5a4af16cbccd216819 WHIRLPOOL 4cee4cdbe8525aff748a42a19d1d7cbc659cc8fe99b0bca3b2875ddfe5b8325f504cfdf09fb6edc70b1040f00eae3a4ab5fcda64cfa93ce96ce1e8d8c902b78f
+DIST bash43-024 1909 SHA256 3b505882a0a6090667d75824fc919524cd44cc3bd89dd08b7c4e622d3f960f6c SHA512 eada2b4839b81f28f63a874e08c72dfee9708c0982d2447347c17770a29c8fbb3d3f8c58c8a22b0d46a9d10abbd79dec11b5815257fb39af06420ef3602f8499 WHIRLPOOL 06059921dccb590aa7847ff5212bcb3e6a177aa96749eb19012d633ebf86badb83aad3b75ba8b304c620380d08395c0e37da4e2934a833ef1c0e1daf0f42ca72
+DIST bash43-025 3940 SHA256 1e5186f5c4a619bb134a1177d9e9de879f3bb85d9c5726832b03a762a2499251 SHA512 b4ea28ea0a24c8609d5c3a10114c5fec87ab978ec60700c36992d093e7afd976dbaee4a0d62c6e41e8ed6674c356fc26589f4c5168642dec8df8d727d7127822 WHIRLPOOL b3385e49dfbbf156bea9ebbd10f18dcb88c1d489c61c5bd6c16d1caac8a2ebf1ce057ec350d661ebd0307330a61f8c1088bef1cb133368919ccd0b5e81c3e7e3
+DIST bash43-026 1575 SHA256 2ecc12201b3ba4273b63af4e9aad2305168cf9babf6d11152796db08724c214d SHA512 d55620c86ab4835eaf53c18033a939e00ebbef7045d1429bd6fb212be6da167c368b4c03aec6c00ba60a1363b9cf8a4828e85c8108c5476b4a342e6c57f03897 WHIRLPOOL 3c21e3b21f1967d85b49386c05945859ee0fab2bbe0062052319876bbe3283bf3a7b50a9e160e36e9ee96fbe79ac13c90d86ffb4157ef0cb0641acd9dafb917e
+DIST bash43-027 6889 SHA256 1eb76ad28561d27f7403ff3c76a36e932928a4b58a01b868d663c165f076dabe SHA512 6941156db9a6ab35b2d6ddc63eec064e03da779e29f47e33b467711e3405c9adb58ad33be3ad3c77aea1e84a314d5404c8e1a8475408991f5f719b93c5a276b3 WHIRLPOOL 241a77807f142765fac71490987bd62a93bbd57c6ad2f83fbc645bf0618286fbfc3cd269eadf99e7f973a9e88ac08c5065868f8ad38727c17bb6056cedc83888
+DIST bash43-028 69606 SHA256 e8b0dbed4724fa7b9bd8ff77d12c7f03da0fbfc5f8251ef5cb8511eb082b469d SHA512 4317380539e3a93167f195eddd0acf0c75a5d86d5ef243cb7f7dca43e745badc3ebbc081b099678ac17dc03d9a3ed4a3ff3c6636bb1887e73e94b8ff9ced7c88 WHIRLPOOL f01e8fe2c09a7bdefacd7114cc8377f7ccd65de6c3bafac05595f1400f330ba0ba63ce97fe7b9b49957639c75438bb5ceb853890094cb0c4e43fadc1795b89b6
+DIST bash43-029 1824 SHA256 4cc4a397fe6bc63ecb97d030a4e44258ef2d4e076d0e90c77782968cc43d6292 SHA512 e25783c7557c1cda8344ba779d59f83e26b90b0aca393b5f7ee389e0583ccf81eba394589e992b33eb6c969083a8a4ff7fc8ce52059cab3b71289d085d381f07 WHIRLPOOL 857275184a8a449461b5aebba12d8231e1e33a2119693fa2c865ead18d4c462dea8151cfc3e0d121c2e5569d9984856ba69820aaa54399ddc77bb849ea9de890
+DIST bash43-030 63206 SHA256 85434f8a2f379d0c49a3ff6d9ffa12c8b157188dd739e556d638217d2a58385b SHA512 ae41a9a5326ceb8e7105e359be097e14876160f6357bfa7c5cd3c4a495a629be762c3db671754c2cffc6abb34998aad91dde4a449ba16a0c6da844bac53feca4 WHIRLPOOL 2184fa715fb90de89f18ba2b27dca612b684a85e9228d58ccf2d62a96a2e575929b3e1a47fbb5809e4c231a6657084be4a076271cfdd5b8b7dde493f2cb40a01
+DIST bash43-031 3689 SHA256 cd529f59dd0f2fdd49d619fe34691da6f0affedf87cc37cd460a9f3fe812a61d SHA512 3178b4ab48860ed284bb64ac9b36b6d4d1681c0d4bc37ceeb93e73c9dd140bd0a71e86a86ae595aab43babedae79d75a4b11c57e6ad6800f43ab5f7647f6c4c9 WHIRLPOOL 1e21f10a8ade1317e6672fc76e7b0e988d7c02feed3b1e553c60e4717df0b6036ce0822e9f9bf603abaf5b9b248ffa63421601a7f5c2dfcc9c60a98fe77b23dc
+DIST bash43-032 1734 SHA256 889357d29a6005b2c3308ca5b6286cb223b5e9c083219e5db3156282dd554f4a SHA512 47afc6308bd4bed20661a87761330854508a745a1c2a7f2d661fbe0d95b00d2d5707cc04f510fcd027b3fdb065d9414697715bff33c707a56955e27341d1bfd0 WHIRLPOOL 4b7ef4ac84269a292fa4527d2796508f4da16f9579726d90664305bbd3c2a3fa9002db6c0d60b022a54e756590a196f5dfcb86492a6d776476189546edb488c7
+DIST bash43-033 7038 SHA256 fb2a7787a13fbe027a7335aca6eb3c21cdbd813e9edc221274b6a9d8692eaa16 SHA512 3eed328960d77317e1742a9b53ccf40b304657cd535d7f283bdc24219c65ebdcb7aca3019fc8fd9e7152f42dc411625acb1b529f80e4a6c5b750b8f7cbd2e4d0 WHIRLPOOL bdfa9cd681ff499daa14b2c28e294b929f4c8526f11d555046158f035cc2c7a9c48f49aa0837c3ea80cdbc6d960119f40260da4a664944d7e599e40d6227254e
+DIST bash43-034 2392 SHA256 f1694f04f110defe1330a851cc2768e7e57ddd2dfdb0e3e350ca0e3c214ff889 SHA512 95d09b843287dc18845b75ac6657a2bd7bd71c31a62f922e7177368678ddf13c0f20498bc17bdf4cd5c1c34d40838174791d1e464ceca168957c68e789e34d06 WHIRLPOOL b9919bf7aabb11e6cc4dd17dd9433775320bc025a22e23b40edbc649e54dfae3e86a3670e30af4863ff8612ade43c91906d15acdb652ac2c37f84f731fba3279
+DIST bash43-035 1800 SHA256 370d85e51780036f2386dc18c5efe996eba8e652fc1973f0f4f2ab55a993c1e3 SHA512 1ea68e7ffb15356fdcf5eed08dd7fe0e16aea2928a4510fcfafe79e926d7ac25f013641bf547bfff0401bbb7e1476a802208e4f1ccb8b02ed20c094f99e450d2 WHIRLPOOL a5818ea98353c191210e8d66af0ea998c0b831e6af73035112405c228e18afc8ff243bdc2f3263728fc1d8aa2e7be43ae559cb02662b277478081e127b4fc37a
+DIST bash43-036 1539 SHA256 ac5f82445b36efdb543dbfae64afed63f586d7574b833e9aa9cd5170bc5fd27c SHA512 089a05879b8b65c9f11c55127364a3281b651e71cbedfad6221e31dc88eca15d813986f999a22921726873db9590b7b50afcd6162027fe516c2a94e8734e3ee7 WHIRLPOOL 3468783b0c10ae74c548e0d0cca3694c21775e6ea83ea1a071ae27b24542b67ffc785e17d6bc849c8030c667c7f531ba1a2de8e808f7820b19e88576e12e098c
+DIST bash43-037 1284 SHA256 33f170dd7400ab3418d749c55c6391b1d161ef2de7aced1873451b3a3fca5813 SHA512 7977c0fb9142cdea259b06322092aab3231b9773cc397519bedb6f731aea02a46441c67615b31fd19c886678eb1985687d07357d15fc7f08e946404efc564966 WHIRLPOOL fc3e010f065aa3087ac4e22352459dc2cdd5a232653749250dfebf17023a405ed78e0b2dd8ad66727aaa2645173dc14be111e32e8fb71a13786f4fe6ac6875ac
+DIST bash43-038 2354 SHA256 adbeaa500ca7a82535f0e88d673661963f8a5fcdc7ad63445e68bf5b49786367 SHA512 2ef2557b17867b5820a9e5619daa1cddb3fadcff7470504c148828a3007217767da4bf540dc835cf263f9c943b2c1aa909c845f8410f69e2d04c8b3d659efee3 WHIRLPOOL 66a2878b850cce96e532625cdcd88d0402c775dc585419c946ddebb206fbf8bee91846cbdce7a88b9caef09e1b02c144e3e71734c918c1b2c09cec67c68fa8d0
+DIST bash43-039 1531 SHA256 ab94dced2215541097691f60c3eb323cc28ef2549463e6a5334bbcc1e61e74ec SHA512 f9745a05bfbbe39f8e5af3865de3a32391d7ff291289977e23340c79a3783b4fad15bdcf8ce62478916b43fe18501c4d7c65cd54d3c20e8bb889919df48a9a19 WHIRLPOOL 3ee69bc81a25afe4998f76d43c9c2f4f6aca61f545a7304156fceda0f8a99c86379b673967bc7f72c26f5bde01248f77d7aee6372164c2e3b94c7781c7f6bd08
diff --git a/app-shells/bash/bash-2.05b_p13.ebuild b/app-shells/bash/bash-2.05b_p13.ebuild
new file mode 100644
index 00000000000..7e69f0f1e75
--- /dev/null
+++ b/app-shells/bash/bash-2.05b_p13.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+# Official patchlevel
+# See ftp://ftp.cwru.edu/pub/bash/bash-2.05b-patches/
+PLEVEL=${PV##*_p}
+MY_PV=${PV/_p*}
+MY_PV=${MY_PV/_/-}
+MY_P=${PN}-${MY_PV}
+[[ ${PV} != *_p* ]] && PLEVEL=0
+patches() {
+ local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
+ [[ ${plevel} -eq 0 ]] && return 1
+ eval set -- {1..${plevel}}
+ set -- $(printf "${pn}${pv/\.}-%03d " "$@")
+ if [[ ${opt} == -s ]] ; then
+ echo "${@/#/${DISTDIR}/}"
+ else
+ local u
+ for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
+ printf "${u}/${pn}-${pv}-patches/%s " "$@"
+ done
+ fi
+}
+
+DESCRIPTION="The standard GNU Bourne again shell"
+HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html"
+SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"
+
+LICENSE="GPL-2"
+SLOT="${MY_PV}"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd"
+IUSE="afs +net nls +readline"
+
+DEPEND=">=sys-libs/ncurses-5.2-r2
+ readline? ( >=sys-libs/readline-6.2 )
+ nls? ( virtual/libintl )"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ if is-flag -malign-double ; then #7332
+ eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
+ eerror "as it breaks LFS (struct stat64) on x86."
+ die "remove -malign-double from your CFLAGS mr ricer"
+ fi
+}
+
+src_unpack() {
+ unpack ${MY_P}.tar.gz
+}
+
+src_prepare() {
+ # Include official patches
+ [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
+
+ # Clean out local libs so we know we use system ones
+ rm -rf lib/{readline,termcap}/*
+ touch lib/{readline,termcap}/Makefile.in # for config.status
+ sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in || die
+
+ epatch "${FILESDIR}"/${PN}-2.05b-destdir.patch
+ epatch "${FILESDIR}"/autoconf-mktime-2.53.patch #220040
+ epatch "${FILESDIR}"/${PN}-2.05b-protos.patch
+ epatch "${FILESDIR}"/${PN}-2.05b-empty-herestring.patch
+ epatch "${FILESDIR}"/${PN}-2.05b-rbash.patch #26854
+ epatch "${FILESDIR}"/${PN}-2.05b-parallel-build.patch #41002
+ epatch "${FILESDIR}"/${PN}-2.05b-jobs.patch
+ epatch "${FILESDIR}"/${PN}-2.05b-fix-job-warning.patch
+
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ # Force pgrp synchronization
+ # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=81653
+ export bash_cv_pgrp_pipe=yes
+
+ # For descriptions of these, see config-top.h
+ # bashrc/#26952 bash_logout/#90488 ssh/#24762
+ append-cppflags \
+ -DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\' \
+ -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
+ -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
+ -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
+ -DNON_INTERACTIVE_LOGIN_SHELLS \
+ -DSSH_SOURCE_BASHRC
+
+ # Don't even think about building this statically without
+ # reading Bug 7714 first. If you still build it statically,
+ # don't come crying to us with bugs ;).
+ #use static && export LDFLAGS="${LDFLAGS} -static"
+ use nls || myconf+=( --disable-nls )
+
+ # Historically, we always used the builtin readline, but since
+ # our handling of SONAME upgrades has gotten much more stable
+ # in the PM (and the readline ebuild itself preserves the old
+ # libs during upgrades), linking against the system copy should
+ # be safe.
+ # Exact cached version here doesn't really matter as long as it
+ # is at least what's in the DEPEND up above.
+ export ac_cv_rl_version=6.2
+
+ # Force linking with system curses ... the bundled termcap lib
+ # sucks bad compared to ncurses. For the most part, ncurses
+ # is here because readline needs it. But bash itself calls
+ # ncurses in one or two small places :(.
+
+ tc-export AR #444070
+ # This old autoconf script does not re-exec itself properly and fails when
+ # /bin/sh is not bash. Rather than try to regen everything, just force the
+ # use of bash directly.
+ CONFIG_SHELL="/bin/bash" \
+ econf \
+ --with-installed-readline=. \
+ --with-curses \
+ $(use_with afs) \
+ $(use_enable net net-redirections) \
+ --disable-profiling \
+ --without-gnu-malloc \
+ $(use_enable readline) \
+ $(use_enable readline history) \
+ $(use_enable readline bang-history) \
+ "${myconf[@]}"
+}
+
+src_install() {
+ into /
+ newbin bash bash-${SLOT}
+
+ newman doc/bash.1 bash-${SLOT}.1
+ newman doc/builtins.1 builtins-${SLOT}.1
+
+ insinto /usr/share/info
+ newins doc/bashref.info bash-${SLOT}.info
+ dosym bash-${SLOT}.info /usr/share/info/bashref-${SLOT}.info
+
+ dodoc README NEWS AUTHORS CHANGES COMPAT Y2K doc/FAQ doc/INTRO
+}
diff --git a/app-shells/bash/bash-3.0_p22.ebuild b/app-shells/bash/bash-3.0_p22.ebuild
new file mode 100644
index 00000000000..b8d8fe7284c
--- /dev/null
+++ b/app-shells/bash/bash-3.0_p22.ebuild
@@ -0,0 +1,151 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+# Official patchlevel
+# See ftp://ftp.cwru.edu/pub/bash/bash-3.0-patches/
+PLEVEL=${PV##*_p}
+MY_PV=${PV/_p*}
+MY_PV=${MY_PV/_/-}
+MY_P=${PN}-${MY_PV}
+[[ ${PV} != *_p* ]] && PLEVEL=0
+patches() {
+ local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
+ [[ ${plevel} -eq 0 ]] && return 1
+ eval set -- {1..${plevel}}
+ set -- $(printf "${pn}${pv/\.}-%03d " "$@")
+ if [[ ${opt} == -s ]] ; then
+ echo "${@/#/${DISTDIR}/}"
+ else
+ local u
+ for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
+ printf "${u}/${pn}-${pv}-patches/%s " "$@"
+ done
+ fi
+}
+
+DESCRIPTION="The standard GNU Bourne again shell"
+HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html"
+SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"
+
+LICENSE="GPL-2"
+SLOT="${MY_PV}"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd"
+IUSE="afs +net nls +readline"
+
+DEPEND=">=sys-libs/ncurses-5.2-r2
+ readline? ( >=sys-libs/readline-6.2 )
+ nls? ( virtual/libintl )"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ if is-flag -malign-double ; then #7332
+ eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
+ eerror "as it breaks LFS (struct stat64) on x86."
+ die "remove -malign-double from your CFLAGS mr ricer"
+ fi
+}
+
+src_unpack() {
+ unpack ${MY_P}.tar.gz
+}
+
+src_prepare() {
+ # Include official patches
+ [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
+
+ # Clean out local libs so we know we use system ones
+ rm -rf lib/{readline,termcap}/*
+ touch lib/{readline,termcap}/Makefile.in # for config.status
+ sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in || die
+
+ epatch "${FILESDIR}"/autoconf-mktime-2.53.patch #220040
+ epatch "${FILESDIR}"/${PN}-3.0-protos.patch
+ epatch "${FILESDIR}"/${PN}-3.0-rbash.patch #26854
+ epatch "${FILESDIR}"/${PN}-2.05b-parallel-build.patch #41002
+ epatch "${FILESDIR}"/${PN}-3.0-darwin-conn.patch #79124
+ # read patch headers for more info ... many ripped from Fedora/Debian[17]/SuSe/upstream
+ for i in afs crash jobs manpage pwd ulimit histtimeformat \
+ locale multibyteifs subshell \
+ volatile-command
+ do
+ epatch "${FILESDIR}"/${PN}-3.0-${i}.patch
+ done
+ epatch "${FILESDIR}"/${PN}-3.0-read-builtin-pipe.patch #87093
+ epatch "${FILESDIR}"/${PN}-3.0-trap-fg-signals.patch
+ epatch "${FILESDIR}"/${PN}-3.0-pgrp-pipe-fix.patch #92349
+ epatch "${FILESDIR}"/${PN}-3.0-strnlen.patch
+
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ # Force pgrp synchronization
+ # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=81653
+ export bash_cv_pgrp_pipe=yes
+
+ # For descriptions of these, see config-top.h
+ # bashrc/#26952 bash_logout/#90488 ssh/#24762
+ append-cppflags \
+ -DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\' \
+ -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
+ -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
+ -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
+ -DNON_INTERACTIVE_LOGIN_SHELLS \
+ -DSSH_SOURCE_BASHRC
+
+ # Don't even think about building this statically without
+ # reading Bug 7714 first. If you still build it statically,
+ # don't come crying to us with bugs ;).
+ #use static && export LDFLAGS="${LDFLAGS} -static"
+ use nls || myconf+=( --disable-nls )
+
+ # Historically, we always used the builtin readline, but since
+ # our handling of SONAME upgrades has gotten much more stable
+ # in the PM (and the readline ebuild itself preserves the old
+ # libs during upgrades), linking against the system copy should
+ # be safe.
+ # Exact cached version here doesn't really matter as long as it
+ # is at least what's in the DEPEND up above.
+ export ac_cv_rl_version=6.2
+
+ # Force linking with system curses ... the bundled termcap lib
+ # sucks bad compared to ncurses. For the most part, ncurses
+ # is here because readline needs it. But bash itself calls
+ # ncurses in one or two small places :(.
+
+ tc-export AR #444070
+ econf \
+ --with-installed-readline=. \
+ --with-curses \
+ $(use_with afs) \
+ $(use_enable net net-redirections) \
+ --disable-profiling \
+ --without-gnu-malloc \
+ $(use_enable readline) \
+ $(use_enable readline history) \
+ $(use_enable readline bang-history) \
+ "${myconf[@]}"
+}
+
+src_install() {
+ into /
+ newbin bash bash-${SLOT}
+
+ newman doc/bash.1 bash-${SLOT}.1
+ newman doc/builtins.1 builtins-${SLOT}.1
+
+ insinto /usr/share/info
+ newins doc/bashref.info bash-${SLOT}.info
+ dosym bash-${SLOT}.info /usr/share/info/bashref-${SLOT}.info
+
+ dodoc README NEWS AUTHORS CHANGES COMPAT Y2K doc/FAQ doc/INTRO
+}
diff --git a/app-shells/bash/bash-3.1_p23.ebuild b/app-shells/bash/bash-3.1_p23.ebuild
new file mode 100644
index 00000000000..95ef23b64f9
--- /dev/null
+++ b/app-shells/bash/bash-3.1_p23.ebuild
@@ -0,0 +1,143 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+# Official patchlevel
+# See ftp://ftp.cwru.edu/pub/bash/bash-3.1-patches/
+PLEVEL=${PV##*_p}
+MY_PV=${PV/_p*}
+MY_PV=${MY_PV/_/-}
+MY_P=${PN}-${MY_PV}
+[[ ${PV} != *_p* ]] && PLEVEL=0
+patches() {
+ local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
+ [[ ${plevel} -eq 0 ]] && return 1
+ eval set -- {1..${plevel}}
+ set -- $(printf "${pn}${pv/\.}-%03d " "$@")
+ if [[ ${opt} == -s ]] ; then
+ echo "${@/#/${DISTDIR}/}"
+ else
+ local u
+ for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
+ printf "${u}/${pn}-${pv}-patches/%s " "$@"
+ done
+ fi
+}
+
+DESCRIPTION="The standard GNU Bourne again shell"
+HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html"
+SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"
+
+LICENSE="GPL-2"
+SLOT="${MY_PV}"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd"
+IUSE="afs +net nls +readline"
+
+DEPEND=">=sys-libs/ncurses-5.2-r2
+ readline? ( >=sys-libs/readline-6.2 )
+ nls? ( virtual/libintl )"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ if is-flag -malign-double ; then #7332
+ eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
+ eerror "as it breaks LFS (struct stat64) on x86."
+ die "remove -malign-double from your CFLAGS mr ricer"
+ fi
+}
+
+src_unpack() {
+ unpack ${MY_P}.tar.gz
+}
+
+src_prepare() {
+ # Include official patches
+ [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
+
+ # Clean out local libs so we know we use system ones
+ rm -rf lib/{readline,termcap}/*
+ touch lib/{readline,termcap}/Makefile.in # for config.status
+ sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in || die
+
+ epatch "${FILESDIR}"/autoconf-mktime-2.53.patch #220040
+ epatch "${FILESDIR}"/${PN}-2.05b-parallel-build.patch #41002
+ epatch "${FILESDIR}"/${PN}-3.1-protos.patch
+ epatch "${FILESDIR}"/${PN}-3.1-ulimit.patch
+ epatch "${FILESDIR}"/${PN}-3.0-read-memleak.patch
+ epatch "${FILESDIR}"/${PN}-3.0-trap-fg-signals.patch
+ epatch "${FILESDIR}"/${PN}-3.1-fix-dash-login-shell.patch #118257
+ epatch "${FILESDIR}"/${PN}-3.1-dev-fd-test-as-user.patch #131875
+
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ # Force pgrp synchronization
+ # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=81653
+ export bash_cv_pgrp_pipe=yes
+
+ # For descriptions of these, see config-top.h
+ # bashrc/#26952 bash_logout/#90488 ssh/#24762
+ append-cppflags \
+ -DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\' \
+ -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
+ -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
+ -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
+ -DNON_INTERACTIVE_LOGIN_SHELLS \
+ -DSSH_SOURCE_BASHRC
+
+ # Don't even think about building this statically without
+ # reading Bug 7714 first. If you still build it statically,
+ # don't come crying to us with bugs ;).
+ #use static && export LDFLAGS="${LDFLAGS} -static"
+ use nls || myconf+=( --disable-nls )
+
+ # Historically, we always used the builtin readline, but since
+ # our handling of SONAME upgrades has gotten much more stable
+ # in the PM (and the readline ebuild itself preserves the old
+ # libs during upgrades), linking against the system copy should
+ # be safe.
+ # Exact cached version here doesn't really matter as long as it
+ # is at least what's in the DEPEND up above.
+ export ac_cv_rl_version=6.2
+
+ # Force linking with system curses ... the bundled termcap lib
+ # sucks bad compared to ncurses. For the most part, ncurses
+ # is here because readline needs it. But bash itself calls
+ # ncurses in one or two small places :(.
+
+ tc-export AR #444070
+ econf \
+ --with-installed-readline=. \
+ --with-curses \
+ $(use_with afs) \
+ $(use_enable net net-redirections) \
+ --disable-profiling \
+ --without-gnu-malloc \
+ $(use_enable readline) \
+ $(use_enable readline history) \
+ $(use_enable readline bang-history) \
+ "${myconf[@]}"
+}
+
+src_install() {
+ into /
+ newbin bash bash-${SLOT}
+
+ newman doc/bash.1 bash-${SLOT}.1
+ newman doc/builtins.1 builtins-${SLOT}.1
+
+ insinto /usr/share/info
+ newins doc/bashref.info bash-${SLOT}.info
+ dosym bash-${SLOT}.info /usr/share/info/bashref-${SLOT}.info
+
+ dodoc README NEWS AUTHORS CHANGES COMPAT Y2K doc/FAQ doc/INTRO
+}
diff --git a/app-shells/bash/bash-3.2_p57.ebuild b/app-shells/bash/bash-3.2_p57.ebuild
new file mode 100644
index 00000000000..1d373c7d321
--- /dev/null
+++ b/app-shells/bash/bash-3.2_p57.ebuild
@@ -0,0 +1,145 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+# Official patchlevel
+# See ftp://ftp.cwru.edu/pub/bash/bash-3.2-patches/
+PLEVEL=${PV##*_p}
+MY_PV=${PV/_p*}
+MY_PV=${MY_PV/_/-}
+MY_P=${PN}-${MY_PV}
+[[ ${PV} != *_p* ]] && PLEVEL=0
+patches() {
+ local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
+ [[ ${plevel} -eq 0 ]] && return 1
+ eval set -- {1..${plevel}}
+ set -- $(printf "${pn}${pv/\.}-%03d " "$@")
+ if [[ ${opt} == -s ]] ; then
+ echo "${@/#/${DISTDIR}/}"
+ else
+ local u
+ for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
+ printf "${u}/${pn}-${pv}-patches/%s " "$@"
+ done
+ fi
+}
+
+DESCRIPTION="The standard GNU Bourne again shell"
+HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html"
+SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"
+
+LICENSE="GPL-2"
+SLOT="${MY_PV}"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd"
+IUSE="afs +net nls +readline"
+
+DEPEND=">=sys-libs/ncurses-5.2-r2
+ readline? ( >=sys-libs/readline-6.2 )
+ nls? ( virtual/libintl )"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ if is-flag -malign-double ; then #7332
+ eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
+ eerror "as it breaks LFS (struct stat64) on x86."
+ die "remove -malign-double from your CFLAGS mr ricer"
+ fi
+}
+
+src_unpack() {
+ unpack ${MY_P}.tar.gz
+}
+
+src_prepare() {
+ # Include official patches
+ [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
+
+ # Clean out local libs so we know we use system ones
+ rm -rf lib/{readline,termcap}/*
+ touch lib/{readline,termcap}/Makefile.in # for config.status
+ sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in || die
+
+ epatch "${FILESDIR}"/autoconf-mktime-2.59.patch #220040
+ epatch "${FILESDIR}"/${PN}-3.2-loadables.patch
+ epatch "${FILESDIR}"/${PN}-2.05b-parallel-build.patch #41002
+ epatch "${FILESDIR}"/${PN}-3.2-protos.patch
+ epatch "${FILESDIR}"/${PN}-3.2-session-leader.patch #231775
+ epatch "${FILESDIR}"/${PN}-3.2-ldflags-for-build.patch #211947
+ epatch "${FILESDIR}"/${PN}-3.2-process-subst.patch
+ epatch "${FILESDIR}"/${PN}-3.2-ulimit.patch
+ epatch "${FILESDIR}"/${PN}-3.0-trap-fg-signals.patch
+ epatch "${FILESDIR}"/${PN}-3.2-dev-fd-test-as-user.patch #131875
+
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ # Force pgrp synchronization
+ # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=81653
+ export bash_cv_pgrp_pipe=yes
+
+ # For descriptions of these, see config-top.h
+ # bashrc/#26952 bash_logout/#90488 ssh/#24762
+ append-cppflags \
+ -DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\' \
+ -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
+ -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
+ -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
+ -DNON_INTERACTIVE_LOGIN_SHELLS \
+ -DSSH_SOURCE_BASHRC
+
+ # Don't even think about building this statically without
+ # reading Bug 7714 first. If you still build it statically,
+ # don't come crying to us with bugs ;).
+ #use static && export LDFLAGS="${LDFLAGS} -static"
+ use nls || myconf+=( --disable-nls )
+
+ # Historically, we always used the builtin readline, but since
+ # our handling of SONAME upgrades has gotten much more stable
+ # in the PM (and the readline ebuild itself preserves the old
+ # libs during upgrades), linking against the system copy should
+ # be safe.
+ # Exact cached version here doesn't really matter as long as it
+ # is at least what's in the DEPEND up above.
+ export ac_cv_rl_version=6.2
+
+ # Force linking with system curses ... the bundled termcap lib
+ # sucks bad compared to ncurses. For the most part, ncurses
+ # is here because readline needs it. But bash itself calls
+ # ncurses in one or two small places :(.
+
+ tc-export AR #444070
+ econf \
+ --with-installed-readline=. \
+ --with-curses \
+ $(use_with afs) \
+ $(use_enable net net-redirections) \
+ --disable-profiling \
+ --without-gnu-malloc \
+ $(use_enable readline) \
+ $(use_enable readline history) \
+ $(use_enable readline bang-history) \
+ "${myconf[@]}"
+}
+
+src_install() {
+ into /
+ newbin bash bash-${SLOT}
+
+ newman doc/bash.1 bash-${SLOT}.1
+ newman doc/builtins.1 builtins-${SLOT}.1
+
+ insinto /usr/share/info
+ newins doc/bashref.info bash-${SLOT}.info
+ dosym bash-${SLOT}.info /usr/share/info/bashref-${SLOT}.info
+
+ dodoc README NEWS AUTHORS CHANGES COMPAT Y2K doc/FAQ doc/INTRO
+}
diff --git a/app-shells/bash/bash-4.0_p44.ebuild b/app-shells/bash/bash-4.0_p44.ebuild
new file mode 100644
index 00000000000..543ea45b612
--- /dev/null
+++ b/app-shells/bash/bash-4.0_p44.ebuild
@@ -0,0 +1,140 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+# Official patchlevel
+# See ftp://ftp.cwru.edu/pub/bash/bash-4.0-patches/
+PLEVEL=${PV##*_p}
+MY_PV=${PV/_p*}
+MY_PV=${MY_PV/_/-}
+MY_P=${PN}-${MY_PV}
+[[ ${PV} != *_p* ]] && PLEVEL=0
+patches() {
+ local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
+ [[ ${plevel} -eq 0 ]] && return 1
+ eval set -- {1..${plevel}}
+ set -- $(printf "${pn}${pv/\.}-%03d " "$@")
+ if [[ ${opt} == -s ]] ; then
+ echo "${@/#/${DISTDIR}/}"
+ else
+ local u
+ for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
+ printf "${u}/${pn}-${pv}-patches/%s " "$@"
+ done
+ fi
+}
+
+DESCRIPTION="The standard GNU Bourne again shell"
+HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html"
+SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"
+
+LICENSE="GPL-3"
+SLOT="${MY_PV}"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd"
+IUSE="afs mem-scramble +net nls +readline"
+
+DEPEND=">=sys-libs/ncurses-5.2-r2
+ readline? ( >=sys-libs/readline-6.2 )
+ nls? ( virtual/libintl )"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ if is-flag -malign-double ; then #7332
+ eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
+ eerror "as it breaks LFS (struct stat64) on x86."
+ die "remove -malign-double from your CFLAGS mr ricer"
+ fi
+}
+
+src_unpack() {
+ unpack ${MY_P}.tar.gz
+}
+
+src_prepare() {
+ # Include official patches
+ [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
+
+ # Clean out local libs so we know we use system ones
+ rm -rf lib/{readline,termcap}/*
+ touch lib/{readline,termcap}/Makefile.in # for config.status
+ sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in || die
+
+ epatch "${FILESDIR}"/${PN}-4.0-configure.patch #304901
+ epatch "${FILESDIR}"/${PN}-4.x-deferred-heredocs.patch
+ sed -i '1i#define NEED_FPURGE_DECL' execute_cmd.c # needs fpurge() decl
+ epatch "${FILESDIR}"/${PN}-2.05b-parallel-build.patch #41002
+ epatch "${FILESDIR}"/${PN}-4.0-ldflags-for-build.patch #211947
+ epatch "${FILESDIR}"/${PN}-4.0-negative-return.patch
+ epatch "${FILESDIR}"/${PN}-4.0-parallel-build.patch #267613
+ sed -i '/\.o: .*shell\.h/s:$: pathnames.h:' Makefile.in #267613
+
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ # For descriptions of these, see config-top.h
+ # bashrc/#26952 bash_logout/#90488 ssh/#24762
+ append-cppflags \
+ -DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\' \
+ -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
+ -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
+ -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
+ -DNON_INTERACTIVE_LOGIN_SHELLS \
+ -DSSH_SOURCE_BASHRC
+
+ # Don't even think about building this statically without
+ # reading Bug 7714 first. If you still build it statically,
+ # don't come crying to us with bugs ;).
+ #use static && export LDFLAGS="${LDFLAGS} -static"
+ use nls || myconf+=( --disable-nls )
+
+ # Historically, we always used the builtin readline, but since
+ # our handling of SONAME upgrades has gotten much more stable
+ # in the PM (and the readline ebuild itself preserves the old
+ # libs during upgrades), linking against the system copy should
+ # be safe.
+ # Exact cached version here doesn't really matter as long as it
+ # is at least what's in the DEPEND up above.
+ export ac_cv_rl_version=6.2
+
+ # Force linking with system curses ... the bundled termcap lib
+ # sucks bad compared to ncurses. For the most part, ncurses
+ # is here because readline needs it. But bash itself calls
+ # ncurses in one or two small places :(.
+
+ tc-export AR #444070
+ econf \
+ --with-installed-readline=. \
+ --with-curses \
+ $(use_with afs) \
+ $(use_enable net net-redirections) \
+ --disable-profiling \
+ $(use_enable mem-scramble) \
+ $(use_with mem-scramble bash-malloc) \
+ $(use_enable readline) \
+ $(use_enable readline history) \
+ $(use_enable readline bang-history) \
+ "${myconf[@]}"
+}
+
+src_install() {
+ into /
+ newbin bash bash-${SLOT}
+
+ newman doc/bash.1 bash-${SLOT}.1
+ newman doc/builtins.1 builtins-${SLOT}.1
+
+ insinto /usr/share/info
+ newins doc/bashref.info bash-${SLOT}.info
+ dosym bash-${SLOT}.info /usr/share/info/bashref-${SLOT}.info
+
+ dodoc README NEWS AUTHORS CHANGES COMPAT Y2K doc/FAQ doc/INTRO
+}
diff --git a/app-shells/bash/bash-4.1_p17.ebuild b/app-shells/bash/bash-4.1_p17.ebuild
new file mode 100644
index 00000000000..3bc12cbf36a
--- /dev/null
+++ b/app-shells/bash/bash-4.1_p17.ebuild
@@ -0,0 +1,137 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+# Official patchlevel
+# See ftp://ftp.cwru.edu/pub/bash/bash-4.1-patches/
+PLEVEL=${PV##*_p}
+MY_PV=${PV/_p*}
+MY_PV=${MY_PV/_/-}
+MY_P=${PN}-${MY_PV}
+[[ ${PV} != *_p* ]] && PLEVEL=0
+patches() {
+ local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
+ [[ ${plevel} -eq 0 ]] && return 1
+ eval set -- {1..${plevel}}
+ set -- $(printf "${pn}${pv/\.}-%03d " "$@")
+ if [[ ${opt} == -s ]] ; then
+ echo "${@/#/${DISTDIR}/}"
+ else
+ local u
+ for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
+ printf "${u}/${pn}-${pv}-patches/%s " "$@"
+ done
+ fi
+}
+
+DESCRIPTION="The standard GNU Bourne again shell"
+HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html"
+SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"
+
+LICENSE="GPL-3"
+SLOT="${MY_PV}"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd"
+IUSE="afs mem-scramble +net nls +readline"
+
+DEPEND=">=sys-libs/ncurses-5.2-r2
+ readline? ( >=sys-libs/readline-6.2 )
+ nls? ( virtual/libintl )"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ if is-flag -malign-double ; then #7332
+ eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
+ eerror "as it breaks LFS (struct stat64) on x86."
+ die "remove -malign-double from your CFLAGS mr ricer"
+ fi
+}
+
+src_unpack() {
+ unpack ${MY_P}.tar.gz
+}
+
+src_prepare() {
+ # Include official patches
+ [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
+
+ # Clean out local libs so we know we use system ones
+ rm -rf lib/{readline,termcap}/*
+ touch lib/{readline,termcap}/Makefile.in # for config.status
+ sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in || die
+
+ epatch "${FILESDIR}"/${PN}-4.1-fbsd-eaccess.patch #303411
+ sed -i '1i#define NEED_FPURGE_DECL' execute_cmd.c # needs fpurge() decl
+ epatch "${FILESDIR}"/${PN}-4.1-parallel-build.patch
+
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ myconf+=( --without-lispdir ) #335896
+
+ # For descriptions of these, see config-top.h
+ # bashrc/#26952 bash_logout/#90488 ssh/#24762
+ append-cppflags \
+ -DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\' \
+ -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
+ -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
+ -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
+ -DNON_INTERACTIVE_LOGIN_SHELLS \
+ -DSSH_SOURCE_BASHRC
+
+ # Don't even think about building this statically without
+ # reading Bug 7714 first. If you still build it statically,
+ # don't come crying to us with bugs ;).
+ #use static && export LDFLAGS="${LDFLAGS} -static"
+ use nls || myconf+=( --disable-nls )
+
+ # Historically, we always used the builtin readline, but since
+ # our handling of SONAME upgrades has gotten much more stable
+ # in the PM (and the readline ebuild itself preserves the old
+ # libs during upgrades), linking against the system copy should
+ # be safe.
+ # Exact cached version here doesn't really matter as long as it
+ # is at least what's in the DEPEND up above.
+ export ac_cv_rl_version=6.2
+
+ # Force linking with system curses ... the bundled termcap lib
+ # sucks bad compared to ncurses. For the most part, ncurses
+ # is here because readline needs it. But bash itself calls
+ # ncurses in one or two small places :(.
+
+ tc-export AR #444070
+ econf \
+ --with-installed-readline=. \
+ --with-curses \
+ $(use_with afs) \
+ $(use_enable net net-redirections) \
+ --disable-profiling \
+ $(use_enable mem-scramble) \
+ $(use_with mem-scramble bash-malloc) \
+ $(use_enable readline) \
+ $(use_enable readline history) \
+ $(use_enable readline bang-history) \
+ "${myconf[@]}"
+}
+
+src_install() {
+ into /
+ newbin bash bash-${SLOT}
+
+ newman doc/bash.1 bash-${SLOT}.1
+ newman doc/builtins.1 builtins-${SLOT}.1
+
+ insinto /usr/share/info
+ newins doc/bashref.info bash-${SLOT}.info
+ dosym bash-${SLOT}.info /usr/share/info/bashref-${SLOT}.info
+
+ dodoc README NEWS AUTHORS CHANGES COMPAT Y2K doc/FAQ doc/INTRO
+}
diff --git a/app-shells/bash/bash-4.2_p53.ebuild b/app-shells/bash/bash-4.2_p53.ebuild
new file mode 100644
index 00000000000..11abc797f17
--- /dev/null
+++ b/app-shells/bash/bash-4.2_p53.ebuild
@@ -0,0 +1,226 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils flag-o-matic toolchain-funcs multilib
+
+# Official patchlevel
+# See ftp://ftp.cwru.edu/pub/bash/bash-4.2-patches/
+PLEVEL=${PV##*_p}
+MY_PV=${PV/_p*}
+MY_PV=${MY_PV/_/-}
+MY_P=${PN}-${MY_PV}
+[[ ${PV} != *_p* ]] && PLEVEL=0
+patches() {
+ local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
+ [[ ${plevel} -eq 0 ]] && return 1
+ eval set -- {1..${plevel}}
+ set -- $(printf "${pn}${pv/\.}-%03d " "$@")
+ if [[ ${opt} == -s ]] ; then
+ echo "${@/#/${DISTDIR}/}"
+ else
+ local u
+ for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
+ printf "${u}/${pn}-${pv}-patches/%s " "$@"
+ done
+ fi
+}
+
+DESCRIPTION="The standard GNU Bourne again shell"
+HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html"
+SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+IUSE="afs bashlogger examples mem-scramble +net nls plugins +readline vanilla"
+
+DEPEND=">=sys-libs/ncurses-5.2-r2
+ readline? ( >=sys-libs/readline-6.2 )
+ nls? ( virtual/libintl )"
+RDEPEND="${DEPEND}
+ !!<sys-apps/portage-2.1.6.7_p1
+ !!<sys-apps/paludis-0.26.0_alpha5"
+# we only need yacc when the .y files get patched (bash42-005)
+DEPEND+=" virtual/yacc"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ if is-flag -malign-double ; then #7332
+ eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
+ eerror "as it breaks LFS (struct stat64) on x86."
+ die "remove -malign-double from your CFLAGS mr ricer"
+ fi
+ if use bashlogger ; then
+ ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs."
+ ewarn "This will log ALL output you enter into the shell, you have been warned."
+ fi
+}
+
+src_unpack() {
+ unpack ${MY_P}.tar.gz
+}
+
+src_prepare() {
+ # Include official patches
+ [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
+
+ # Clean out local libs so we know we use system ones
+ rm -rf lib/{readline,termcap}/*
+ touch lib/{readline,termcap}/Makefile.in # for config.status
+ sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in || die
+
+ # Avoid regenerating docs after patches #407985
+ sed -i -r '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in || die
+ touch -r . doc/*
+
+ epatch "${FILESDIR}"/${PN}-4.2-execute-job-control.patch #383237
+ epatch "${FILESDIR}"/${PN}-4.2-parallel-build.patch
+ epatch "${FILESDIR}"/${PN}-4.2-no-readline.patch
+ epatch "${FILESDIR}"/${PN}-4.2-read-retry.patch #447810
+ if ! use vanilla ; then
+ epatch "${FILESDIR}"/${PN}-4.2-speed-up-read-N.patch
+ fi
+
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ # For descriptions of these, see config-top.h
+ # bashrc/#26952 bash_logout/#90488 ssh/#24762
+ append-cppflags \
+ -DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\' \
+ -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
+ -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
+ -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
+ -DNON_INTERACTIVE_LOGIN_SHELLS \
+ -DSSH_SOURCE_BASHRC \
+ $(use bashlogger && echo -DSYSLOG_HISTORY)
+
+ # Don't even think about building this statically without
+ # reading Bug 7714 first. If you still build it statically,
+ # don't come crying to us with bugs ;).
+ #use static && export LDFLAGS="${LDFLAGS} -static"
+ use nls || myconf+=( --disable-nls )
+
+ # Historically, we always used the builtin readline, but since
+ # our handling of SONAME upgrades has gotten much more stable
+ # in the PM (and the readline ebuild itself preserves the old
+ # libs during upgrades), linking against the system copy should
+ # be safe.
+ # Exact cached version here doesn't really matter as long as it
+ # is at least what's in the DEPEND up above.
+ export ac_cv_rl_version=6.2
+
+ # Force linking with system curses ... the bundled termcap lib
+ # sucks bad compared to ncurses. For the most part, ncurses
+ # is here because readline needs it. But bash itself calls
+ # ncurses in one or two small places :(.
+
+ use plugins && append-ldflags -Wl,-rpath,/usr/$(get_libdir)/bash
+ tc-export AR #444070
+ econf \
+ --with-installed-readline=. \
+ --with-curses \
+ $(use_with afs) \
+ $(use_enable net net-redirections) \
+ --disable-profiling \
+ $(use_enable mem-scramble) \
+ $(use_with mem-scramble bash-malloc) \
+ $(use_enable readline) \
+ $(use_enable readline history) \
+ $(use_enable readline bang-history) \
+ "${myconf[@]}"
+}
+
+src_compile() {
+ emake
+
+ if use plugins ; then
+ emake -C examples/loadables all others
+ fi
+}
+
+src_install() {
+ emake install DESTDIR="${D}"
+
+ dodir /bin
+ mv "${ED}"/usr/bin/bash "${ED}"/bin/ || die
+ dosym bash /bin/rbash
+
+ insinto /etc/bash
+ doins "${FILESDIR}"/{bashrc,bash_logout}
+ insinto /etc/skel
+ for f in bash{_logout,_profile,rc} ; do
+ newins "${FILESDIR}"/dot-${f} .${f}
+ done
+
+ local sed_args=(
+ -e "s:#${USERLAND}#@::"
+ -e '/#@/d'
+ )
+ if ! use readline ; then
+ sed_args+=( #432338
+ -e '/^shopt -s histappend/s:^:#:'
+ -e 's:use_color=true:use_color=false:'
+ )
+ fi
+ sed -i \
+ "${sed_args[@]}" \
+ "${ED}"/etc/skel/.bashrc \
+ "${ED}"/etc/bash/bashrc || die
+
+ if use plugins ; then
+ exeinto /usr/$(get_libdir)/bash
+ doexe $(echo examples/loadables/*.o | sed 's:\.o::g')
+ insinto /usr/include/bash-plugins
+ doins *.h builtins/*.h examples/loadables/*.h include/*.h \
+ lib/{glob/glob.h,tilde/tilde.h}
+ fi
+
+ if use examples ; then
+ for d in examples/{functions,misc,scripts,scripts.noah,scripts.v2} ; do
+ exeinto /usr/share/doc/${PF}/${d}
+ insinto /usr/share/doc/${PF}/${d}
+ for f in ${d}/* ; do
+ if [[ ${f##*/} != PERMISSION ]] && [[ ${f##*/} != *README ]] ; then
+ doexe ${f}
+ else
+ doins ${f}
+ fi
+ done
+ done
+ fi
+
+ doman doc/*.1
+ dodoc README NEWS AUTHORS CHANGES COMPAT Y2K doc/FAQ doc/INTRO
+ dosym bash.info /usr/share/info/bashref.info
+}
+
+pkg_preinst() {
+ if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]] ; then
+ mkdir -p "${EROOT}"/etc/bash
+ mv -f "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/
+ fi
+
+ if [[ -L ${EROOT}/bin/sh ]]; then
+ # rewrite the symlink to ensure that its mtime changes. having /bin/sh
+ # missing even temporarily causes a fatal error with paludis.
+ local target=$(readlink "${EROOT}"/bin/sh)
+ local tmp=$(emktemp "${EROOT}"/bin)
+ ln -sf "${target}" "${tmp}"
+ mv -f "${tmp}" "${EROOT}"/bin/sh
+ fi
+}
+
+pkg_postinst() {
+ # If /bin/sh does not exist, provide it
+ if [[ ! -e ${EROOT}/bin/sh ]]; then
+ ln -sf bash "${EROOT}"/bin/sh
+ fi
+}
diff --git a/app-shells/bash/bash-4.3_p33-r1.ebuild b/app-shells/bash/bash-4.3_p33-r1.ebuild
new file mode 100644
index 00000000000..da7f82798fb
--- /dev/null
+++ b/app-shells/bash/bash-4.3_p33-r1.ebuild
@@ -0,0 +1,249 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils flag-o-matic toolchain-funcs multilib
+
+# Official patchlevel
+# See ftp://ftp.cwru.edu/pub/bash/bash-4.3-patches/
+PLEVEL=${PV##*_p}
+MY_PV=${PV/_p*}
+MY_PV=${MY_PV/_/-}
+MY_P=${PN}-${MY_PV}
+[[ ${PV} != *_p* ]] && PLEVEL=0
+patches() {
+ local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
+ [[ ${plevel} -eq 0 ]] && return 1
+ eval set -- {1..${plevel}}
+ set -- $(printf "${pn}${pv/\.}-%03d " "$@")
+ if [[ ${opt} == -s ]] ; then
+ echo "${@/#/${DISTDIR}/}"
+ else
+ local u
+ for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
+ printf "${u}/${pn}-${pv}-patches/%s " "$@"
+ done
+ fi
+}
+
+# The version of readline this bash normally ships with.
+READLINE_VER="6.3"
+
+DESCRIPTION="The standard GNU Bourne again shell"
+HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html"
+SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"
+[[ ${PV} == *_rc* ]] && SRC_URI+=" ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+IUSE="afs bashlogger examples mem-scramble +net nls plugins +readline vanilla"
+
+DEPEND=">=sys-libs/ncurses-5.2-r2
+ readline? ( >=sys-libs/readline-${READLINE_VER} )
+ nls? ( virtual/libintl )"
+RDEPEND="${DEPEND}
+ !<sys-apps/portage-2.1.6.7_p1
+ !<sys-apps/paludis-0.26.0_alpha5"
+# we only need yacc when the .y files get patched (bash42-005)
+DEPEND+=" virtual/yacc"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ if is-flag -malign-double ; then #7332
+ eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
+ eerror "as it breaks LFS (struct stat64) on x86."
+ die "remove -malign-double from your CFLAGS mr ricer"
+ fi
+ if use bashlogger ; then
+ ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs."
+ ewarn "This will log ALL output you enter into the shell, you have been warned."
+ fi
+}
+
+src_unpack() {
+ unpack ${MY_P}.tar.gz
+}
+
+src_prepare() {
+ # Include official patches
+ [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
+
+ # Clean out local libs so we know we use system ones w/releases.
+ if [[ ${PV} != *_rc* ]] ; then
+ rm -rf lib/{readline,termcap}/*
+ touch lib/{readline,termcap}/Makefile.in # for config.status
+ sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in || die
+ fi
+
+ # Avoid regenerating docs after patches #407985
+ sed -i -r '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in || die
+ touch -r . doc/*
+
+ epatch "${FILESDIR}"/${PN}-4.3-compat-lvl.patch
+ epatch "${FILESDIR}"/${PN}-4.3-parse-time-keyword.patch
+ epatch "${FILESDIR}"/${PN}-4.3-append-process-segfault.patch
+ epatch "${FILESDIR}"/${PN}-4.3-mapfile-improper-array-name-validation.patch
+ epatch "${FILESDIR}"/${PN}-4.3-arrayfunc.patch
+
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ # For descriptions of these, see config-top.h
+ # bashrc/#26952 bash_logout/#90488 ssh/#24762
+ append-cppflags \
+ -DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\' \
+ -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
+ -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
+ -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
+ -DNON_INTERACTIVE_LOGIN_SHELLS \
+ -DSSH_SOURCE_BASHRC \
+ $(use bashlogger && echo -DSYSLOG_HISTORY)
+
+ # Don't even think about building this statically without
+ # reading Bug 7714 first. If you still build it statically,
+ # don't come crying to us with bugs ;).
+ #use static && export LDFLAGS="${LDFLAGS} -static"
+ use nls || myconf+=( --disable-nls )
+
+ # Historically, we always used the builtin readline, but since
+ # our handling of SONAME upgrades has gotten much more stable
+ # in the PM (and the readline ebuild itself preserves the old
+ # libs during upgrades), linking against the system copy should
+ # be safe.
+ # Exact cached version here doesn't really matter as long as it
+ # is at least what's in the DEPEND up above.
+ export ac_cv_rl_version=${READLINE_VER}
+
+ # Force linking with system curses ... the bundled termcap lib
+ # sucks bad compared to ncurses. For the most part, ncurses
+ # is here because readline needs it. But bash itself calls
+ # ncurses in one or two small places :(.
+
+ if [[ ${PV} != *_rc* ]] ; then
+ # Use system readline only with released versions.
+ myconf+=( --with-installed-readline=. )
+ fi
+
+ if use plugins; then
+ append-ldflags -Wl,-rpath,/usr/$(get_libdir)/bash
+ else
+ # Disable the plugins logic by hand since bash doesn't
+ # provide a way of doing it.
+ export ac_cv_func_dl{close,open,sym}=no \
+ ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no
+ sed -i \
+ -e '/LOCAL_LDFLAGS=/s:-rdynamic::' \
+ configure || die
+ fi
+ tc-export AR #444070
+ econf \
+ --docdir='$(datarootdir)'/doc/${PF} \
+ --htmldir='$(docdir)/html' \
+ --with-curses \
+ $(use_with afs) \
+ $(use_enable net net-redirections) \
+ --disable-profiling \
+ $(use_enable mem-scramble) \
+ $(use_with mem-scramble bash-malloc) \
+ $(use_enable readline) \
+ $(use_enable readline history) \
+ $(use_enable readline bang-history) \
+ "${myconf[@]}"
+}
+
+src_compile() {
+ emake
+
+ if use plugins ; then
+ emake -C examples/loadables all others
+ fi
+}
+
+src_install() {
+ local d f
+
+ default
+
+ dodir /bin
+ mv "${ED}"/usr/bin/bash "${ED}"/bin/ || die
+ dosym bash /bin/rbash
+
+ insinto /etc/bash
+ doins "${FILESDIR}"/bash_logout
+ newins "${FILESDIR}"/bashrc-r1 bashrc
+ keepdir /etc/bash/bashrc.d
+ insinto /etc/skel
+ for f in bash{_logout,_profile,rc} ; do
+ newins "${FILESDIR}"/dot-${f} .${f}
+ done
+
+ local sed_args=(
+ -e "s:#${USERLAND}#@::"
+ -e '/#@/d'
+ )
+ if ! use readline ; then
+ sed_args+=( #432338
+ -e '/^shopt -s histappend/s:^:#:'
+ -e 's:use_color=true:use_color=false:'
+ )
+ fi
+ sed -i \
+ "${sed_args[@]}" \
+ "${ED}"/etc/skel/.bashrc \
+ "${ED}"/etc/bash/bashrc || die
+
+ if use plugins ; then
+ exeinto /usr/$(get_libdir)/bash
+ doexe $(echo examples/loadables/*.o | sed 's:\.o::g')
+ insinto /usr/include/bash-plugins
+ doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h}
+ fi
+
+ if use examples ; then
+ for d in examples/{functions,misc,scripts,startup-files} ; do
+ exeinto /usr/share/doc/${PF}/${d}
+ insinto /usr/share/doc/${PF}/${d}
+ for f in ${d}/* ; do
+ if [[ ${f##*/} != PERMISSION ]] && [[ ${f##*/} != *README ]] ; then
+ doexe ${f}
+ else
+ doins ${f}
+ fi
+ done
+ done
+ fi
+
+ doman doc/*.1
+ newdoc CWRU/changelog ChangeLog
+ dosym bash.info /usr/share/info/bashref.info
+}
+
+pkg_preinst() {
+ if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]] ; then
+ mkdir -p "${EROOT}"/etc/bash
+ mv -f "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/
+ fi
+
+ if [[ -L ${EROOT}/bin/sh ]] ; then
+ # rewrite the symlink to ensure that its mtime changes. having /bin/sh
+ # missing even temporarily causes a fatal error with paludis.
+ local target=$(readlink "${EROOT}"/bin/sh)
+ local tmp=$(emktemp "${EROOT}"/bin)
+ ln -sf "${target}" "${tmp}"
+ mv -f "${tmp}" "${EROOT}"/bin/sh
+ fi
+}
+
+pkg_postinst() {
+ # If /bin/sh does not exist, provide it
+ if [[ ! -e ${EROOT}/bin/sh ]] ; then
+ ln -sf bash "${EROOT}"/bin/sh
+ fi
+}
diff --git a/app-shells/bash/bash-4.3_p33-r2.ebuild b/app-shells/bash/bash-4.3_p33-r2.ebuild
new file mode 100644
index 00000000000..7b89f44847d
--- /dev/null
+++ b/app-shells/bash/bash-4.3_p33-r2.ebuild
@@ -0,0 +1,250 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils flag-o-matic toolchain-funcs multilib
+
+# Official patchlevel
+# See ftp://ftp.cwru.edu/pub/bash/bash-4.3-patches/
+PLEVEL=${PV##*_p}
+MY_PV=${PV/_p*}
+MY_PV=${MY_PV/_/-}
+MY_P=${PN}-${MY_PV}
+[[ ${PV} != *_p* ]] && PLEVEL=0
+patches() {
+ local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
+ [[ ${plevel} -eq 0 ]] && return 1
+ eval set -- {1..${plevel}}
+ set -- $(printf "${pn}${pv/\.}-%03d " "$@")
+ if [[ ${opt} == -s ]] ; then
+ echo "${@/#/${DISTDIR}/}"
+ else
+ local u
+ for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
+ printf "${u}/${pn}-${pv}-patches/%s " "$@"
+ done
+ fi
+}
+
+# The version of readline this bash normally ships with.
+READLINE_VER="6.3"
+
+DESCRIPTION="The standard GNU Bourne again shell"
+HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html"
+SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"
+[[ ${PV} == *_rc* ]] && SRC_URI+=" ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+IUSE="afs bashlogger examples mem-scramble +net nls plugins +readline vanilla"
+
+DEPEND=">=sys-libs/ncurses-5.2-r2
+ readline? ( >=sys-libs/readline-${READLINE_VER} )
+ nls? ( virtual/libintl )"
+RDEPEND="${DEPEND}
+ !<sys-apps/portage-2.1.6.7_p1
+ !<sys-apps/paludis-0.26.0_alpha5"
+# we only need yacc when the .y files get patched (bash42-005)
+DEPEND+=" virtual/yacc"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ if is-flag -malign-double ; then #7332
+ eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
+ eerror "as it breaks LFS (struct stat64) on x86."
+ die "remove -malign-double from your CFLAGS mr ricer"
+ fi
+ if use bashlogger ; then
+ ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs."
+ ewarn "This will log ALL output you enter into the shell, you have been warned."
+ fi
+}
+
+src_unpack() {
+ unpack ${MY_P}.tar.gz
+}
+
+src_prepare() {
+ # Include official patches
+ [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
+
+ # Clean out local libs so we know we use system ones w/releases.
+ if [[ ${PV} != *_rc* ]] ; then
+ rm -rf lib/{readline,termcap}/*
+ touch lib/{readline,termcap}/Makefile.in # for config.status
+ sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in || die
+ fi
+
+ # Avoid regenerating docs after patches #407985
+ sed -i -r '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in || die
+ touch -r . doc/*
+
+ epatch "${FILESDIR}"/${PN}-4.3-compat-lvl.patch
+ epatch "${FILESDIR}"/${PN}-4.3-parse-time-keyword.patch
+ epatch "${FILESDIR}"/${PN}-4.3-append-process-segfault.patch
+ epatch "${FILESDIR}"/${PN}-4.3-mapfile-improper-array-name-validation.patch
+ epatch "${FILESDIR}"/${PN}-4.3-arrayfunc.patch
+ epatch "${FILESDIR}"/${PN}-4.3-declare-visibility.patch
+
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ # For descriptions of these, see config-top.h
+ # bashrc/#26952 bash_logout/#90488 ssh/#24762
+ append-cppflags \
+ -DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\' \
+ -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
+ -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
+ -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
+ -DNON_INTERACTIVE_LOGIN_SHELLS \
+ -DSSH_SOURCE_BASHRC \
+ $(use bashlogger && echo -DSYSLOG_HISTORY)
+
+ # Don't even think about building this statically without
+ # reading Bug 7714 first. If you still build it statically,
+ # don't come crying to us with bugs ;).
+ #use static && export LDFLAGS="${LDFLAGS} -static"
+ use nls || myconf+=( --disable-nls )
+
+ # Historically, we always used the builtin readline, but since
+ # our handling of SONAME upgrades has gotten much more stable
+ # in the PM (and the readline ebuild itself preserves the old
+ # libs during upgrades), linking against the system copy should
+ # be safe.
+ # Exact cached version here doesn't really matter as long as it
+ # is at least what's in the DEPEND up above.
+ export ac_cv_rl_version=${READLINE_VER}
+
+ # Force linking with system curses ... the bundled termcap lib
+ # sucks bad compared to ncurses. For the most part, ncurses
+ # is here because readline needs it. But bash itself calls
+ # ncurses in one or two small places :(.
+
+ if [[ ${PV} != *_rc* ]] ; then
+ # Use system readline only with released versions.
+ myconf+=( --with-installed-readline=. )
+ fi
+
+ if use plugins; then
+ append-ldflags -Wl,-rpath,/usr/$(get_libdir)/bash
+ else
+ # Disable the plugins logic by hand since bash doesn't
+ # provide a way of doing it.
+ export ac_cv_func_dl{close,open,sym}=no \
+ ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no
+ sed -i \
+ -e '/LOCAL_LDFLAGS=/s:-rdynamic::' \
+ configure || die
+ fi
+ tc-export AR #444070
+ econf \
+ --docdir='$(datarootdir)'/doc/${PF} \
+ --htmldir='$(docdir)/html' \
+ --with-curses \
+ $(use_with afs) \
+ $(use_enable net net-redirections) \
+ --disable-profiling \
+ $(use_enable mem-scramble) \
+ $(use_with mem-scramble bash-malloc) \
+ $(use_enable readline) \
+ $(use_enable readline history) \
+ $(use_enable readline bang-history) \
+ "${myconf[@]}"
+}
+
+src_compile() {
+ emake
+
+ if use plugins ; then
+ emake -C examples/loadables all others
+ fi
+}
+
+src_install() {
+ local d f
+
+ default
+
+ dodir /bin
+ mv "${ED}"/usr/bin/bash "${ED}"/bin/ || die
+ dosym bash /bin/rbash
+
+ insinto /etc/bash
+ doins "${FILESDIR}"/bash_logout
+ newins "${FILESDIR}"/bashrc-r2 bashrc
+ keepdir /etc/bash/bashrc.d
+ insinto /etc/skel
+ for f in bash{_logout,_profile,rc} ; do
+ newins "${FILESDIR}"/dot-${f} .${f}
+ done
+
+ local sed_args=(
+ -e "s:#${USERLAND}#@::"
+ -e '/#@/d'
+ )
+ if ! use readline ; then
+ sed_args+=( #432338
+ -e '/^shopt -s histappend/s:^:#:'
+ -e 's:use_color=true:use_color=false:'
+ )
+ fi
+ sed -i \
+ "${sed_args[@]}" \
+ "${ED}"/etc/skel/.bashrc \
+ "${ED}"/etc/bash/bashrc || die
+
+ if use plugins ; then
+ exeinto /usr/$(get_libdir)/bash
+ doexe $(echo examples/loadables/*.o | sed 's:\.o::g')
+ insinto /usr/include/bash-plugins
+ doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h}
+ fi
+
+ if use examples ; then
+ for d in examples/{functions,misc,scripts,startup-files} ; do
+ exeinto /usr/share/doc/${PF}/${d}
+ insinto /usr/share/doc/${PF}/${d}
+ for f in ${d}/* ; do
+ if [[ ${f##*/} != PERMISSION ]] && [[ ${f##*/} != *README ]] ; then
+ doexe ${f}
+ else
+ doins ${f}
+ fi
+ done
+ done
+ fi
+
+ doman doc/*.1
+ newdoc CWRU/changelog ChangeLog
+ dosym bash.info /usr/share/info/bashref.info
+}
+
+pkg_preinst() {
+ if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]] ; then
+ mkdir -p "${EROOT}"/etc/bash
+ mv -f "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/
+ fi
+
+ if [[ -L ${EROOT}/bin/sh ]] ; then
+ # rewrite the symlink to ensure that its mtime changes. having /bin/sh
+ # missing even temporarily causes a fatal error with paludis.
+ local target=$(readlink "${EROOT}"/bin/sh)
+ local tmp=$(emktemp "${EROOT}"/bin)
+ ln -sf "${target}" "${tmp}"
+ mv -f "${tmp}" "${EROOT}"/bin/sh
+ fi
+}
+
+pkg_postinst() {
+ # If /bin/sh does not exist, provide it
+ if [[ ! -e ${EROOT}/bin/sh ]] ; then
+ ln -sf bash "${EROOT}"/bin/sh
+ fi
+}
diff --git a/app-shells/bash/bash-4.3_p33.ebuild b/app-shells/bash/bash-4.3_p33.ebuild
new file mode 100644
index 00000000000..aa47a6a01ce
--- /dev/null
+++ b/app-shells/bash/bash-4.3_p33.ebuild
@@ -0,0 +1,247 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils flag-o-matic toolchain-funcs multilib
+
+# Official patchlevel
+# See ftp://ftp.cwru.edu/pub/bash/bash-4.3-patches/
+PLEVEL=${PV##*_p}
+MY_PV=${PV/_p*}
+MY_PV=${MY_PV/_/-}
+MY_P=${PN}-${MY_PV}
+[[ ${PV} != *_p* ]] && PLEVEL=0
+patches() {
+ local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
+ [[ ${plevel} -eq 0 ]] && return 1
+ eval set -- {1..${plevel}}
+ set -- $(printf "${pn}${pv/\.}-%03d " "$@")
+ if [[ ${opt} == -s ]] ; then
+ echo "${@/#/${DISTDIR}/}"
+ else
+ local u
+ for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
+ printf "${u}/${pn}-${pv}-patches/%s " "$@"
+ done
+ fi
+}
+
+# The version of readline this bash normally ships with.
+READLINE_VER="6.3"
+
+DESCRIPTION="The standard GNU Bourne again shell"
+HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html"
+SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"
+[[ ${PV} == *_rc* ]] && SRC_URI+=" ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+IUSE="afs bashlogger examples mem-scramble +net nls plugins +readline vanilla"
+
+DEPEND=">=sys-libs/ncurses-5.2-r2
+ readline? ( >=sys-libs/readline-${READLINE_VER} )
+ nls? ( virtual/libintl )"
+RDEPEND="${DEPEND}
+ !<sys-apps/portage-2.1.6.7_p1
+ !<sys-apps/paludis-0.26.0_alpha5"
+# we only need yacc when the .y files get patched (bash42-005)
+DEPEND+=" virtual/yacc"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ if is-flag -malign-double ; then #7332
+ eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
+ eerror "as it breaks LFS (struct stat64) on x86."
+ die "remove -malign-double from your CFLAGS mr ricer"
+ fi
+ if use bashlogger ; then
+ ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs."
+ ewarn "This will log ALL output you enter into the shell, you have been warned."
+ fi
+}
+
+src_unpack() {
+ unpack ${MY_P}.tar.gz
+}
+
+src_prepare() {
+ # Include official patches
+ [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
+
+ # Clean out local libs so we know we use system ones w/releases.
+ if [[ ${PV} != *_rc* ]] ; then
+ rm -rf lib/{readline,termcap}/*
+ touch lib/{readline,termcap}/Makefile.in # for config.status
+ sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in || die
+ fi
+
+ # Avoid regenerating docs after patches #407985
+ sed -i -r '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in || die
+ touch -r . doc/*
+
+ epatch "${FILESDIR}"/${PN}-4.3-compat-lvl.patch
+ epatch "${FILESDIR}"/${PN}-4.3-parse-time-keyword.patch
+ epatch "${FILESDIR}"/${PN}-4.3-append-process-segfault.patch
+
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ # For descriptions of these, see config-top.h
+ # bashrc/#26952 bash_logout/#90488 ssh/#24762
+ append-cppflags \
+ -DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\' \
+ -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
+ -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
+ -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
+ -DNON_INTERACTIVE_LOGIN_SHELLS \
+ -DSSH_SOURCE_BASHRC \
+ $(use bashlogger && echo -DSYSLOG_HISTORY)
+
+ # Don't even think about building this statically without
+ # reading Bug 7714 first. If you still build it statically,
+ # don't come crying to us with bugs ;).
+ #use static && export LDFLAGS="${LDFLAGS} -static"
+ use nls || myconf+=( --disable-nls )
+
+ # Historically, we always used the builtin readline, but since
+ # our handling of SONAME upgrades has gotten much more stable
+ # in the PM (and the readline ebuild itself preserves the old
+ # libs during upgrades), linking against the system copy should
+ # be safe.
+ # Exact cached version here doesn't really matter as long as it
+ # is at least what's in the DEPEND up above.
+ export ac_cv_rl_version=${READLINE_VER}
+
+ # Force linking with system curses ... the bundled termcap lib
+ # sucks bad compared to ncurses. For the most part, ncurses
+ # is here because readline needs it. But bash itself calls
+ # ncurses in one or two small places :(.
+
+ if [[ ${PV} != *_rc* ]] ; then
+ # Use system readline only with released versions.
+ myconf+=( --with-installed-readline=. )
+ fi
+
+ if use plugins; then
+ append-ldflags -Wl,-rpath,/usr/$(get_libdir)/bash
+ else
+ # Disable the plugins logic by hand since bash doesn't
+ # provide a way of doing it.
+ export ac_cv_func_dl{close,open,sym}=no \
+ ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no
+ sed -i \
+ -e '/LOCAL_LDFLAGS=/s:-rdynamic::' \
+ configure || die
+ fi
+ tc-export AR #444070
+ econf \
+ --docdir='$(datarootdir)'/doc/${PF} \
+ --htmldir='$(docdir)/html' \
+ --with-curses \
+ $(use_with afs) \
+ $(use_enable net net-redirections) \
+ --disable-profiling \
+ $(use_enable mem-scramble) \
+ $(use_with mem-scramble bash-malloc) \
+ $(use_enable readline) \
+ $(use_enable readline history) \
+ $(use_enable readline bang-history) \
+ "${myconf[@]}"
+}
+
+src_compile() {
+ emake
+
+ if use plugins ; then
+ emake -C examples/loadables all others
+ fi
+}
+
+src_install() {
+ local d f
+
+ default
+
+ dodir /bin
+ mv "${ED}"/usr/bin/bash "${ED}"/bin/ || die
+ dosym bash /bin/rbash
+
+ insinto /etc/bash
+ doins "${FILESDIR}"/bash_logout
+ newins "${FILESDIR}"/bashrc-r1 bashrc
+ keepdir /etc/bash/bashrc.d
+ insinto /etc/skel
+ for f in bash{_logout,_profile,rc} ; do
+ newins "${FILESDIR}"/dot-${f} .${f}
+ done
+
+ local sed_args=(
+ -e "s:#${USERLAND}#@::"
+ -e '/#@/d'
+ )
+ if ! use readline ; then
+ sed_args+=( #432338
+ -e '/^shopt -s histappend/s:^:#:'
+ -e 's:use_color=true:use_color=false:'
+ )
+ fi
+ sed -i \
+ "${sed_args[@]}" \
+ "${ED}"/etc/skel/.bashrc \
+ "${ED}"/etc/bash/bashrc || die
+
+ if use plugins ; then
+ exeinto /usr/$(get_libdir)/bash
+ doexe $(echo examples/loadables/*.o | sed 's:\.o::g')
+ insinto /usr/include/bash-plugins
+ doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h}
+ fi
+
+ if use examples ; then
+ for d in examples/{functions,misc,scripts,startup-files} ; do
+ exeinto /usr/share/doc/${PF}/${d}
+ insinto /usr/share/doc/${PF}/${d}
+ for f in ${d}/* ; do
+ if [[ ${f##*/} != PERMISSION ]] && [[ ${f##*/} != *README ]] ; then
+ doexe ${f}
+ else
+ doins ${f}
+ fi
+ done
+ done
+ fi
+
+ doman doc/*.1
+ newdoc CWRU/changelog ChangeLog
+ dosym bash.info /usr/share/info/bashref.info
+}
+
+pkg_preinst() {
+ if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]] ; then
+ mkdir -p "${EROOT}"/etc/bash
+ mv -f "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/
+ fi
+
+ if [[ -L ${EROOT}/bin/sh ]] ; then
+ # rewrite the symlink to ensure that its mtime changes. having /bin/sh
+ # missing even temporarily causes a fatal error with paludis.
+ local target=$(readlink "${EROOT}"/bin/sh)
+ local tmp=$(emktemp "${EROOT}"/bin)
+ ln -sf "${target}" "${tmp}"
+ mv -f "${tmp}" "${EROOT}"/bin/sh
+ fi
+}
+
+pkg_postinst() {
+ # If /bin/sh does not exist, provide it
+ if [[ ! -e ${EROOT}/bin/sh ]] ; then
+ ln -sf bash "${EROOT}"/bin/sh
+ fi
+}
diff --git a/app-shells/bash/bash-4.3_p39.ebuild b/app-shells/bash/bash-4.3_p39.ebuild
new file mode 100644
index 00000000000..9c19bc40abe
--- /dev/null
+++ b/app-shells/bash/bash-4.3_p39.ebuild
@@ -0,0 +1,248 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils flag-o-matic toolchain-funcs multilib
+
+# Official patchlevel
+# See ftp://ftp.cwru.edu/pub/bash/bash-4.3-patches/
+PLEVEL=${PV##*_p}
+MY_PV=${PV/_p*}
+MY_PV=${MY_PV/_/-}
+MY_P=${PN}-${MY_PV}
+[[ ${PV} != *_p* ]] && PLEVEL=0
+patches() {
+ local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
+ [[ ${plevel} -eq 0 ]] && return 1
+ eval set -- {1..${plevel}}
+ set -- $(printf "${pn}${pv/\.}-%03d " "$@")
+ if [[ ${opt} == -s ]] ; then
+ echo "${@/#/${DISTDIR}/}"
+ else
+ local u
+ for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
+ printf "${u}/${pn}-${pv}-patches/%s " "$@"
+ done
+ fi
+}
+
+# The version of readline this bash normally ships with.
+READLINE_VER="6.3"
+
+DESCRIPTION="The standard GNU Bourne again shell"
+HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html"
+SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"
+[[ ${PV} == *_rc* ]] && SRC_URI+=" ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+IUSE="afs bashlogger examples mem-scramble +net nls plugins +readline vanilla"
+
+DEPEND=">=sys-libs/ncurses-5.2-r2
+ readline? ( >=sys-libs/readline-${READLINE_VER} )
+ nls? ( virtual/libintl )"
+RDEPEND="${DEPEND}
+ !<sys-apps/portage-2.1.6.7_p1
+ !<sys-apps/paludis-0.26.0_alpha5"
+# we only need yacc when the .y files get patched (bash42-005)
+DEPEND+=" virtual/yacc"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ if is-flag -malign-double ; then #7332
+ eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
+ eerror "as it breaks LFS (struct stat64) on x86."
+ die "remove -malign-double from your CFLAGS mr ricer"
+ fi
+ if use bashlogger ; then
+ ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs."
+ ewarn "This will log ALL output you enter into the shell, you have been warned."
+ fi
+}
+
+src_unpack() {
+ unpack ${MY_P}.tar.gz
+}
+
+src_prepare() {
+ # Include official patches
+ [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
+
+ # Clean out local libs so we know we use system ones w/releases.
+ if [[ ${PV} != *_rc* ]] ; then
+ rm -rf lib/{readline,termcap}/*
+ touch lib/{readline,termcap}/Makefile.in # for config.status
+ sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in || die
+ fi
+
+ # Avoid regenerating docs after patches #407985
+ sed -i -r '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in || die
+ touch -r . doc/*
+
+ epatch "${FILESDIR}"/${PN}-4.3-compat-lvl.patch
+ epatch "${FILESDIR}"/${PN}-4.3-append-process-segfault.patch
+ epatch "${FILESDIR}"/${PN}-4.3-mapfile-improper-array-name-validation.patch
+ epatch "${FILESDIR}"/${PN}-4.3-arrayfunc.patch
+
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ # For descriptions of these, see config-top.h
+ # bashrc/#26952 bash_logout/#90488 ssh/#24762
+ append-cppflags \
+ -DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\' \
+ -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
+ -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
+ -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
+ -DNON_INTERACTIVE_LOGIN_SHELLS \
+ -DSSH_SOURCE_BASHRC \
+ $(use bashlogger && echo -DSYSLOG_HISTORY)
+
+ # Don't even think about building this statically without
+ # reading Bug 7714 first. If you still build it statically,
+ # don't come crying to us with bugs ;).
+ #use static && export LDFLAGS="${LDFLAGS} -static"
+ use nls || myconf+=( --disable-nls )
+
+ # Historically, we always used the builtin readline, but since
+ # our handling of SONAME upgrades has gotten much more stable
+ # in the PM (and the readline ebuild itself preserves the old
+ # libs during upgrades), linking against the system copy should
+ # be safe.
+ # Exact cached version here doesn't really matter as long as it
+ # is at least what's in the DEPEND up above.
+ export ac_cv_rl_version=${READLINE_VER}
+
+ # Force linking with system curses ... the bundled termcap lib
+ # sucks bad compared to ncurses. For the most part, ncurses
+ # is here because readline needs it. But bash itself calls
+ # ncurses in one or two small places :(.
+
+ if [[ ${PV} != *_rc* ]] ; then
+ # Use system readline only with released versions.
+ myconf+=( --with-installed-readline=. )
+ fi
+
+ if use plugins; then
+ append-ldflags -Wl,-rpath,/usr/$(get_libdir)/bash
+ else
+ # Disable the plugins logic by hand since bash doesn't
+ # provide a way of doing it.
+ export ac_cv_func_dl{close,open,sym}=no \
+ ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no
+ sed -i \
+ -e '/LOCAL_LDFLAGS=/s:-rdynamic::' \
+ configure || die
+ fi
+ tc-export AR #444070
+ econf \
+ --docdir='$(datarootdir)'/doc/${PF} \
+ --htmldir='$(docdir)/html' \
+ --with-curses \
+ $(use_with afs) \
+ $(use_enable net net-redirections) \
+ --disable-profiling \
+ $(use_enable mem-scramble) \
+ $(use_with mem-scramble bash-malloc) \
+ $(use_enable readline) \
+ $(use_enable readline history) \
+ $(use_enable readline bang-history) \
+ "${myconf[@]}"
+}
+
+src_compile() {
+ emake
+
+ if use plugins ; then
+ emake -C examples/loadables all others
+ fi
+}
+
+src_install() {
+ local d f
+
+ default
+
+ dodir /bin
+ mv "${ED}"/usr/bin/bash "${ED}"/bin/ || die
+ dosym bash /bin/rbash
+
+ insinto /etc/bash
+ doins "${FILESDIR}"/bash_logout
+ newins "${FILESDIR}"/bashrc-r2 bashrc
+ keepdir /etc/bash/bashrc.d
+ insinto /etc/skel
+ for f in bash{_logout,_profile,rc} ; do
+ newins "${FILESDIR}"/dot-${f} .${f}
+ done
+
+ local sed_args=(
+ -e "s:#${USERLAND}#@::"
+ -e '/#@/d'
+ )
+ if ! use readline ; then
+ sed_args+=( #432338
+ -e '/^shopt -s histappend/s:^:#:'
+ -e 's:use_color=true:use_color=false:'
+ )
+ fi
+ sed -i \
+ "${sed_args[@]}" \
+ "${ED}"/etc/skel/.bashrc \
+ "${ED}"/etc/bash/bashrc || die
+
+ if use plugins ; then
+ exeinto /usr/$(get_libdir)/bash
+ doexe $(echo examples/loadables/*.o | sed 's:\.o::g')
+ insinto /usr/include/bash-plugins
+ doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h}
+ fi
+
+ if use examples ; then
+ for d in examples/{functions,misc,scripts,startup-files} ; do
+ exeinto /usr/share/doc/${PF}/${d}
+ insinto /usr/share/doc/${PF}/${d}
+ for f in ${d}/* ; do
+ if [[ ${f##*/} != PERMISSION ]] && [[ ${f##*/} != *README ]] ; then
+ doexe ${f}
+ else
+ doins ${f}
+ fi
+ done
+ done
+ fi
+
+ doman doc/*.1
+ newdoc CWRU/changelog ChangeLog
+ dosym bash.info /usr/share/info/bashref.info
+}
+
+pkg_preinst() {
+ if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]] ; then
+ mkdir -p "${EROOT}"/etc/bash
+ mv -f "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/
+ fi
+
+ if [[ -L ${EROOT}/bin/sh ]] ; then
+ # rewrite the symlink to ensure that its mtime changes. having /bin/sh
+ # missing even temporarily causes a fatal error with paludis.
+ local target=$(readlink "${EROOT}"/bin/sh)
+ local tmp=$(emktemp "${EROOT}"/bin)
+ ln -sf "${target}" "${tmp}"
+ mv -f "${tmp}" "${EROOT}"/bin/sh
+ fi
+}
+
+pkg_postinst() {
+ # If /bin/sh does not exist, provide it
+ if [[ ! -e ${EROOT}/bin/sh ]] ; then
+ ln -sf bash "${EROOT}"/bin/sh
+ fi
+}
diff --git a/app-shells/bash/bash-4.4_alpha-r1.ebuild b/app-shells/bash/bash-4.4_alpha-r1.ebuild
new file mode 100644
index 00000000000..a77538fb597
--- /dev/null
+++ b/app-shells/bash/bash-4.4_alpha-r1.ebuild
@@ -0,0 +1,247 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils flag-o-matic toolchain-funcs multilib
+
+# Official patchlevel
+# See ftp://ftp.cwru.edu/pub/bash/bash-4.3-patches/
+PLEVEL=${PV##*_p}
+MY_PV=${PV/_p*}
+MY_PV=${MY_PV/_/-}
+MY_P=${PN}-${MY_PV}
+[[ ${PV} != *_p* ]] && PLEVEL=0
+patches() {
+ local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
+ [[ ${plevel} -eq 0 ]] && return 1
+ eval set -- {1..${plevel}}
+ set -- $(printf "${pn}${pv/\.}-%03d " "$@")
+ if [[ ${opt} == -s ]] ; then
+ echo "${@/#/${DISTDIR}/}"
+ else
+ local u
+ for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
+ printf "${u}/${pn}-${pv}-patches/%s " "$@"
+ done
+ fi
+}
+
+# The version of readline this bash normally ships with.
+READLINE_VER="7.0"
+
+DESCRIPTION="The standard GNU Bourne again shell"
+HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html"
+case ${PV} in
+*_alpha*|*_rc*) SRC_URI+=" ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz" ;;
+*) SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)" ;;
+esac
+
+LICENSE="GPL-3"
+SLOT="0"
+#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+IUSE="afs bashlogger examples mem-scramble +net nls plugins +readline vanilla"
+
+DEPEND=">=sys-libs/ncurses-5.2-r2:=
+ readline? ( >=sys-libs/readline-${READLINE_VER}_alpha:0= )
+ nls? ( virtual/libintl )"
+RDEPEND="${DEPEND}
+ !<sys-apps/portage-2.1.6.7_p1
+ !<sys-apps/paludis-0.26.0_alpha5"
+# we only need yacc when the .y files get patched (bash42-005)
+DEPEND+=" virtual/yacc"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ if is-flag -malign-double ; then #7332
+ eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
+ eerror "as it breaks LFS (struct stat64) on x86."
+ die "remove -malign-double from your CFLAGS mr ricer"
+ fi
+ if use bashlogger ; then
+ ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs."
+ ewarn "This will log ALL output you enter into the shell, you have been warned."
+ fi
+}
+
+src_unpack() {
+ unpack ${MY_P}.tar.gz
+}
+
+src_prepare() {
+ # Include official patches
+ [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
+
+ # Clean out local libs so we know we use system ones w/releases.
+ if [[ ${PV} != *_rc* ]] ; then
+ rm -rf lib/{readline,termcap}/*
+ touch lib/{readline,termcap}/Makefile.in # for config.status
+ sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in || die
+ fi
+
+ # Avoid regenerating docs after patches #407985
+ sed -i -r '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in || die
+ touch -r . doc/*
+
+ epatch "${FILESDIR}"/${PN}-4.4-optimize-fork.patch
+
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ # For descriptions of these, see config-top.h
+ # bashrc/#26952 bash_logout/#90488 ssh/#24762
+ append-cppflags \
+ -DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\' \
+ -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
+ -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
+ -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
+ -DNON_INTERACTIVE_LOGIN_SHELLS \
+ -DSSH_SOURCE_BASHRC \
+ $(use bashlogger && echo -DSYSLOG_HISTORY)
+
+ # Don't even think about building this statically without
+ # reading Bug 7714 first. If you still build it statically,
+ # don't come crying to us with bugs ;).
+ #use static && export LDFLAGS="${LDFLAGS} -static"
+ use nls || myconf+=( --disable-nls )
+
+ # Historically, we always used the builtin readline, but since
+ # our handling of SONAME upgrades has gotten much more stable
+ # in the PM (and the readline ebuild itself preserves the old
+ # libs during upgrades), linking against the system copy should
+ # be safe.
+ # Exact cached version here doesn't really matter as long as it
+ # is at least what's in the DEPEND up above.
+ export ac_cv_rl_version=${READLINE_VER}
+
+ # Force linking with system curses ... the bundled termcap lib
+ # sucks bad compared to ncurses. For the most part, ncurses
+ # is here because readline needs it. But bash itself calls
+ # ncurses in one or two small places :(.
+
+ if [[ ${PV} != *_rc* ]] ; then
+ # Use system readline only with released versions.
+ myconf+=( --with-installed-readline=. )
+ fi
+
+ if use plugins; then
+ append-ldflags -Wl,-rpath,/usr/$(get_libdir)/bash
+ else
+ # Disable the plugins logic by hand since bash doesn't
+ # provide a way of doing it.
+ export ac_cv_func_dl{close,open,sym}=no \
+ ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no
+ sed -i \
+ -e '/LOCAL_LDFLAGS=/s:-rdynamic::' \
+ configure || die
+ fi
+ tc-export AR #444070
+ econf \
+ --docdir='$(datarootdir)'/doc/${PF} \
+ --htmldir='$(docdir)/html' \
+ --with-curses \
+ $(use_with afs) \
+ $(use_enable net net-redirections) \
+ --disable-profiling \
+ $(use_enable mem-scramble) \
+ $(use_with mem-scramble bash-malloc) \
+ $(use_enable readline) \
+ $(use_enable readline history) \
+ $(use_enable readline bang-history) \
+ "${myconf[@]}"
+}
+
+src_compile() {
+ emake
+
+ if use plugins ; then
+ emake -C examples/loadables all others
+ fi
+}
+
+src_install() {
+ local d f
+
+ default
+
+ dodir /bin
+ mv "${ED}"/usr/bin/bash "${ED}"/bin/ || die
+ dosym bash /bin/rbash
+
+ insinto /etc/bash
+ doins "${FILESDIR}"/bash_logout
+ newins "${FILESDIR}"/bashrc-r2 bashrc
+ keepdir /etc/bash/bashrc.d
+ insinto /etc/skel
+ for f in bash{_logout,_profile,rc} ; do
+ newins "${FILESDIR}"/dot-${f} .${f}
+ done
+
+ local sed_args=(
+ -e "s:#${USERLAND}#@::"
+ -e '/#@/d'
+ )
+ if ! use readline ; then
+ sed_args+=( #432338
+ -e '/^shopt -s histappend/s:^:#:'
+ -e 's:use_color=true:use_color=false:'
+ )
+ fi
+ sed -i \
+ "${sed_args[@]}" \
+ "${ED}"/etc/skel/.bashrc \
+ "${ED}"/etc/bash/bashrc || die
+
+ if use plugins ; then
+ exeinto /usr/$(get_libdir)/bash
+ doexe $(echo examples/loadables/*.o | sed 's:\.o::g')
+ insinto /usr/include/bash-plugins
+ doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h}
+ fi
+
+ if use examples ; then
+ for d in examples/{functions,misc,scripts,startup-files} ; do
+ exeinto /usr/share/doc/${PF}/${d}
+ insinto /usr/share/doc/${PF}/${d}
+ for f in ${d}/* ; do
+ if [[ ${f##*/} != PERMISSION ]] && [[ ${f##*/} != *README ]] ; then
+ doexe ${f}
+ else
+ doins ${f}
+ fi
+ done
+ done
+ fi
+
+ doman doc/*.1
+ newdoc CWRU/changelog ChangeLog
+ dosym bash.info /usr/share/info/bashref.info
+}
+
+pkg_preinst() {
+ if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]] ; then
+ mkdir -p "${EROOT}"/etc/bash
+ mv -f "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/
+ fi
+
+ if [[ -L ${EROOT}/bin/sh ]] ; then
+ # rewrite the symlink to ensure that its mtime changes. having /bin/sh
+ # missing even temporarily causes a fatal error with paludis.
+ local target=$(readlink "${EROOT}"/bin/sh)
+ local tmp=$(emktemp "${EROOT}"/bin)
+ ln -sf "${target}" "${tmp}"
+ mv -f "${tmp}" "${EROOT}"/bin/sh
+ fi
+}
+
+pkg_postinst() {
+ # If /bin/sh does not exist, provide it
+ if [[ ! -e ${EROOT}/bin/sh ]] ; then
+ ln -sf bash "${EROOT}"/bin/sh
+ fi
+}
diff --git a/app-shells/bash/files/autoconf-mktime-2.53.patch b/app-shells/bash/files/autoconf-mktime-2.53.patch
new file mode 100644
index 00000000000..7632b63f4f7
--- /dev/null
+++ b/app-shells/bash/files/autoconf-mktime-2.53.patch
@@ -0,0 +1,199 @@
+https://bugs.gentoo.org/220040
+
+--- a/configure
++++ b/configure
+@@ -12393,22 +12393,25 @@ else
+ #line $LINENO "configure"
+ #include "confdefs.h"
+ /* Test program from Paul Eggert and Tony Leneis. */
+-#if TIME_WITH_SYS_TIME
++#ifdef TIME_WITH_SYS_TIME
+ # include <sys/time.h>
+ # include <time.h>
+ #else
+-# if HAVE_SYS_TIME_H
++# ifdef HAVE_SYS_TIME_H
+ # include <sys/time.h>
+ # else
+ # include <time.h>
+ # endif
+ #endif
+
+-#if HAVE_UNISTD_H
++#include <limits.h>
++#include <stdlib.h>
++
++#ifdef HAVE_UNISTD_H
+ # include <unistd.h>
+ #endif
+
+-#if !HAVE_ALARM
++#ifndef HAVE_ALARM
+ # define alarm(X) /* empty */
+ #endif
+
+@@ -12416,6 +12419,7 @@ else
+ #undef putenv
+
+ static time_t time_t_max;
++static time_t time_t_min;
+
+ /* Values we'll use to set the TZ environment variable. */
+ static const char *const tz_strings[] = {
+@@ -12424,9 +12428,9 @@ static const char *const tz_strings[] = {
+ };
+ #define N_STRINGS (sizeof (tz_strings) / sizeof (tz_strings[0]))
+
+-/* Fail if mktime fails to convert a date in the spring-forward gap.
++/* Return 0 if mktime fails to convert a date in the spring-forward gap.
+ Based on a problem report from Andreas Jaeger. */
+-static void
++static int
+ spring_forward_gap ()
+ {
+ /* glibc (up to about 1998-10-07) failed this test. */
+@@ -12445,23 +12449,27 @@ spring_forward_gap ()
+ tm.tm_min = 0;
+ tm.tm_sec = 0;
+ tm.tm_isdst = -1;
+- if (mktime (&tm) == (time_t)-1)
+- exit (1);
++ return mktime (&tm) != (time_t) -1;
+ }
+
+-static void
+-mktime_test (now)
++static int
++mktime_test1 (now)
+ time_t now;
+ {
+ struct tm *lt;
+- if ((lt = localtime (&now)) && mktime (lt) != now)
+- exit (1);
+- now = time_t_max - now;
+- if ((lt = localtime (&now)) && mktime (lt) != now)
+- exit (1);
++ return ! (lt = localtime (&now)) || mktime (lt) == now;
+ }
+
+-static void
++static int
++mktime_test (now)
++ time_t now;
++{
++ return (mktime_test1 (now)
++ && mktime_test1 ((time_t) (time_t_max - now))
++ && mktime_test1 ((time_t) (time_t_min + now)));
++}
++
++static int
+ irix_6_4_bug ()
+ {
+ /* Based on code from Ariel Faigon. */
+@@ -12474,11 +12482,10 @@ irix_6_4_bug ()
+ tm.tm_sec = 0;
+ tm.tm_isdst = -1;
+ mktime (&tm);
+- if (tm.tm_mon != 2 || tm.tm_mday != 31)
+- exit (1);
++ return tm.tm_mon == 2 && tm.tm_mday == 31;
+ }
+
+-static void
++static int
+ bigtime_test (j)
+ int j;
+ {
+@@ -12500,8 +12507,39 @@ bigtime_test (j)
+ && lt->tm_wday == tm.tm_wday
+ && ((lt->tm_isdst < 0 ? -1 : 0 < lt->tm_isdst)
+ == (tm.tm_isdst < 0 ? -1 : 0 < tm.tm_isdst))))
+- exit (1);
++ return 0;
+ }
++ return 1;
++}
++
++static int
++year_2050_test ()
++{
++ /* The correct answer for 2050-02-01 00:00:00 in Pacific time,
++ ignoring leap seconds. */
++ unsigned long int answer = 2527315200UL;
++
++ struct tm tm;
++ time_t t;
++ tm.tm_year = 2050 - 1900;
++ tm.tm_mon = 2 - 1;
++ tm.tm_mday = 1;
++ tm.tm_hour = tm.tm_min = tm.tm_sec = 0;
++ tm.tm_isdst = -1;
++
++ /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0"
++ instead of "TZ=America/Vancouver" in order to detect the bug even
++ on systems that don't support the Olson extension, or don't have the
++ full zoneinfo tables installed. */
++ putenv ("TZ=PST8PDT,M4.1.0,M10.5.0");
++
++ t = mktime (&tm);
++
++ /* Check that the result is either a failure, or close enough
++ to the correct answer that we can assume the discrepancy is
++ due to leap seconds. */
++ return (t == (time_t) -1
++ || (0 < t && answer - 120 <= t && t <= answer + 120));
+ }
+
+ int
+@@ -12515,9 +12553,15 @@ main ()
+ isn't worth using anyway. */
+ alarm (60);
+
+- for (time_t_max = 1; 0 < time_t_max; time_t_max *= 2)
+- continue;
+- time_t_max--;
++ for (;;)
++ {
++ t = (time_t_max << 1) + 1;
++ if (t <= time_t_max)
++ break;
++ time_t_max = t;
++ }
++ time_t_min = - ((time_t) ~ (time_t) 0 == (time_t) -1) - time_t_max;
++
+ delta = time_t_max / 997; /* a suitable prime number */
+ for (i = 0; i < N_STRINGS; i++)
+ {
+@@ -12525,17 +12569,22 @@ main ()
+ putenv (tz_strings[i]);
+
+ for (t = 0; t <= time_t_max - delta; t += delta)
+- mktime_test (t);
+- mktime_test ((time_t) 60 * 60);
+- mktime_test ((time_t) 60 * 60 * 24);
+-
+- for (j = 1; 0 < j; j *= 2)
+- bigtime_test (j);
+- bigtime_test (j - 1);
++ if (! mktime_test (t))
++ return 1;
++ if (! (mktime_test ((time_t) 1)
++ && mktime_test ((time_t) (60 * 60))
++ && mktime_test ((time_t) (60 * 60 * 24))))
++ return 1;
++
++ for (j = 1; ; j <<= 1)
++ if (! bigtime_test (j))
++ return 1;
++ else if (INT_MAX / 2 < j)
++ break;
++ if (! bigtime_test (INT_MAX))
++ return 1;
+ }
+- irix_6_4_bug ();
+- spring_forward_gap ();
+- exit (0);
++ return ! (irix_6_4_bug () && spring_forward_gap () && year_2050_test ());
+ }
+ _ACEOF
+ rm -f conftest$ac_exeext
diff --git a/app-shells/bash/files/autoconf-mktime-2.59.patch b/app-shells/bash/files/autoconf-mktime-2.59.patch
new file mode 100644
index 00000000000..3ac3ad1da86
--- /dev/null
+++ b/app-shells/bash/files/autoconf-mktime-2.59.patch
@@ -0,0 +1,197 @@
+http://bugs.gentoo.org/220040
+--- configure
++++ configure
+@@ -5299,26 +6059,25 @@
+ cat >>conftest.$ac_ext <<_ACEOF
+ /* end confdefs.h. */
+ /* Test program from Paul Eggert and Tony Leneis. */
+-#if TIME_WITH_SYS_TIME
++#ifdef TIME_WITH_SYS_TIME
+ # include <sys/time.h>
+ # include <time.h>
+ #else
+-# if HAVE_SYS_TIME_H
++# ifdef HAVE_SYS_TIME_H
+ # include <sys/time.h>
+ # else
+ # include <time.h>
+ # endif
+ #endif
+
+-#if HAVE_STDLIB_H
+-# include <stdlib.h>
+-#endif
++#include <limits.h>
++#include <stdlib.h>
+
+-#if HAVE_UNISTD_H
++#ifdef HAVE_UNISTD_H
+ # include <unistd.h>
+ #endif
+
+-#if !HAVE_ALARM
++#ifndef HAVE_ALARM
+ # define alarm(X) /* empty */
+ #endif
+
+@@ -5335,9 +6094,9 @@
+ };
+ #define N_STRINGS (sizeof (tz_strings) / sizeof (tz_strings[0]))
+
+-/* Fail if mktime fails to convert a date in the spring-forward gap.
++/* Return 0 if mktime fails to convert a date in the spring-forward gap.
+ Based on a problem report from Andreas Jaeger. */
+-static void
++static int
+ spring_forward_gap ()
+ {
+ /* glibc (up to about 1998-10-07) failed this test. */
+@@ -5356,29 +6115,27 @@
+ tm.tm_min = 0;
+ tm.tm_sec = 0;
+ tm.tm_isdst = -1;
+- if (mktime (&tm) == (time_t)-1)
+- exit (1);
++ return mktime (&tm) != (time_t) -1;
+ }
+
+-static void
++static int
+ mktime_test1 (now)
+ time_t now;
+ {
+ struct tm *lt;
+- if ((lt = localtime (&now)) && mktime (lt) != now)
+- exit (1);
++ return ! (lt = localtime (&now)) || mktime (lt) == now;
+ }
+
+-static void
++static int
+ mktime_test (now)
+ time_t now;
+ {
+- mktime_test1 (now);
+- mktime_test1 ((time_t) (time_t_max - now));
+- mktime_test1 ((time_t) (time_t_min + now));
++ return (mktime_test1 (now)
++ && mktime_test1 ((time_t) (time_t_max - now))
++ && mktime_test1 ((time_t) (time_t_min + now)));
+ }
+
+-static void
++static int
+ irix_6_4_bug ()
+ {
+ /* Based on code from Ariel Faigon. */
+@@ -5391,11 +6148,10 @@
+ tm.tm_sec = 0;
+ tm.tm_isdst = -1;
+ mktime (&tm);
+- if (tm.tm_mon != 2 || tm.tm_mday != 31)
+- exit (1);
++ return tm.tm_mon == 2 && tm.tm_mday == 31;
+ }
+
+-static void
++static int
+ bigtime_test (j)
+ int j;
+ {
+@@ -5417,8 +6173,39 @@
+ && lt->tm_wday == tm.tm_wday
+ && ((lt->tm_isdst < 0 ? -1 : 0 < lt->tm_isdst)
+ == (tm.tm_isdst < 0 ? -1 : 0 < tm.tm_isdst))))
+- exit (1);
++ return 0;
+ }
++ return 1;
++}
++
++static int
++year_2050_test ()
++{
++ /* The correct answer for 2050-02-01 00:00:00 in Pacific time,
++ ignoring leap seconds. */
++ unsigned long int answer = 2527315200UL;
++
++ struct tm tm;
++ time_t t;
++ tm.tm_year = 2050 - 1900;
++ tm.tm_mon = 2 - 1;
++ tm.tm_mday = 1;
++ tm.tm_hour = tm.tm_min = tm.tm_sec = 0;
++ tm.tm_isdst = -1;
++
++ /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0"
++ instead of "TZ=America/Vancouver" in order to detect the bug even
++ on systems that don't support the Olson extension, or don't have the
++ full zoneinfo tables installed. */
++ putenv ("TZ=PST8PDT,M4.1.0,M10.5.0");
++
++ t = mktime (&tm);
++
++ /* Check that the result is either a failure, or close enough
++ to the correct answer that we can assume the discrepancy is
++ due to leap seconds. */
++ return (t == (time_t) -1
++ || (0 < t && answer - 120 <= t && t <= answer + 120));
+ }
+
+ int
+@@ -5432,12 +6219,15 @@
+ isn't worth using anyway. */
+ alarm (60);
+
+- for (time_t_max = 1; 0 < time_t_max; time_t_max *= 2)
+- continue;
+- time_t_max--;
+- if ((time_t) -1 < 0)
+- for (time_t_min = -1; (time_t) (time_t_min * 2) < 0; time_t_min *= 2)
+- continue;
++ for (;;)
++ {
++ t = (time_t_max << 1) + 1;
++ if (t <= time_t_max)
++ break;
++ time_t_max = t;
++ }
++ time_t_min = - ((time_t) ~ (time_t) 0 == (time_t) -1) - time_t_max;
++
+ delta = time_t_max / 997; /* a suitable prime number */
+ for (i = 0; i < N_STRINGS; i++)
+ {
+@@ -5445,18 +6235,22 @@
+ putenv (tz_strings[i]);
+
+ for (t = 0; t <= time_t_max - delta; t += delta)
+- mktime_test (t);
+- mktime_test ((time_t) 1);
+- mktime_test ((time_t) (60 * 60));
+- mktime_test ((time_t) (60 * 60 * 24));
+-
+- for (j = 1; 0 < j; j *= 2)
+- bigtime_test (j);
+- bigtime_test (j - 1);
++ if (! mktime_test (t))
++ return 1;
++ if (! (mktime_test ((time_t) 1)
++ && mktime_test ((time_t) (60 * 60))
++ && mktime_test ((time_t) (60 * 60 * 24))))
++ return 1;
++
++ for (j = 1; ; j <<= 1)
++ if (! bigtime_test (j))
++ return 1;
++ else if (INT_MAX / 2 < j)
++ break;
++ if (! bigtime_test (INT_MAX))
++ return 1;
+ }
+- irix_6_4_bug ();
+- spring_forward_gap ();
+- exit (0);
++ return ! (irix_6_4_bug () && spring_forward_gap () && year_2050_test ());
+ }
+ _ACEOF
+ rm -f conftest$ac_exeext
diff --git a/app-shells/bash/files/bash-2.05b-destdir.patch b/app-shells/bash/files/bash-2.05b-destdir.patch
new file mode 100644
index 00000000000..a1089d293c1
--- /dev/null
+++ b/app-shells/bash/files/bash-2.05b-destdir.patch
@@ -0,0 +1,28 @@
+support DESTDIR install
+
+--- bash-2.05b/Makefile.in
++++ bash-2.05b/Makefile.in
+@@ -20,16 +20,16 @@
+ all: .made
+
+ # Include some boilerplate Gnu makefile definitions.
+-prefix = @prefix@
++prefix = $(DESTDIR)@prefix@
+
+-exec_prefix = @exec_prefix@
+-bindir = @bindir@
+-libdir = @libdir@
+-infodir = @infodir@
+-includedir = @includedir@
++exec_prefix = $(DESTDIR)@exec_prefix@
++bindir = $(DESTDIR)@bindir@
++libdir = $(DESTDIR)@libdir@
++infodir = $(DESTDIR)@infodir@
++includedir = $(DESTDIR)@includedir@
+ datadir = @datadir@
+
+-mandir = @mandir@
++mandir = $(DESTDIR)@mandir@
+ manpfx = man
+
+ man1ext = .1
diff --git a/app-shells/bash/files/bash-2.05b-empty-herestring.patch b/app-shells/bash/files/bash-2.05b-empty-herestring.patch
new file mode 100644
index 00000000000..db868c49aea
--- /dev/null
+++ b/app-shells/bash/files/bash-2.05b-empty-herestring.patch
@@ -0,0 +1,25 @@
+###################################################################
+# Added by Tavis Ormandy <taviso@gentoo.org> 01/05/2003
+# Reproduce with
+#
+# $ xargs <<< ${EMTPY_VARIABLE}
+# Segmentation fault.
+#
+# note: bash will still give you a "\n" with this patch, but this is
+# standard behaviour, if you need proof:
+#
+# $ wc -l <<< ""
+###############################
+
+--- bash-2.05b/redir.c
++++ bash-2.05b/redir.c
+@@ -263,7 +263,7 @@
+ int herelen, n, e;
+
+ herestr = expand_string_to_string (redirectee->word, 0);
+- herelen = strlen (herestr);
++ herelen = (herestr == NULL) ? 0 : strlen (herestr);
+
+ n = write (fd, herestr, herelen);
+ if (n == herelen)
+ {
diff --git a/app-shells/bash/files/bash-2.05b-fix-job-warning.patch b/app-shells/bash/files/bash-2.05b-fix-job-warning.patch
new file mode 100644
index 00000000000..fcec078d3d0
--- /dev/null
+++ b/app-shells/bash/files/bash-2.05b-fix-job-warning.patch
@@ -0,0 +1,14 @@
+fix obvious error:
+common.c:247:5: warning: format '%s' expects a matching 'char *' argument [-Wformat=]
+
+--- a/builtins/common.c
++++ b/builtins/common.c
+@@ -244,7 +244,7 @@
+ char *s;
+ {
+ if (s)
+- builtin_error ("%s: no job control");
++ builtin_error ("%s: no job control", s);
+ else
+ builtin_error ("no job control");
+ }
diff --git a/app-shells/bash/files/bash-2.05b-jobs.patch b/app-shells/bash/files/bash-2.05b-jobs.patch
new file mode 100644
index 00000000000..4ed475eab79
--- /dev/null
+++ b/app-shells/bash/files/bash-2.05b-jobs.patch
@@ -0,0 +1,28 @@
+Fix using bash with post-20040808 glibc ebuilds (from fedora)
+
+--- bash-2.05b/jobs.c
++++ bash-2.05b/jobs.c
+@@ -2423,6 +2423,7 @@
+ PROCESS *child;
+ pid_t pid;
+ int call_set_current, last_stopped_job, job, children_exited, waitpid_flags;
++ static int wcontinued_not_supported = 0;
+
+ call_set_current = children_exited = 0;
+ last_stopped_job = NO_JOB;
+@@ -2436,7 +2437,15 @@
+ : 0;
+ if (sigchld || block == 0)
+ waitpid_flags |= WNOHANG;
++ retry:
++ if (wcontinued_not_supported)
++ waitpid_flags &= ~WCONTINUED;
+ pid = WAITPID (-1, &status, waitpid_flags);
++ if (pid == -1 && errno == EINVAL)
++ {
++ wcontinued_not_supported = 1;
++ goto retry;
++ }
+
+ /* The check for WNOHANG is to make sure we decrement sigchld only
+ if it was non-zero before we called waitpid. */
diff --git a/app-shells/bash/files/bash-2.05b-parallel-build.patch b/app-shells/bash/files/bash-2.05b-parallel-build.patch
new file mode 100644
index 00000000000..382ffd6dfd5
--- /dev/null
+++ b/app-shells/bash/files/bash-2.05b-parallel-build.patch
@@ -0,0 +1,15 @@
+Fix parallel make
+
+http://bugs.gentoo.org/41002
+
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -604,7 +604,7 @@
+
+ config.h: stamp-h
+
+-stamp-h: config.status $(srcdir)/config.h.in $(srcdir)/config-top.h $(srcdir)/config-bot.h
++stamp-h: version.h config.status $(srcdir)/config.h.in $(srcdir)/config-top.h $(srcdir)/config-bot.h
+ CONFIG_FILES= CONFIG_HEADERS=config.h $(SHELL) ./config.status
+
+ config.status: $(srcdir)/configure
diff --git a/app-shells/bash/files/bash-2.05b-protos.patch b/app-shells/bash/files/bash-2.05b-protos.patch
new file mode 100644
index 00000000000..2a42ced5471
--- /dev/null
+++ b/app-shells/bash/files/bash-2.05b-protos.patch
@@ -0,0 +1,25 @@
+move prototypes around so they show up when needed
+
+--- a/externs.h
++++ b/externs.h
+@@ -327,6 +327,9 @@
+ #undef xstrchr
+ extern char *xstrchr __P((const char *, int));
+
++/* declarations for functions defined in lib/sh/zcatfd.c */
++extern int zcatfd __P((int, int, char *));
++
+ /* declarations for functions defined in lib/sh/zread.c */
+ extern ssize_t zread __P((int, char *, size_t));
+ extern ssize_t zreadintr __P((int, char *, size_t));
+--- a/jobs.h
++++ b/jobs.h
+@@ -175,6 +175,8 @@
+ extern void ignore_tty_job_signals __P((void));
+ extern void default_tty_job_signals __P((void));
+
++extern void close_pgrp_pipe __P((void));
++
+ #if defined (JOB_CONTROL)
+ extern int job_control;
+ #endif
diff --git a/app-shells/bash/files/bash-2.05b-rbash.patch b/app-shells/bash/files/bash-2.05b-rbash.patch
new file mode 100644
index 00000000000..19b89ca35e2
--- /dev/null
+++ b/app-shells/bash/files/bash-2.05b-rbash.patch
@@ -0,0 +1,27 @@
+Fix broken rbash functionality when used as a login shell via /etc/passwd
+
+http://bugs.gentoo.org/26854
+http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=170298
+
+Backported from bash-3.1
+
+--- bash-2.05b/shell.c
++++ bash-2.05b/shell.c
+@@ -1065,6 +1099,8 @@
+ if (restricted)
+ return 1;
+ temp = base_pathname (name);
++ if (*temp == '-')
++ temp++;
+ return (STREQ (temp, RESTRICTED_SHELL_NAME));
+ }
+
+@@ -1082,6 +1118,8 @@
+ char *temp;
+
+ temp = base_pathname (name);
++ if (*temp == '-')
++ temp++;
+ if (restricted || (STREQ (temp, RESTRICTED_SHELL_NAME)))
+ {
+ set_var_read_only ("PATH");
diff --git a/app-shells/bash/files/bash-3.0-afs.patch b/app-shells/bash/files/bash-3.0-afs.patch
new file mode 100644
index 00000000000..f07371c39eb
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-afs.patch
@@ -0,0 +1,20 @@
+Ripped from Fedora
+
+- Fixed AFS support for output redirection, so that the correct errors
+ are reported for other filesystems (bug #155373).
+
+https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=155373
+
+--- bash-3.0/redir.c.afs 2005-04-20 09:16:15.000000000 +0100
++++ bash-3.0/redir.c 2005-04-20 09:16:58.000000000 +0100
+@@ -596,7 +596,9 @@
+ fd = open (filename, flags, mode);
+ #if defined (AFS)
+ if ((fd < 0) && (errno == EACCES))
+- fd = open (filename, flags & ~O_CREAT, mode);
++ if ((fd = open (filename, flags & ~O_CREAT, mode)) < 0)
++ /* Restore previous errno. */
++ errno = EACCES;
+ #endif /* AFS */
+ }
+
diff --git a/app-shells/bash/files/bash-3.0-crash.patch b/app-shells/bash/files/bash-3.0-crash.patch
new file mode 100644
index 00000000000..984e85d82ed
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-crash.patch
@@ -0,0 +1,46 @@
+> Machine Type: i686-pc-linux-gnu
+>
+> Bash Version: 3.0
+> Patch Level: 0
+> Release Status: release
+>
+> Description:
+> GNU bash, version 3.00.0(1)-release (i686-pc-linux-gnu)
+> (and
+> GNU bash, version 2.05b.0(1)-release (i386-redhat-linux-gnu)
+>
+> dumps a core because of a null pointer "in make_bare_word
+> at make_cmd.c:90" (see gdb output below)
+
+Thanks for the report. Here's a quick fix:
+
+*** arrayfunc.c~ Sat Nov 6 15:08:29 2004
+--- arrayfunc.c Mon Jan 31 11:56:21 2005
+***************
+*** 709,713 ****
+ return ((char *)NULL);
+ }
+! else if (var == 0)
+ return ((char *)NULL);
+ else if (array_p (var) == 0)
+--- 709,713 ----
+ return ((char *)NULL);
+ }
+! else if (var == 0 || value_cell (var) == 0)
+ return ((char *)NULL);
+ else if (array_p (var) == 0)
+
+
+Chet
+
+--
+``The lyf so short, the craft so long to lerne.'' - Chaucer
+( ``Discere est Dolere'' -- chet )
+ Live...Laugh...Love
+Chet Ramey, ITS, CWRU chet@po.cwru.edu http://tiswww.tis.cwru.edu/~chet/
+
+
+_______________________________________________
+Bug-bash mailing list
+Bug-bash@gnu.org
+http://lists.gnu.org/mailman/listinfo/bug-bash
diff --git a/app-shells/bash/files/bash-3.0-darwin-conn.patch b/app-shells/bash/files/bash-3.0-darwin-conn.patch
new file mode 100644
index 00000000000..f83e4c3f701
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-darwin-conn.patch
@@ -0,0 +1,20 @@
+Sune Foldager writes:
+On Darwin (Mac OS X), bash incorrectly assumed that it has been called over a
+network connection (such as ssh, rsh etc.), when stdin stems from the pipe()
+system call. This is because bash's heuristic code for determining if it's
+been started over a net connection is incorrect on Darwin kernels.
+
+http://bugs.gentoo.org/79124
+
+--- a/lib/sh/netconn.c
++++ b/lib/sh/netconn.c
+@@ -53,7 +53,8 @@
+ l = sizeof(sa);
+ rv = getpeername(fd, &sa, &l);
+ /* Solaris 2.5 getpeername() returns EINVAL if the fd is not a socket. */
+- return ((rv < 0 && (errno == ENOTSOCK || errno == EINVAL)) ? 0 : 1);
++ /* Darwin 7.7.0 getpeername() returns ENOTCONN if the fd was created with pipe(). */
++ return ((rv < 0 && (errno == ENOTSOCK || errno == ENOTCONN || errno == EINVAL)) ? 0 : 1);
+ #else /* !HAVE_GETPEERNAME || SVR4_2 || __BEOS__ */
+ # if defined (SVR4) || defined (SVR4_2)
+ /* Sockets on SVR4 and SVR4.2 are character special (streams) devices. */
diff --git a/app-shells/bash/files/bash-3.0-histtimeformat.patch b/app-shells/bash/files/bash-3.0-histtimeformat.patch
new file mode 100644
index 00000000000..b910600fd89
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-histtimeformat.patch
@@ -0,0 +1,56 @@
+Ripped from Debian
+
+http://lists.gnu.org/archive/html/bug-bash/2004-08/msg00008.html
+
+From: Enrique Perez-Terron <enrio@online.no>
+To: bug-bash@gnu.org
+Subject: When using HISTTIMEFORMAT, the date and the command are run
+ together.
+Date: Sun, 01 Aug 2004 18:36:45 +0200
+
+Configuration Information [Automatically generated, do not change]:
+Machine: i586
+OS: linux-gnu
+Compiler: gcc
+Compilation CFLAGS: -DPROGRAM='bash' -DCONF_HOSTTYPE='i586'
+-DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='i586-pc-linux-gnu'
+-DCONF_VENDOR='pc' -DLOCALEDIR='/usr/local/share/locale'
+-DPACKAGE='bash' -DSHELL -DHAVE_CONFIG_H -I. -I. -I./include -I./lib
+-g -O2
+uname output: Linux arabia.home.lan 2.6.6-1.435.2.3 #1 Thu Jul 1
+09:11:28 EDT 2004 i586 i586 i386 GNU/Linux
+Machine Type: i586-pc-linux-gnu
+
+# DP: Add space separating the time and the command in the
+# DP: output from the history builtin command.
+
+Bash Version: 3.0
+Patch Level: 0
+Release Status: release
+
+Description:
+ There is no space separating the time and the command in the
+ output from the history builtin command.
+
+Repeat-By:
+ $ export HISTTIMEFORMAT=_A_format_string_
+ $ history 3
+ 997 _A_format_string_echo $BASH_VERSION
+ 998 _A_format_string_export HISTTIMEFORMAT=_A_format_string_
+ 999 _A_format_string_history 3
+
+Fix:
+--- ./builtins/history.def.orig 2003-12-20 00:02:09.000000000 +0100
++++ ./builtins/history.def 2004-08-01 18:18:02.652720102 +0200
+@@ -287,9 +287,10 @@
+ QUIT;
+
+ timestr = (histtimefmt && *histtimefmt) ? histtime (hlist[i], histtimefmt) : (char *)NULL;
+- printf ("%5d%c %s%s\n", i + history_base,
++ printf ("%5d%c %s%s%s\n", i + history_base,
+ histdata(i) ? '*' : ' ',
+ ((timestr && *timestr) ? timestr : ""),
++ ((timestr && *timestr) ? " " : ""),
+ histline(i));
+ i++;
+ }
diff --git a/app-shells/bash/files/bash-3.0-jobs.patch b/app-shells/bash/files/bash-3.0-jobs.patch
new file mode 100644
index 00000000000..72c149c71cf
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-jobs.patch
@@ -0,0 +1,56 @@
+Ripped from Fedora
+
+* Wed Sep 8 2004 Tim Waugh <twaugh@redhat.com> 3.0-13
+- Check for EINVAL from waitpid() and avoid WCONTINUED in that case.
+- Fixed jobs4 test.
+
+From: Tim Waugh
+Subject: [patch] bash-3.0: avoid WCONTINUED if invalid
+Date: Wed, 8 Sep 2004 16:52:38 +0100
+User-agent: Mutt/1.4.1i
+
+Hi,
+
+GNU libc defines WCONTINUED, but (at least on Linux 2.4.x kernels)
+waitpid() returns -1 with errno set to EINVAL if WCONTINUED is
+supplied in options.
+
+Here is a patch to retry without WCONTINUED set in that case.
+
+Tim.
+
+--- bash-3.0/tests/jobs4.sub
++++ bash-3.0/tests/jobs4.sub
+@@ -18,5 +18,5 @@
+
+ wait
+
+-cat &
++sleep 100 &
+ kill -1 %% && echo i killed it || echo could not kill it
+--- bash-3.0/jobs.c
++++ bash-3.0/jobs.c
+@@ -2475,6 +2475,7 @@
+ PROCESS *child;
+ pid_t pid;
+ int call_set_current, last_stopped_job, job, children_exited, waitpid_flags;
++ static int wcontinued_not_supported = 0;
+
+ call_set_current = children_exited = 0;
+ last_stopped_job = NO_JOB;
+@@ -2488,7 +2489,15 @@
+ : 0;
+ if (sigchld || block == 0)
+ waitpid_flags |= WNOHANG;
++ retry:
++ if (wcontinued_not_supported)
++ waitpid_flags &= ~WCONTINUED;
+ pid = WAITPID (-1, &status, waitpid_flags);
++ if (pid == -1 && errno == EINVAL)
++ {
++ wcontinued_not_supported = 1;
++ goto retry;
++ }
+
+ /* The check for WNOHANG is to make sure we decrement sigchld only
+ if it was non-zero before we called waitpid. */
diff --git a/app-shells/bash/files/bash-3.0-locale.patch b/app-shells/bash/files/bash-3.0-locale.patch
new file mode 100644
index 00000000000..ea1ef3deae3
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-locale.patch
@@ -0,0 +1,112 @@
+Ripped from SuSe
+
+http://lists.gnu.org/archive/html/bug-bash/2004-08/msg00005.html
+
+From: schwab@suse.de
+To: bug-bash@gnu.org
+Subject: HISTTIMEFORMAT doesn't track locale changes
+Date: Sun, 1 Aug 2004 11:14:00 +0200 (CEST)
+
+Configuration Information [Automatically generated, do not change]:
+Machine: ia64
+OS: linux-gnu
+Compiler: gcc
+Compilation CFLAGS: -DPROGRAM='bash' -DCONF_HOSTTYPE='ia64' -DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='ia64-unknown-linux-gnu' -DCONF_VENDOR='unknown' -DLOCALEDIR='/usr/local/share/locale' -DPACKAGE='bash' -DSHELL -DHAVE_CONFIG_H -I. -I../bash-3.0 -I../bash-3.0/include -I../bash-3.0/lib -O2 -g
+uname output: Linux sykes 2.6.5-22-default #1 SMP Fri Jul 2 13:43:23 UTC 2004 ia64 ia64 ia64 GNU/Linux
+Machine Type: ia64-unknown-linux-gnu
+
+Bash Version: 3.0
+Patch Level: 0
+Release Status: release
+
+Description:
+Bash doesn't use the current locale when formatting HISTTIMEFORMAT.
+
+Repeat-By:
+sykes:/tmp/bash/Build/:[0]$ locale
+LANG=de_DE.UTF-8
+LC_CTYPE="de_DE.UTF-8"
+LC_NUMERIC=POSIX
+LC_TIME=POSIX
+LC_COLLATE=POSIX
+LC_MONETARY="de_DE.UTF-8"
+LC_MESSAGES=en_US.UTF-8
+LC_PAPER="de_DE.UTF-8"
+LC_NAME="de_DE.UTF-8"
+LC_ADDRESS="de_DE.UTF-8"
+LC_TELEPHONE="de_DE.UTF-8"
+LC_MEASUREMENT="de_DE.UTF-8"
+LC_IDENTIFICATION="de_DE.UTF-8"
+LC_ALL=
+sykes:/tmp/bash/Build/:[0]$ history 1
+ 1502 history 1
+sykes:/tmp/bash/Build/:[0]$ HISTTIMEFORMAT=%c
+sykes:/tmp/bash/Build/:[0]$ history 1
+ 1504 Sun Aug 1 10:56:59 2004history 1
+sykes:/tmp/bash/Build/:[0]$ export LC_TIME=$LANG
+sykes:/tmp/bash/Build/:[0]$ history 1
+ 1506 Sun Aug 1 10:57:24 2004history 1
+
+--- bash-3.0/locale.c
++++ bash-3.0/locale.c
+@@ -71,9 +71,10 @@ set_default_locale ()
+ textdomain (PACKAGE);
+ }
+
+-/* Set default values for LC_CTYPE, LC_COLLATE, LC_MESSAGES and LC_NUMERIC
+- if they are not specified in the environment, but LC_ALL is. This
+- should be called from main() after parsing the environment. */
++/* Set default values for LC_CTYPE, LC_COLLATE, LC_MESSAGES, LC_NUMERIC
++ and LC_TIME if they are not specified in the environment, but LC_ALL
++ is. This should be called from main() after parsing the
++ environment. */
+ void
+ set_default_locale_vars ()
+ {
+@@ -109,6 +110,12 @@ set_default_locale_vars ()
+ setlocale (LC_NUMERIC, lc_all);
+ # endif /* LC_NUMERIC */
+
++# if defined (LC_TIME)
++ val = get_string_value ("LC_TIME");
++ if (val == 0 && lc_all && *lc_all)
++ setlocale (LC_TIME, lc_all);
++# endif /* LC_TIME */
++
+ #endif /* HAVE_SETLOCALE */
+
+ val = get_string_value ("TEXTDOMAIN");
+@@ -213,6 +220,13 @@ set_locale_var (var, value)
+ return (setlocale (LC_NUMERIC, get_locale_var ("LC_NUMERIC")) != 0);
+ # endif /* LC_NUMERIC */
+ }
++ else if (var[3] == 'T' && var[4] == 'I') /* LC_TIME */
++ {
++# if defined (LC_TIME)
++ if (lc_all == 0 || *lc_all == '\0')
++ return (setlocale (LC_TIME, get_locale_var ("LC_TIME")) != 0);
++# endif /* LC_TIME */
++ }
+ #endif /* HAVE_SETLOCALE */
+
+ return (0);
+@@ -285,6 +299,9 @@ reset_locale_vars ()
+ # if defined (LC_NUMERIC)
+ setlocale (LC_NUMERIC, get_locale_var ("LC_NUMERIC"));
+ # endif
++# if defined (LC_TIME)
++ setlocale (LC_TIME, get_locale_var ("LC_TIME"));
++# endif
+
+ locale_setblanks ();
+
+--- bash-3.0/variables.c
++++ bash-3.0/variables.c
+@@ -3646,6 +3646,7 @@ static struct name_and_function special_
+ { "LC_CTYPE", sv_locale },
+ { "LC_MESSAGES", sv_locale },
+ { "LC_NUMERIC", sv_locale },
++ { "LC_TIME", sv_locale },
+
+ { "MAIL", sv_mail },
+ { "MAILCHECK", sv_mail },
diff --git a/app-shells/bash/files/bash-3.0-manpage.patch b/app-shells/bash/files/bash-3.0-manpage.patch
new file mode 100644
index 00000000000..08e3143e542
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-manpage.patch
@@ -0,0 +1,15 @@
+Ripped from Fedora
+
+fix obvious display bug
+
+--- bash-3.0/doc/bash.1
++++ bash-3.0/doc/bash.1
+@@ -3929,7 +3929,7 @@
+ .B SIGHUP
+ to all jobs when an interactive login shell exits.
+ .PP
+-If \Bbash\fP is waiting for a command to complete and receives a signal
++If \fBbash\fP is waiting for a command to complete and receives a signal
+ for which a trap has been set, the trap will not be executed until
+ the command completes.
+ When \fBbash\fP is waiting for an asynchronous command via the \fBwait\fP
diff --git a/app-shells/bash/files/bash-3.0-multibyteifs.patch b/app-shells/bash/files/bash-3.0-multibyteifs.patch
new file mode 100644
index 00000000000..1e74832b638
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-multibyteifs.patch
@@ -0,0 +1,281 @@
+From: Tim Waugh <twaugh@redhat.com>
+To: bug-bash@gnu.org
+Subject: [patch] multibyte IFS values
+Date: Tue, 24 Aug 2004 13:34:59 +0100
+
+Hi,
+
+Here is a patch to address these problems:
+
+http://lists.gnu.org/archive/html/bug-bash/2004-07/msg00294.html
+http://lists.gnu.org/archive/html/bug-bash/2004-07/msg00296.html
+
+It works well for me at least.
+
+Tim.
+
+--- bash-3.0/subst.c.multibyteifs 2004-08-20 15:22:48.366497771 +0100
++++ bash-3.0/subst.c 2004-08-20 18:13:30.833624616 +0100
+@@ -124,7 +124,12 @@
+ SHELL_VAR *ifs_var;
+ char *ifs_value;
+ unsigned char ifs_cmap[UCHAR_MAX + 1];
++#if defined (HANDLE_MULTIBYTE)
++unsigned char ifs_firstc[MB_LEN_MAX];
++size_t ifs_firstc_len;
++#else
+ unsigned char ifs_firstc;
++#endif
+
+ /* Extern functions and variables from different files. */
+ extern int last_command_exit_value, last_command_exit_signal;
+@@ -862,8 +867,14 @@
+ char *charlist;
+ {
+ register int i = *sindex;
++ size_t slen;
++#if defined (HANDLE_MULTIBYTE)
++ size_t clen;
++ wchar_t *wcharlist = NULL;
++#endif
+ int c;
+ char *temp;
++ DECLARE_MBSTATE;
+
+ if (charlist[0] == '\'' && charlist[1] == '\0')
+ {
+@@ -872,18 +883,65 @@
+ return temp;
+ }
+
+- for (i = *sindex; c = string[i]; i++)
++ slen = strlen (string + *sindex) + *sindex;
++ i = *sindex;
++#if defined (HANDLE_MULTIBYTE)
++ clen = strlen (charlist);
++#endif
++ while ((c = string[i]))
+ {
++#if defined (HANDLE_MULTIBYTE)
++ size_t mblength;
++#endif
++
+ if (c == CTLESC)
+ {
+- i++;
++ i += 2;
+ continue;
+ }
+
++#if defined (HANDLE_MULTIBYTE)
++ mblength = mblen (string + i, slen - i);
++ if (mblength > 1)
++ {
++ wchar_t wc;
++ size_t mblength = mbtowc (&wc, string + i, slen - i);
++ if (MB_INVALIDCH (mblength))
++ {
++ if (MEMBER (c, charlist))
++ break;
++ }
++ else
++ {
++ if (!wcharlist)
++ {
++ size_t len = mbstowcs (wcharlist, charlist, 0);
++ if (len == -1)
++ len = 0;
++ wcharlist = xmalloc (sizeof (wchar_t) * (len + 1));
++ mbstowcs (wcharlist, charlist, 1 + len);
++ }
++
++ if (wcschr (wcharlist, wc))
++ {
++ break;
++ }
++ }
++ }
++ else
++#endif
++
+ if (MEMBER (c, charlist))
+ break;
++
++ ADVANCE_CHAR (string, slen, i);
+ }
+
++#if defined (HANDLE_MULTIBYTE)
++ if (wcharlist)
++ free (wcharlist);
++#endif
++
+ temp = substring (string, *sindex, i);
+ *sindex = i;
+
+@@ -1456,11 +1514,36 @@
+ d2 = 0;
+ if (delims)
+ {
+- d2 = (char *)xmalloc (strlen (delims) + 1);
+- for (i = ts = 0; delims[i]; i++)
++ size_t slength = strlen (delims);
++#if defined (HANDLE_MULTIBYTE)
++ size_t mblength = 1;
++ DECLARE_MBSTATE;
++#endif
++
++ d2 = (char *)xmalloc (slength + 1);
++ i = ts = 0;
++ while (delims[i])
+ {
++#if defined (HANDLE_MULTIBYTE)
++ mbstate_t state_bak = state;
++ mblength = mbrlen (delims + i, slength, &state);
++
++ if (MB_INVALIDCH (mblength))
++ state = state_bak;
++ else if (mblength != 1)
++ {
++ memcpy (d2 + ts, delims + i, mblength);
++ ts += mblength;
++ i += mblength;
++ slength -= mblength;
++ continue;
++ }
++#endif
++
+ if (whitespace(delims[i]) == 0)
+ d2[ts++] = delims[i];
++ i++;
++ slength--;
+ }
+ d2[ts] = '\0';
+ }
+@@ -1654,10 +1737,19 @@
+ string_list_dollar_star (list)
+ WORD_LIST *list;
+ {
++#if defined (HANDLE_MULTIBYTE)
++ char sep[MB_CUR_MAX + 1];
++#else
+ char sep[2];
++#endif
+
++#if defined (HANDLE_MULTIBYTE)
++ memcpy (sep, ifs_firstc, ifs_firstc_len);
++ sep[ifs_firstc_len] = '\0';
++#else
+ sep[0] = ifs_firstc;
+ sep[1] = '\0';
++#endif
+
+ return (string_list_internal (list, sep));
+ }
+@@ -1676,14 +1768,41 @@
+ WORD_LIST *list;
+ int quoted;
+ {
+- char *ifs, sep[2];
++ char *ifs;
++#if defined (HANDLE_MULTIBYTE)
++ char sep[MB_CUR_MAX + 1];
++#else
++ char sep[2];
++#endif
+ WORD_LIST *tlist;
+
+ /* XXX this could just be ifs = ifs_value; */
+ ifs = ifs_var ? value_cell (ifs_var) : (char *)0;
+
++#if defined (HANDLE_MULTIBYTE)
++ if (ifs && *ifs)
++ {
++ size_t mblength = mblen (ifs, strnlen (ifs, MB_CUR_MAX));
++ if (MB_INVALIDCH (mblength))
++ {
++ sep[0] = *ifs;
++ sep[1] = '\0';
++ }
++ else
++ {
++ memcpy (sep, ifs, mblength);
++ sep[mblength] = '\0';
++ }
++ }
++ else
++ {
++ sep[0] = ' ';
++ sep[1] = '\0';
++ }
++#else
+ sep[0] = (ifs == 0 || *ifs == 0) ? ' ' : *ifs;
+ sep[1] = '\0';
++#endif
+
+ tlist = ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) || (ifs && *ifs == 0))
+ ? quote_list (list)
+@@ -1732,6 +1851,7 @@
+ WORD_DESC *t;
+ char *current_word, *s;
+ int sindex, sh_style_split, whitesep;
++ size_t slen = 0;
+
+ if (!string || !*string)
+ return ((WORD_LIST *)NULL);
+@@ -1805,7 +1925,12 @@
+
+ /* Move past the current separator character. */
+ if (string[sindex])
+- sindex++;
++ {
++ DECLARE_MBSTATE;
++ if (!slen)
++ slen = strlen (string);
++ ADVANCE_CHAR (string, slen, sindex);
++ }
+
+ /* Now skip sequences of space, tab, or newline characters if they are
+ in the list of separators. */
+@@ -6796,7 +6921,27 @@
+ ifs_cmap[uc] = 1;
+ }
+
++#if defined (HANDLE_MULTIBYTE)
++ if (!ifs_value)
++ {
++ ifs_firstc[0] = '\0';
++ ifs_firstc_len = 1;
++ }
++ else
++ {
++ size_t ifs_len = strnlen (ifs_value, MB_CUR_MAX);
++ ifs_firstc_len = mblen (ifs_value, ifs_len);
++ if (MB_INVALIDCH (ifs_firstc_len))
++ {
++ ifs_firstc[0] = '\0';
++ ifs_firstc_len = 1;
++ }
++ else
++ memcpy (ifs_firstc, ifs_value, ifs_firstc_len);
++ }
++#else
+ ifs_firstc = ifs_value ? *ifs_value : 0;
++#endif
+ }
+
+ char *
+--- bash-3.0/subst.h.multibyteifs 2004-08-20 15:51:08.301074583 +0100
++++ bash-3.0/subst.h 2004-08-20 15:51:39.070206473 +0100
+@@ -231,7 +231,12 @@
+ extern SHELL_VAR *ifs_var;
+ extern char *ifs_value;
+ extern unsigned char ifs_cmap[];
++#if defined (HANDLE_MULTIBYTE)
++extern unsigned char ifs_firstc[];
++extern size_t ifs_firstc_len;
++#else
+ extern unsigned char ifs_firstc;
++#endif
+
+ /* Evaluates to 1 if C is a character in $IFS. */
+ #define isifs(c) (ifs_cmap[(unsigned char)(c)] != 0)
diff --git a/app-shells/bash/files/bash-3.0-pgrp-pipe-fix.patch b/app-shells/bash/files/bash-3.0-pgrp-pipe-fix.patch
new file mode 100644
index 00000000000..35b0b7d0592
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-pgrp-pipe-fix.patch
@@ -0,0 +1,20 @@
+Fix an error when using pipes and PGRP_PIPE is enabled.
+( exec 3>&1; : `echo >&3` )
+bash: 3: Bad file descriptor
+
+http://bugs.gentoo.org/92349
+
+Patch from upstream
+
+*** jobs.c Wed Sep 8 11:08:16 2004
+--- jobs.c Thu Jun 30 17:21:26 2005
+***************
+*** 3456,3459 ****
+--- 3901,3907 ----
+ stop_making_children ();
+ start_pipeline ();
++ #if defined (PGRP_PIPE)
++ pipe_close (pgrp_pipe);
++ #endif
+ delete_all_jobs (0);
+ set_job_control (0);
diff --git a/app-shells/bash/files/bash-3.0-protos.patch b/app-shells/bash/files/bash-3.0-protos.patch
new file mode 100644
index 00000000000..b1337b20395
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-protos.patch
@@ -0,0 +1,68 @@
+move prototypes around so they show up when needed
+
+--- a/externs.h
++++ b/externs.h
+@@ -327,6 +327,9 @@
+ #undef xstrchr
+ extern char *xstrchr __P((const char *, int));
+
++/* declarations for functions defined in lib/sh/zcatfd.c */
++extern int zcatfd __P((int, int, char *));
++
+ /* declarations for functions defined in lib/sh/zread.c */
+ extern ssize_t zread __P((int, char *, size_t));
+ extern ssize_t zreadintr __P((int, char *, size_t));
+--- a/jobs.h
++++ b/jobs.h
+@@ -175,6 +175,8 @@
+ extern void ignore_tty_job_signals __P((void));
+ extern void default_tty_job_signals __P((void));
+
++extern void close_pgrp_pipe __P((void));
++
+ #if defined (JOB_CONTROL)
+ extern int job_control;
+ #endif
+--- a/general.c
++++ b/general.c
+@@ -39,6 +39,8 @@
+ #include "bashintl.h"
+
+ #include "shell.h"
++#include "test.h"
++
+ #include <tilde/tilde.h>
+
+ #if !defined (errno)
+--- a/builtins/evalfile.c
++++ b/builtins/evalfile.c
+@@ -39,6 +39,7 @@
+ #include "../flags.h"
+ #include "../input.h"
+ #include "../execute_cmd.h"
++#include "../trap.h"
+
+ #if defined (HISTORY)
+ # include "../bashhist.h"
+--- a/lib/glob/strmatch.c
++++ b/lib/glob/strmatch.c
+@@ -25,9 +25,6 @@
+ #include "strmatch.h"
+
+ extern int xstrmatch __P((char *, char *, int));
+-#if defined (HAVE_MULTIBYTE)
+-extern int internal_wstrmatch __P((wchar_t *, wchar_t *, int));
+-#endif
+
+ int
+ strmatch (pattern, string, flags)
+--- a/lib/glob/strmatch.h
++++ b/lib/glob/strmatch.h
+@@ -57,6 +57,7 @@
+
+ #if HANDLE_MULTIBYTE
+ extern int wcsmatch __P((wchar_t *, wchar_t *, int));
++extern int internal_wstrmatch __P((wchar_t *, wchar_t *, int));
+ #endif
+
+ #endif /* _STRMATCH_H */
diff --git a/app-shells/bash/files/bash-3.0-pwd.patch b/app-shells/bash/files/bash-3.0-pwd.patch
new file mode 100644
index 00000000000..77f0918fb4d
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-pwd.patch
@@ -0,0 +1,16 @@
+Ripped from Fedora
+
+* Tue Mar 15 2005 Tim Waugh <twaugh@redhat.com> 3.0-30
+- Fix PS1 expansion crash when PWD is unset (bg #151116).
+
+--- bash-3.0/parse.y.pwd 2005-03-15 14:22:36.000000000 +0000
++++ bash-3.0/parse.y 2005-03-15 14:22:37.000000000 +0000
+@@ -4103,7 +4103,7 @@
+ #define ROOT_PATH(x) ((x)[0] == '/' && (x)[1] == 0)
+ #define DOUBLE_SLASH_ROOT(x) ((x)[0] == '/' && (x)[1] == '/' && (x)[2] == 0)
+ /* Abbreviate \W as ~ if $PWD == $HOME */
+- if (c == 'W' && (((t = get_string_value ("HOME")) == 0) || STREQ (t, temp) == 0))
++ if (c == 'W' && (((t = get_string_value ("HOME")) == 0) || STREQ (t, t_string) == 0))
+ {
+ if (ROOT_PATH (t_string) == 0 && DOUBLE_SLASH_ROOT (t_string) == 0)
+ {
diff --git a/app-shells/bash/files/bash-3.0-rbash.patch b/app-shells/bash/files/bash-3.0-rbash.patch
new file mode 100644
index 00000000000..e804d20f06a
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-rbash.patch
@@ -0,0 +1,18 @@
+Fix broken rbash functionality when used as a login shell via /etc/passwd
+
+http://bugs.gentoo.org/26854
+http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=170298
+
+Backported from bash-3.1
+
+--- bash-3.0/shell.c
++++ bash-3.0/shell.c
+@@ -1089,6 +1099,8 @@
+ if (restricted)
+ return 1;
+ temp = base_pathname (name);
++ if (*temp == '-')
++ temp++;
+ return (STREQ (temp, RESTRICTED_SHELL_NAME));
+ }
+
diff --git a/app-shells/bash/files/bash-3.0-read-builtin-pipe.patch b/app-shells/bash/files/bash-3.0-read-builtin-pipe.patch
new file mode 100644
index 00000000000..466e45ae300
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-read-builtin-pipe.patch
@@ -0,0 +1,20 @@
+Description:
+When using 'read -u 3' or the like, and the pipe-buf already contains
+more than one line, the first line is returned, and bytes up to the next
+multiple of 128 are skipped.
+
+http://lists.gnu.org/archive/html/bug-bash/2005-03/msg00168.html
+http://lists.gnu.org/archive/html/bug-bash/2005-03/msg00173.html
+http://bugs.gentoo.org/show_bug.cgi?id=87093
+
+--- builtins/read.def
++++ builtins/read.def
+@@ -276,7 +276,7 @@
+ input_is_tty = isatty (fd);
+ if (input_is_tty == 0)
+ #ifndef __CYGWIN__
+- input_is_pipe = (lseek (0, 0L, SEEK_CUR) < 0) && (errno == ESPIPE);
++ input_is_pipe = (lseek (fd, 0L, SEEK_CUR) < 0) && (errno == ESPIPE);
+ #else
+ input_is_pipe = 1;
+ #endif
diff --git a/app-shells/bash/files/bash-3.0-read-e-segfault.patch b/app-shells/bash/files/bash-3.0-read-e-segfault.patch
new file mode 100644
index 00000000000..e578631c424
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-read-e-segfault.patch
@@ -0,0 +1,26 @@
+> Hmm, a better patch for this seems to be:
+
+I installed this patch a while back:
+
+*** ../bash-3.0-patched/lib/readline/display.c Wed Sep 8 11:07:51 2004
+--- lib/readline/display.c Fri Nov 12 13:31:42 2004
+***************
+*** 336,340 ****
+
+ local_prompt = local_prompt_prefix = (char *)0;
+! prompt_last_invisible = prompt_visible_length = 0;
+
+ if (prompt == 0 || *prompt == 0)
+--- 341,346 ----
+
+ local_prompt = local_prompt_prefix = (char *)0;
+! prompt_last_invisible = prompt_invis_chars_first_line = 0;
+! prompt_visible_length = prompt_physical_chars = 0;
+
+ if (prompt == 0 || *prompt == 0)
+
+--
+``The lyf so short, the craft so long to lerne.'' - Chaucer
+( ``Discere est Dolere'' -- chet )
+ Live...Laugh...Love
+Chet Ramey, ITS, CWRU chet@po.cwru.edu http://tiswww.tis.cwru.edu/~chet/
diff --git a/app-shells/bash/files/bash-3.0-read-memleak.patch b/app-shells/bash/files/bash-3.0-read-memleak.patch
new file mode 100644
index 00000000000..6cb769f3af3
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-read-memleak.patch
@@ -0,0 +1,15 @@
+Ripped from Fedora
+
+http://lists.gnu.org/archive/html/bug-bash/2005-12/msg00013.html
+https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=173283
+
+--- bash-3.0/builtins/read.def
++++ bash-3.0/builtins/read.def
+@@ -461,6 +461,7 @@
+ if (retval < 0)
+ {
+ builtin_error (_("read error: %d: %s"), fd, strerror (errno));
++ run_unwind_frame ("read_builtin");
+ return (EXECUTION_FAILURE);
+ }
+ #endif
diff --git a/app-shells/bash/files/bash-3.0-strnlen.patch b/app-shells/bash/files/bash-3.0-strnlen.patch
new file mode 100644
index 00000000000..056e00b3de5
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-strnlen.patch
@@ -0,0 +1,175 @@
+Add strnlen function for non-glibc systems, as one of Fedora's patches requires it.
+
+--- bash-3.0/configure.in
++++ bash-3.0/configure.in
+@@ -613,6 +613,9 @@
+ AC_LIBOBJ(vprint)
+ fi
+
++AC_CHECK_FUNCS([strnlen])
++AC_LIBOBJ(strnlen)
++
+ dnl signal stuff
+ AC_TYPE_SIGNAL
+
+--- /dev/null
++++ bash-3.0/lib/sh/strnlen.c
+@@ -0,0 +1,27 @@
++/*
++ Copyright (C) 2005 Gentoo Foundation
++
++ This program is free software; you can redistribute it and/or
++ modify it under the terms of the GNU General Public License
++ as published by the Free Software Foundation; either version 2
++ of the License, or (at your option) any later version.
++
++ This program is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ GNU General Public License for more details.
++
++ You should have received a copy of the GNU General Public License
++ along with this program; if not, write to the Free Software
++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, US
++*/
++
++#include <stdlib.h>
++
++size_t strnlen(const char *s, size_t n)
++{
++ int i;
++ for (i=0; s[i] && i<n; i++)
++ /* noop */ ;
++ return i;
++}
+--- bash-3.0/configure
++++ bash-3.0/configure
+@@ -10696,9 +10696,127 @@ _ACEOF
+ fi
+
+ if test "$ac_cv_func_vprintf" = no && test "$ac_cv_func__doprnt" = "yes"; then
+- LIBOBJS="$LIBOBJS vprint.$ac_objext"
++ case $LIBOBJS in
++ "vprint.$ac_objext" | \
++ *" vprint.$ac_objext" | \
++ "vprint.$ac_objext "* | \
++ *" vprint.$ac_objext "* ) ;;
++ *) LIBOBJS="$LIBOBJS vprint.$ac_objext" ;;
++esac
++
+ fi
+
++
++for ac_func in strnlen
++do
++as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
++echo "$as_me:$LINENO: checking for $ac_func" >&5
++echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
++if eval "test \"\${$as_ac_var+set}\" = set"; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
++ For example, HP-UX 11i <limits.h> declares gettimeofday. */
++#define $ac_func innocuous_$ac_func
++
++/* System header to define __stub macros and hopefully few prototypes,
++ which can conflict with char $ac_func (); below.
++ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
++ <limits.h> exists even on freestanding compilers. */
++
++#ifdef __STDC__
++# include <limits.h>
++#else
++# include <assert.h>
++#endif
++
++#undef $ac_func
++
++/* Override any gcc2 internal prototype to avoid an error. */
++#ifdef __cplusplus
++extern "C"
++{
++#endif
++/* We use char because int might match the return type of a gcc2
++ builtin and then its argument prototype would still apply. */
++char $ac_func ();
++/* The GNU C library defines this for functions which it implements
++ to always fail with ENOSYS. Some functions are actually named
++ something starting with __ and the normal name is an alias. */
++#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
++choke me
++#else
++char (*f) () = $ac_func;
++#endif
++#ifdef __cplusplus
++}
++#endif
++
++int
++main ()
++{
++return f != $ac_func;
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++ (eval $ac_link) 2>conftest.er1
++ ac_status=$?
++ grep -v '^ *+' conftest.er1 >conftest.err
++ rm -f conftest.er1
++ cat conftest.err >&5
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -z "$ac_c_werror_flag"
++ || test ! -s conftest.err'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; } &&
++ { ac_try='test -s conftest$ac_exeext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ eval "$as_ac_var=yes"
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++eval "$as_ac_var=no"
++fi
++rm -f conftest.err conftest.$ac_objext \
++ conftest$ac_exeext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
++echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
++if test `eval echo '${'$as_ac_var'}'` = yes; then
++ cat >>confdefs.h <<_ACEOF
++#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
++_ACEOF
++
++fi
++done
++
++case $LIBOBJS in
++ "strnlen.$ac_objext" | \
++ *" strnlen.$ac_objext" | \
++ "strnlen.$ac_objext "* | \
++ *" strnlen.$ac_objext "* ) ;;
++ *) LIBOBJS="$LIBOBJS strnlen.$ac_objext" ;;
++esac
++
++
+ echo "$as_me:$LINENO: checking return type of signal handlers" >&5
+ echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6
+ if test "${ac_cv_type_signal+set}" = set; then
diff --git a/app-shells/bash/files/bash-3.0-subshell.patch b/app-shells/bash/files/bash-3.0-subshell.patch
new file mode 100644
index 00000000000..a1d7dfe7d34
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-subshell.patch
@@ -0,0 +1,39 @@
+Ripped from Fedora which took this from upstream
+
+* Tue Nov 22 2005 Tim Waugh <twaugh@redhat.com> 3.0-37
+- Applied patch from upstream to fix parsing problem (bug #146638).
+
+http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=146638
+
+--- bash-3.0/parse.y.subshell 2005-11-22 13:19:11.000000000 +0000
++++ bash-3.0/parse.y 2005-11-22 13:19:24.000000000 +0000
+@@ -2055,14 +2055,6 @@
+ if (uc)
+ shell_input_line_index++;
+
+- if MBTEST(uc == '\\' && remove_quoted_newline && shell_input_line[shell_input_line_index] == '\n')
+- {
+- if (SHOULD_PROMPT ())
+- prompt_again ();
+- line_number++;
+- goto restart_read;
+- }
+-
+ #if defined (ALIAS) || defined (DPAREN_ARITHMETIC)
+ /* If UC is NULL, we have reached the end of the current input string. If
+ pushed_string_list is non-empty, it's time to pop to the previous string
+@@ -2078,6 +2070,14 @@
+ }
+ #endif /* ALIAS || DPAREN_ARITHMETIC */
+
++ if MBTEST(uc == '\\' && remove_quoted_newline && shell_input_line[shell_input_line_index] == '\n')
++ {
++ if (SHOULD_PROMPT ())
++ prompt_again ();
++ line_number++;
++ goto restart_read;
++ }
++
+ if (!uc && shell_input_line_terminator == EOF)
+ return ((shell_input_line_index != 0) ? '\n' : EOF);
+
diff --git a/app-shells/bash/files/bash-3.0-trap-fg-signals.patch b/app-shells/bash/files/bash-3.0-trap-fg-signals.patch
new file mode 100644
index 00000000000..cde18326ed2
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-trap-fg-signals.patch
@@ -0,0 +1,23 @@
+Don't barf on handled signals inside of scripts. Makes for nicer output.
+
+patch by Martin Schlemmer <azarah@gentoo.org>
+
+--- jobs.c
++++ jobs.c
+@@ -2893,11 +2893,11 @@
+ }
+ else if (IS_FOREGROUND (job))
+ {
+-#if !defined (DONT_REPORT_SIGPIPE)
+- if (termsig && WIFSIGNALED (s) && termsig != SIGINT)
+-#else
+- if (termsig && WIFSIGNALED (s) && termsig != SIGINT && termsig != SIGPIPE)
+-#endif
++ if (termsig && WIFSIGNALED (s) && termsig != SIGINT &&
++#if defined (DONT_REPORT_SIGPIPE)
++ termsig != SIGPIPE &&
++#endif
++ signal_is_trapped (termsig) == 0)
+ {
+ fprintf (stderr, "%s", j_strsignal (termsig));
+
diff --git a/app-shells/bash/files/bash-3.0-ulimit.patch b/app-shells/bash/files/bash-3.0-ulimit.patch
new file mode 100644
index 00000000000..8202b95d276
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-ulimit.patch
@@ -0,0 +1,186 @@
+Ripped from Fedora
+
+--- bash-3.0/builtins/ulimit.def
++++ bash-3.0/builtins/ulimit.def
+@@ -34,15 +34,20 @@
+ -a all current limits are reported
+ -c the maximum size of core files created
+ -d the maximum size of a process's data segment
++ -e the maximum scheduling priority (`nice')
+ -f the maximum size of files created by the shell
++ -i the maximum number of pending signals
+ -l the maximum size a process may lock into memory
+ -m the maximum resident set size
+ -n the maximum number of open file descriptors
+ -p the pipe buffer size
++ -q the maximum number of bytes in POSIX message queues
++ -r the maximum rt priority
+ -s the maximum stack size
+ -t the maximum amount of cpu time in seconds
+ -u the maximum number of user processes
+ -v the size of virtual memory
++ -x the maximum number of file locks
+
+ If LIMIT is given, it is the new value of the specified resource;
+ the special LIMIT values `soft', `hard', and `unlimited' stand for
+@@ -199,7 +204,13 @@
+ #ifdef RLIMIT_DATA
+ { 'd', RLIMIT_DATA, 1024, "data seg size", "kbytes" },
+ #endif
++#ifdef RLIMIT_NICE
++ { 'e', RLIMIT_NICE, 1, "max nice", (char *)NULL},
++#endif /* RLIMIT_NICE */
+ { 'f', RLIMIT_FILESIZE, 1024, "file size", "blocks" },
++#ifdef RLIMIT_SIGPENDING
++ { 'i', RLIMIT_SIGPENDING, 1, "pending signals", (char *)NULL},
++#endif
+ #ifdef RLIMIT_MEMLOCK
+ { 'l', RLIMIT_MEMLOCK, 1024, "max locked memory", "kbytes" },
+ #endif
+@@ -208,6 +219,12 @@
+ #endif /* RLIMIT_RSS */
+ { 'n', RLIMIT_OPENFILES, 1, "open files", (char *)NULL},
+ { 'p', RLIMIT_PIPESIZE, 512, "pipe size", "512 bytes" },
++#ifdef RLIMIT_MSGQUEUE
++ { 'q', RLIMIT_MSGQUEUE, 1, "POSIX message queues", "bytes" },
++#endif
++#ifdef RLIMIT_RTPRIO
++ { 'r', RLIMIT_RTPRIO, 1, "max rt priority", (char *)NULL},
++#endif /* RLIMIT_RTPRIO */
+ #ifdef RLIMIT_STACK
+ { 's', RLIMIT_STACK, 1024, "stack size", "kbytes" },
+ #endif
+@@ -221,6 +238,9 @@
+ #ifdef RLIMIT_SWAP
+ { 'w', RLIMIT_SWAP, 1024, "swap size", "kbytes" },
+ #endif
++#ifdef RLIMIT_LOCKS
++ { 'x', RLIMIT_LOCKS, 1, "file locks", (char *)NULL},
++#endif
+ { -1, -1, -1, (char *)NULL, (char *)NULL }
+ };
+ #define NCMDS (sizeof(limits) / sizeof(limits[0]))
+@@ -647,11 +667,11 @@
+
+ for (i = 0; limits[i].option > 0; i++)
+ {
+- if (get_limit (i, &softlim, &hardlim) < 0)
++ if (get_limit (i, &softlim, &hardlim) == 0)
++ printone (i, (mode & LIMIT_SOFT) ? softlim : hardlim, 1);
++ else if (errno != EINVAL)
+ builtin_error ("%s: cannot get limit: %s", limits[i].description,
+ strerror (errno));
+- else
+- printone (i, (mode & LIMIT_SOFT) ? softlim : hardlim, 1);
+ }
+ }
+
+@@ -670,7 +690,7 @@
+ else
+ sprintf (unitstr, "(-%c) ", limits[limind].option);
+
+- printf ("%-18s %16s", limits[limind].description, unitstr);
++ printf ("%-20s %16s", limits[limind].description, unitstr);
+ }
+ if (curlim == RLIM_INFINITY)
+ puts ("unlimited");
+--- bash-3.0/doc/bashref.texi
++++ bash-3.0/doc/bashref.texi
+@@ -3793,7 +3793,7 @@
+ @item ulimit
+ @btindex ulimit
+ @example
+-ulimit [-acdflmnpstuvSH] [@var{limit}]
++ulimit [-acdeflmnpqrstuvxSH] [@var{limit}]
+ @end example
+ @code{ulimit} provides control over the resources available to processes
+ started by the shell, on systems that allow such control. If an
+@@ -3814,9 +3814,15 @@
+ @item -d
+ The maximum size of a process's data segment.
+
++@item -e
++The maximum scheduling priority.
++
+ @item -f
+ The maximum size of files created by the shell.
+
++@item -i
++The maximum number of pending signals.
++
+ @item -l
+ The maximum size that may be locked into memory.
+
+@@ -3829,6 +3835,12 @@
+ @item -p
+ The pipe buffer size.
+
++@item -q
++The maximum number of bytes in POSIX message queues.
++
++@item -r
++The maximum RT priority.
++
+ @item -s
+ The maximum stack size.
+
+@@ -3841,6 +3853,9 @@
+ @item -v
+ The maximum amount of virtual memory available to the process.
+
++@item -x
++The maximum amount of file locks.
++
+ @end table
+
+ If @var{limit} is given, it is the new value of the specified resource;
+--- bash-3.0/doc/bash.1
++++ bash-3.0/doc/bash.1
+@@ -8362,7 +8362,7 @@
+ returns true if any of the arguments are found, false if
+ none are found.
+ .TP
+-\fBulimit\fP [\fB\-SHacdflmnpstuv\fP [\fIlimit\fP]]
++\fBulimit\fP [\fB\-SHacdefilmnpqrstuvx\fP [\fIlimit\fP]]
+ Provides control over the resources available to the shell and to
+ processes started by it, on systems that allow such control.
+ The \fB\-H\fP and \fB\-S\fP options specify that the hard or soft limit is
+@@ -8398,9 +8398,15 @@
+ .B \-d
+ The maximum size of a process's data segment
+ .TP
++.B \-e
++The maximum scheduling priority (`nice')
++.TP
+ .B \-f
+ The maximum size of files created by the shell
+ .TP
++.B \-i
++The maximum number of pending signals
++.TP
+ .B \-l
+ The maximum size that may be locked into memory
+ .TP
+@@ -8414,6 +8420,12 @@
+ .B \-p
+ The pipe size in 512-byte blocks (this may not be set)
+ .TP
++.B \-q
++The maximum number of bytes in POSIX message queues
++.TP
++.B \-r
++The maximum rt priority
++.TP
+ .B \-s
+ The maximum stack size
+ .TP
+@@ -8425,6 +8437,9 @@
+ .TP
+ .B \-v
+ The maximum amount of virtual memory available to the shell
++.TP
++.B \-x
++The maximum number of file locks
+ .PD
+ .PP
+ If
diff --git a/app-shells/bash/files/bash-3.0-volatile-command.patch b/app-shells/bash/files/bash-3.0-volatile-command.patch
new file mode 100644
index 00000000000..8b89b35914b
--- /dev/null
+++ b/app-shells/bash/files/bash-3.0-volatile-command.patch
@@ -0,0 +1,16 @@
+Ripped from Debian
+
+# DP: current_command must be declared volatile to prevent assignments from
+# being optimized away as dead code. In reality, the use of setjmp/longjmp
+# makes it not dead code at all.
+
+--- eval.old 2003-12-18 23:44:15.000000000 -0500
++++ eval.c 2005-10-03 01:59:31.000000000 -0400
+@@ -63,7 +63,7 @@
+ reader_loop ()
+ {
+ int our_indirection_level;
+- COMMAND *current_command = (COMMAND *)NULL;
++ COMMAND * volatile current_command = (COMMAND *)NULL;
+
+ USE_VAR(current_command);
diff --git a/app-shells/bash/files/bash-3.1-dev-fd-test-as-user.patch b/app-shells/bash/files/bash-3.1-dev-fd-test-as-user.patch
new file mode 100644
index 00000000000..80a4b0a1a03
--- /dev/null
+++ b/app-shells/bash/files/bash-3.1-dev-fd-test-as-user.patch
@@ -0,0 +1,14 @@
+Fix the /dev/fd test when running as a non root user
+after logging in as a root user #131875
+
+--- bash-3.1/configure
++++ bash-3.1/configure
+@@ -23098,7 +23098,7 @@
+ if test -d /dev/fd && test -r /dev/fd/0 < /dev/null; then
+ # check for systems like FreeBSD 5 that only provide /dev/fd/[012]
+ exec 3<&0
+- if test -r /dev/fd/3; then
++ if test -e /dev/fd/3; then
+ bash_cv_dev_fd=standard
+ else
+ bash_cv_dev_fd=absent
diff --git a/app-shells/bash/files/bash-3.1-fix-dash-login-shell.patch b/app-shells/bash/files/bash-3.1-fix-dash-login-shell.patch
new file mode 100644
index 00000000000..3ca7518fbb5
--- /dev/null
+++ b/app-shells/bash/files/bash-3.1-fix-dash-login-shell.patch
@@ -0,0 +1,52 @@
+http://lists.gnu.org/archive/html/bug-bash/2006-01/msg00054.html
+http://bugs.gentoo.org/118257
+
+Date: Fri, 13 Jan 2006 17:11:10 +0000
+From: Tim Waugh <twaugh@redhat.com>
+To: bug-bash@gnu.org
+Subject: [patch] fix 'exec -l /bin/bash'
+
+Configuration Information [Automatically generated, do not change]:
+Machine: i386
+OS: linux-gnu
+Compiler: i386-redhat-linux-gcc
+Compilation CFLAGS: -DPROGRAM='bash' -DCONF_HOSTTYPE='i386' -DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='i386-redhat-linux-gnu' -DCONF_VENDOR='redhat' -DLOCALEDIR='/usr/share/locale' -DPACKAGE='bash' -DSHELL -DHAVE_CONFIG_H -I. -I. -I./include -I./lib -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=pentium4 -fasynchronous-unwind-tables
+uname output: Linux gene.surrey.redhat.com 2.6.13-1.1597_FC5 #1 Thu Oct 6 02:13:06 EDT 2005 i686 i686 i386 GNU/Linux
+Machine Type: i386-redhat-linux-gnu
+
+Bash Version: 3.1
+Patch Level: 1
+Release Status: release
+
+Description:
+ If bash has argv[0] as '-/bin/bash' it does not become a login
+ shell.
+
+Repeat-By:
+ exec -l /bin/bash
+ shopt
+
+Fix:
+
+--- bash-3.1/shell.c.login 2006-01-13 16:52:14.000000000 +0000
++++ bash-3.1/shell.c 2006-01-13 16:52:15.000000000 +0000
+@@ -1543,9 +1543,10 @@
+ any startup files; just try to be more like /bin/sh. */
+ shell_name = argv0 ? base_pathname (argv0) : PROGRAM;
+
+- if (*shell_name == '-')
++ if (argv0 && *argv0 == '-')
+ {
+- shell_name++;
++ if (*shell_name == '-')
++ shell_name++;
+ login_shell++;
+ }
+
+
+
+_______________________________________________
+Bug-bash mailing list
+Bug-bash@gnu.org
+http://lists.gnu.org/mailman/listinfo/bug-bash
+
diff --git a/app-shells/bash/files/bash-3.1-protos.patch b/app-shells/bash/files/bash-3.1-protos.patch
new file mode 100644
index 00000000000..32ae8cfe91a
--- /dev/null
+++ b/app-shells/bash/files/bash-3.1-protos.patch
@@ -0,0 +1,67 @@
+move prototypes around so they show up when needed
+
+--- a/jobs.h
++++ b/jobs.h
+@@ -182,6 +182,7 @@
+
+ extern int count_all_jobs __P((void));
+
++extern void close_pgrp_pipe __P((void));
+ extern void terminate_current_pipeline __P((void));
+ extern void terminate_stopped_jobs __P((void));
+ extern void hangup_all_jobs __P((void));
+--- a/lib/glob/strmatch.c
++++ b/lib/glob/strmatch.c
+@@ -25,9 +25,6 @@
+ #include "strmatch.h"
+
+ extern int xstrmatch __P((char *, char *, int));
+-#if defined (HAVE_MULTIBYTE)
+-extern int internal_wstrmatch __P((wchar_t *, wchar_t *, int));
+-#endif
+
+ int
+ strmatch (pattern, string, flags)
+--- a/lib/glob/strmatch.h
++++ b/lib/glob/strmatch.h
+@@ -57,6 +57,7 @@
+
+ #if HANDLE_MULTIBYTE
+ extern int wcsmatch __P((wchar_t *, wchar_t *, int));
++extern int internal_wstrmatch __P((wchar_t *, wchar_t *, int));
+ #endif
+
+ #endif /* _STRMATCH_H */
+--- a/builtins/echo.def
++++ b/builtins/echo.def
+@@ -31,6 +31,8 @@
+ #include <stdio.h>
+ #include "../shell.h"
+
++#include "common.h"
++
+ $BUILTIN echo
+ $FUNCTION echo_builtin
+ $DEPENDS_ON V9_ECHO
+--- a/lib/sh/winsize.c
++++ b/lib/sh/winsize.c
+@@ -55,6 +55,7 @@
+ #if defined (READLINE)
+ extern void rl_set_screen_size __P((int, int));
+ #endif
++extern void sh_set_lines_and_columns __P((int, int));
+
+ void
+ get_new_window_size (from_sig, rp, cp)
+--- a/support/bashversion.c
++++ b/support/bashversion.c
+@@ -47,6 +47,9 @@
+ extern char *dist_version;
+ extern int patch_level;
+
++extern char *shell_version_string __P((void));
++extern void show_shell_version __P((int));
++
+ char *shell_name = "bash";
+ char *progname;
+
diff --git a/app-shells/bash/files/bash-3.1-ulimit.patch b/app-shells/bash/files/bash-3.1-ulimit.patch
new file mode 100644
index 00000000000..432fb54966b
--- /dev/null
+++ b/app-shells/bash/files/bash-3.1-ulimit.patch
@@ -0,0 +1,122 @@
+Ripped from Fedora
+
+Add support for RLIMIT_NICE/RLIMIT_RTPRIO and add missing documentation
+for many other options
+
+--- builtins/ulimit.def
++++ builtins/ulimit.def
+@@ -24,7 +24,7 @@
+ $BUILTIN ulimit
+ $FUNCTION ulimit_builtin
+ $DEPENDS_ON !_MINIX
+-$SHORT_DOC ulimit [-SHacdfilmnpqstuvx] [limit]
++$SHORT_DOC ulimit [-SHacdefilmnpqrstuvx] [limit]
+ Ulimit provides control over the resources available to processes
+ started by the shell, on systems that allow such control. If an
+ option is given, it is interpreted as follows:
+@@ -34,18 +34,20 @@
+ -a all current limits are reported
+ -c the maximum size of core files created
+ -d the maximum size of a process's data segment
++ -e the maximum scheduling priority (`nice')
+ -f the maximum size of files created by the shell
+- -i the maximum number of pending signals
++ -i the maximum number of pending signals
+ -l the maximum size a process may lock into memory
+ -m the maximum resident set size
+ -n the maximum number of open file descriptors
+ -p the pipe buffer size
+- -q the maximum number of bytes in POSIX message queues
++ -q the maximum number of bytes in POSIX message queues
++ -r the maximum rt priority
+ -s the maximum stack size
+ -t the maximum amount of cpu time in seconds
+ -u the maximum number of user processes
+ -v the size of virtual memory
+- -x the maximum number of file locks
++ -x the maximum number of file locks
+
+ If LIMIT is given, it is the new value of the specified resource;
+ the special LIMIT values `soft', `hard', and `unlimited' stand for
+@@ -202,6 +204,9 @@
+ #ifdef RLIMIT_DATA
+ { 'd', RLIMIT_DATA, 1024, "data seg size", "kbytes" },
+ #endif
++#ifdef RLIMIT_NICE
++ { 'e', RLIMIT_NICE, 1, "max nice", (char *)NULL},
++#endif
+ { 'f', RLIMIT_FILESIZE, 1024, "file size", "blocks" },
+ #ifdef RLIMIT_SIGPENDING
+ { 'i', RLIMIT_SIGPENDING, 1, "pending signals", (char *)NULL },
+@@ -217,6 +222,9 @@
+ #ifdef RLIMIT_MSGQUEUE
+ { 'q', RLIMIT_MSGQUEUE, 1, "POSIX message queues", "bytes" },
+ #endif
++#ifdef RLIMIT_RTPRIO
++ { 'r', RLIMIT_RTPRIO, 1, "max rt priority", (char *)NULL},
++#endif
+ #ifdef RLIMIT_STACK
+ { 's', RLIMIT_STACK, 1024, "stack size", "kbytes" },
+ #endif
+--- doc/bashref.texi
++++ doc/bashref.texi
+@@ -3833,7 +3833,7 @@
+ @item ulimit
+ @btindex ulimit
+ @example
+-ulimit [-acdfilmnpqstuvxSH] [@var{limit}]
++ulimit [-acdefilmnpqrstuvxSH] [@var{limit}]
+ @end example
+ @code{ulimit} provides control over the resources available to processes
+ started by the shell, on systems that allow such control. If an
+@@ -3854,6 +3854,9 @@
+ @item -d
+ The maximum size of a process's data segment.
+
++@item -e
++The maximum scheduling priority.
++
+ @item -f
+ The maximum size of files created by the shell.
+
+@@ -3875,6 +3878,9 @@
+ @item -q
+ The maximum number of bytes in POSIX message queues.
+
++@item -r
++The maximum RT priority.
++
+ @item -s
+ The maximum stack size.
+
+--- doc/bash.1
++++ doc/bash.1
+@@ -8490,7 +8490,7 @@
+ returns true if any of the arguments are found, false if
+ none are found.
+ .TP
+-\fBulimit\fP [\fB\-SHacdfilmnpqstuvx\fP [\fIlimit\fP]]
++\fBulimit\fP [\fB\-SHacdefilmnpqrstuvx\fP [\fIlimit\fP]]
+ Provides control over the resources available to the shell and to
+ processes started by it, on systems that allow such control.
+ The \fB\-H\fP and \fB\-S\fP options specify that the hard or soft limit is
+@@ -8526,6 +8526,9 @@
+ .B \-d
+ The maximum size of a process's data segment
+ .TP
++.B \-e
++The maximum scheduling priority (`nice')
++.TP
+ .B \-f
+ The maximum size of files created by the shell
+ .TP
+@@ -8548,6 +8551,9 @@
+ .B \-q
+ The maximum number of bytes in POSIX message queues
+ .TP
++.B \-r
++The maximum rt priority
++.TP
+ .B \-s
+ The maximum stack size
+ .TP
diff --git a/app-shells/bash/files/bash-3.2-dev-fd-test-as-user.patch b/app-shells/bash/files/bash-3.2-dev-fd-test-as-user.patch
new file mode 100644
index 00000000000..8aca7767161
--- /dev/null
+++ b/app-shells/bash/files/bash-3.2-dev-fd-test-as-user.patch
@@ -0,0 +1,26 @@
+diff -ur bash-3.2.orig/aclocal.m4 bash-3.2/aclocal.m4
+--- bash-3.2.orig/aclocal.m4 2006-12-30 20:00:31 +0000
++++ bash-3.2/aclocal.m4 2006-12-30 20:02:02 +0000
+@@ -1544,7 +1544,8 @@
+ if test -d /dev/fd && test -r /dev/fd/0 < /dev/null; then
+ # check for systems like FreeBSD 5 that only provide /dev/fd/[012]
+ exec 3</dev/null
+- if test -r /dev/fd/3; then
++ # bash test builtin always works here, so we use the test binary
++ if `which test || echo test` -e /dev/fd/3; then
+ bash_cv_dev_fd=standard
+ else
+ bash_cv_dev_fd=absent
+diff -ur bash-3.2.orig/configure bash-3.2/configure
+--- bash-3.2.orig/configure 2006-12-30 20:03:24 +0000
++++ bash-3.2/configure 2006-12-30 20:01:50 +0000
+@@ -27179,7 +27179,8 @@
+ if test -d /dev/fd && test -r /dev/fd/0 < /dev/null; then
+ # check for systems like FreeBSD 5 that only provide /dev/fd/[012]
+ exec 3</dev/null
+- if test -r /dev/fd/3; then
++ # bash test builtin always works here, so we use the test binary
++ if `which test || echo test` -e /dev/fd/3; then
+ bash_cv_dev_fd=standard
+ else
+ bash_cv_dev_fd=absent
diff --git a/app-shells/bash/files/bash-3.2-ldflags-for-build.patch b/app-shells/bash/files/bash-3.2-ldflags-for-build.patch
new file mode 100644
index 00000000000..2dc1dd6ef79
--- /dev/null
+++ b/app-shells/bash/files/bash-3.2-ldflags-for-build.patch
@@ -0,0 +1,37 @@
+http://bugs.gentoo.org/211947
+
+fix from Takashi YOSHII: dont use target ldflags for build apps
+
+--- bash/builtins/Makefile.in
++++ bash/builtins/Makefile.in
+@@ -63,7 +63,7 @@
+
+ LIBS = @LIBS@
+ LDFLAGS = @LDFLAGS@ $(LOCAL_LDFLAGS) $(CFLAGS)
+-LDFLAGS_FOR_BUILD = $(LDFLAGS)
++LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@ $(LOCAL_LDFLAGS) $(CFLAGS_FOR_BUILD)
+ LOCAL_LDFLAGS = @LOCAL_LDFLAGS@
+ #LIBS_FOR_BUILD = @LIBS_FOR_BUILD@
+ LIBS_FOR_BUILD = $(LIBS)
+--- bash/support/Makefile.in
++++ bash/support/Makefile.in
+@@ -58,7 +58,7 @@
+
+ LOCAL_LDFLAGS = @LOCAL_LDFLAGS@
+ LDFLAGS = @LDFLAGS@ $(LOCAL_LDFLAGS) $(CFLAGS)
+-LDFLAGS_FOR_BUILD = $(LDFLAGS)
++LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@ $(LOCAL_LDFLAGS) $(CFLAGS_FOR_BUILD)
+
+ INCLUDES = -I${BUILD_DIR} -I${topdir}
+
+--- bash/Makefile.in
++++ bash/Makefile.in
+@@ -143,7 +143,7 @@
+ CCFLAGS_FOR_BUILD = $(BASE_CCFLAGS) $(CPPFLAGS_FOR_BUILD) $(CFLAGS_FOR_BUILD)
+
+ LDFLAGS = @LDFLAGS@ $(STATIC_LD) $(LOCAL_LDFLAGS) $(PROFILE_FLAGS) $(CFLAGS)
+-LDFLAGS_FOR_BUILD = $(LDFLAGS)
++LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@ $(LOCAL_LDFLAGS) $(CFLAGS_FOR_BUILD)
+
+ INCLUDES = -I. @RL_INCLUDE@ -I$(srcdir) -I$(BASHINCDIR) -I$(LIBSRC) $(INTL_INC)
+
diff --git a/app-shells/bash/files/bash-3.2-loadables.patch b/app-shells/bash/files/bash-3.2-loadables.patch
new file mode 100644
index 00000000000..cd0e1e1a8e9
--- /dev/null
+++ b/app-shells/bash/files/bash-3.2-loadables.patch
@@ -0,0 +1,239 @@
+--- bash-3.2/examples/loadables/basename.c
++++ bash-3.2/examples/loadables/basename.c
+@@ -11,6 +11,7 @@
+ #include <stdio.h>
+ #include "builtins.h"
+ #include "shell.h"
++#include "common.h"
+
+ basename_builtin (list)
+ WORD_LIST *list;
+--- bash-3.2/examples/loadables/cut.c
++++ bash-3.2/examples/loadables/cut.c
+@@ -63,6 +63,7 @@
+ #include "builtins.h"
+ #include "shell.h"
+ #include "bashgetopt.h"
++#include "common.h"
+
+ #if !defined (errno)
+ extern int errno;
+--- bash-3.2/examples/loadables/dirname.c
++++ bash-3.2/examples/loadables/dirname.c
+@@ -11,6 +11,7 @@
+ #include <stdio.h>
+ #include "builtins.h"
+ #include "shell.h"
++#include "common.h"
+
+ dirname_builtin (list)
+ WORD_LIST *list;
+--- bash-3.2/examples/loadables/finfo.c
++++ bash-3.2/examples/loadables/finfo.c
+@@ -12,6 +12,7 @@
+ #include <pwd.h>
+ #include <grp.h>
+ #include <errno.h>
++#include <time.h>
+
+ #include "bashansi.h"
+ #include "shell.h"
+--- bash-3.2/examples/loadables/head.c
++++ bash-3.2/examples/loadables/head.c
+@@ -21,6 +21,7 @@
+ #include "builtins.h"
+ #include "shell.h"
+ #include "bashgetopt.h"
++#include "common.h"
+
+ #if !defined (errno)
+ extern int errno;
+--- bash-3.2/examples/loadables/ln.c
++++ bash-3.2/examples/loadables/ln.c
+@@ -18,6 +18,7 @@
+ #include "builtins.h"
+ #include "shell.h"
+ #include "bashgetopt.h"
++#include "common.h"
+
+ #if !defined (errno)
+ extern int errno;
+--- bash-3.2/examples/loadables/logname.c
++++ bash-3.2/examples/loadables/logname.c
+@@ -11,6 +11,7 @@
+
+ #include "builtins.h"
+ #include "shell.h"
++#include "common.h"
+
+ #if !defined (errno)
+ extern int errno;
+--- bash-3.2/examples/loadables/mkdir.c
++++ bash-3.2/examples/loadables/mkdir.c
+@@ -16,6 +16,7 @@
+ #include "builtins.h"
+ #include "shell.h"
+ #include "bashgetopt.h"
++#include "common.h"
+
+ #if !defined (errno)
+ extern int errno;
+--- bash-3.2/examples/loadables/pathchk.c
++++ bash-3.2/examples/loadables/pathchk.c
+@@ -45,6 +45,7 @@
+ #include "stdc.h"
+ #include "bashgetopt.h"
+ #include "maxpath.h"
++#include "common.h"
+
+ #if !defined (errno)
+ extern int errno;
+--- bash-3.2/examples/loadables/print.c
++++ bash-3.2/examples/loadables/print.c
+@@ -17,6 +17,8 @@
+ #include "builtins.h"
+ #include "stdc.h"
+ #include "bashgetopt.h"
++#include "builtext.h"
++#include "common.h"
+
+ #if !defined (errno)
+ extern int errno;
+--- bash-3.2/examples/loadables/printenv.c
++++ bash-3.2/examples/loadables/printenv.c
+@@ -11,6 +11,7 @@
+ #include "builtins.h"
+ #include "shell.h"
+ #include "bashgetopt.h"
++#include "common.h"
+
+ extern char **export_env;
+
+--- bash-3.2/examples/loadables/push.c
++++ bash-3.2/examples/loadables/push.c
+@@ -11,6 +11,7 @@
+ #include "shell.h"
+ #include "jobs.h"
+ #include "bashgetopt.h"
++#include "common.h"
+
+ #ifndef errno
+ extern int errno;
+--- bash-3.2/examples/loadables/realpath.c
++++ bash-3.2/examples/loadables/realpath.c
+@@ -34,6 +34,7 @@
+ #include "builtins.h"
+ #include "shell.h"
+ #include "bashgetopt.h"
++#include "common.h"
+
+ #ifndef errno
+ extern int errno;
+@@ -67,14 +68,14 @@
+ vflag = 1;
+ break;
+ default:
+- usage();
++ builtin_usage();
+ }
+ }
+
+ list = loptend;
+
+ if (list == 0)
+- usage();
++ builtin_usage();
+
+ for (es = EXECUTION_SUCCESS; list; list = list->next) {
+ p = list->word->word;
+--- bash-3.2/examples/loadables/rmdir.c
++++ bash-3.2/examples/loadables/rmdir.c
+@@ -8,6 +8,7 @@
+ #include <errno.h>
+ #include "builtins.h"
+ #include "shell.h"
++#include "common.h"
+
+ #if !defined (errno)
+ extern int errno;
+--- bash-3.2/examples/loadables/sleep.c
++++ bash-3.2/examples/loadables/sleep.c
+@@ -27,6 +27,7 @@
+
+ #include "shell.h"
+ #include "builtins.h"
++#include "common.h"
+
+ #define RETURN(x) \
+ do { \
+--- bash-3.2/examples/loadables/tee.c
++++ bash-3.2/examples/loadables/tee.c
+@@ -22,6 +22,7 @@
+ #include "builtins.h"
+ #include "shell.h"
+ #include "bashgetopt.h"
++#include "common.h"
+
+ #if !defined (errno)
+ extern int errno;
+--- bash-3.2/examples/loadables/truefalse.c
++++ bash-3.2/examples/loadables/truefalse.c
+@@ -1,5 +1,7 @@
+ /* true and false builtins */
+
++#include <config.h>
++
+ #include "bashtypes.h"
+ #include "shell.h"
+ #include "builtins.h"
+--- bash-3.2/examples/loadables/tty.c
++++ bash-3.2/examples/loadables/tty.c
+@@ -8,6 +8,7 @@
+ #include "builtins.h"
+ #include "shell.h"
+ #include "bashgetopt.h"
++#include "common.h"
+
+ extern char *ttyname ();
+
+--- bash-3.2/examples/loadables/uname.c
++++ bash-3.2/examples/loadables/uname.c
+@@ -27,6 +27,7 @@
+ #include "builtins.h"
+ #include "shell.h"
+ #include "bashgetopt.h"
++#include "common.h"
+
+ #define FLAG_SYSNAME 0x01 /* -s */
+ #define FLAG_NODENAME 0x02 /* -n */
+--- bash-3.2/examples/loadables/unlink.c
++++ bash-3.2/examples/loadables/unlink.c
+@@ -14,6 +14,7 @@
+
+ #include "builtins.h"
+ #include "shell.h"
++#include "common.h"
+
+ #ifndef errno
+ extern int errno;
+--- bash-3.2/examples/loadables/whoami.c
++++ bash-3.2/examples/loadables/whoami.c
+@@ -8,6 +8,7 @@
+ #include "builtins.h"
+ #include "shell.h"
+ #include "bashgetopt.h"
++#include "common.h"
+
+ whoami_builtin (list)
+ WORD_LIST *list;
+--- bash-3.2/examples/loadables/Makefile.in
++++ bash-3.2/examples/loadables/Makefile.in
+@@ -68,7 +68,7 @@
+ SHOBJ_CC = @SHOBJ_CC@
+ SHOBJ_CFLAGS = @SHOBJ_CFLAGS@
+ SHOBJ_LD = @SHOBJ_LD@
+-SHOBJ_LDFLAGS = @SHOBJ_LDFLAGS@
++SHOBJ_LDFLAGS = @SHOBJ_LDFLAGS@ @LDFLAGS@
+ SHOBJ_XLDFLAGS = @SHOBJ_XLDFLAGS@
+ SHOBJ_LIBS = @SHOBJ_LIBS@
+ SHOBJ_STATUS = @SHOBJ_STATUS@
diff --git a/app-shells/bash/files/bash-3.2-process-subst.patch b/app-shells/bash/files/bash-3.2-process-subst.patch
new file mode 100644
index 00000000000..bd0b3f4e179
--- /dev/null
+++ b/app-shells/bash/files/bash-3.2-process-subst.patch
@@ -0,0 +1,12 @@
+Fix process substitution on BSD
+
+--- execute_cmd.c
++++ execute_cmd.c
+@@ -2672,6 +2672,7 @@
+
+ do_piping (pipe_in, pipe_out);
+
++ subshell_environment = 0;
+ if (async)
+ subshell_environment |= SUBSHELL_ASYNC;
+ if (pipe_in != NO_PIPE || pipe_out != NO_PIPE)
diff --git a/app-shells/bash/files/bash-3.2-protos.patch b/app-shells/bash/files/bash-3.2-protos.patch
new file mode 100644
index 00000000000..0a9ea74adfb
--- /dev/null
+++ b/app-shells/bash/files/bash-3.2-protos.patch
@@ -0,0 +1,57 @@
+move prototypes around so they show up when needed
+
+--- a/jobs.h
++++ b/jobs.h
+@@ -182,6 +182,7 @@
+
+ extern int count_all_jobs __P((void));
+
++extern void close_pgrp_pipe __P((void));
+ extern void terminate_current_pipeline __P((void));
+ extern void terminate_stopped_jobs __P((void));
+ extern void hangup_all_jobs __P((void));
+--- a/lib/glob/strmatch.c
++++ b/lib/glob/strmatch.c
+@@ -25,9 +25,6 @@
+ #include "strmatch.h"
+
+ extern int xstrmatch __P((char *, char *, int));
+-#if defined (HAVE_MULTIBYTE)
+-extern int internal_wstrmatch __P((wchar_t *, wchar_t *, int));
+-#endif
+
+ int
+ strmatch (pattern, string, flags)
+--- a/lib/glob/strmatch.h
++++ b/lib/glob/strmatch.h
+@@ -57,6 +57,7 @@
+
+ #if HANDLE_MULTIBYTE
+ extern int wcsmatch __P((wchar_t *, wchar_t *, int));
++extern int internal_wstrmatch __P((wchar_t *, wchar_t *, int));
+ #endif
+
+ #endif /* _STRMATCH_H */
+--- a/quit.h
++++ b/quit.h
+@@ -21,6 +21,8 @@
+ #if !defined (_QUIT_H_)
+ #define _QUIT_H_
+
++#include "sig.h"
++
+ /* Non-zero means SIGINT has already ocurred. */
+ extern volatile int interrupt_state;
+ extern volatile int terminating_signal;
+--- a/support/bashversion.c
++++ b/support/bashversion.c
+@@ -47,6 +47,9 @@
+ extern char *dist_version;
+ extern int patch_level;
+
++extern char *shell_version_string __P((void));
++extern void show_shell_version __P((int));
++
+ char *shell_name = "bash";
+ char *progname;
+
diff --git a/app-shells/bash/files/bash-3.2-session-leader.patch b/app-shells/bash/files/bash-3.2-session-leader.patch
new file mode 100644
index 00000000000..82f7d980633
--- /dev/null
+++ b/app-shells/bash/files/bash-3.2-session-leader.patch
@@ -0,0 +1,65 @@
+http://bugs.gentoo.org/231775
+http://lists.gnu.org/archive/html/bug-bash/2008-07/msg00010.html
+
+A parent bash shell sometimes will set the session leader tty (using tcsetpgrp)
+back to itself, taking control away from a child bash shell, due to a race
+condition. A result is that the child can then not then execute some commands
+(like stty) from its init script (e.g. .bashrc). The result I (and others)
+have seen is that the bash shell will hang while reading the init script.
+
+*** jobs.c.20080704 2008-07-10 15:14:13.000000000 -0400
+--- jobs.c 2008-07-10 15:17:59.000000000 -0400
+***************
+*** 266,269 ****
+--- 266,270 ----
+ static void set_job_running __P((int));
+ static void setjstatus __P((int));
++ static int maybe_give_terminal_to __P((pid_t, pid_t, int));
+ static void mark_all_jobs_as_dead __P((void));
+ static void mark_dead_jobs_as_notified __P((int));
+***************
+*** 637,641 ****
+ */
+ if (job_control && newjob->pgrp && (subshell_environment&SUBSHELL_ASYNC) == 0)
+! give_terminal_to (newjob->pgrp, 0);
+ }
+ }
+--- 638,642 ----
+ */
+ if (job_control && newjob->pgrp && (subshell_environment&SUBSHELL_ASYNC) == 0)
+! maybe_give_terminal_to (shell_pgrp, newjob->pgrp, 0);
+ }
+ }
+***************
+*** 3833,3836 ****
+--- 3834,3863 ----
+ }
+
++ /* Give terminal to NPGRP iff it's currently owned by OPGRP. FLAGS are the
++ flags to pass to give_terminal_to(). */
++ static int
++ maybe_give_terminal_to (opgrp, npgrp, flags)
++ pid_t opgrp, npgrp;
++ int flags;
++ {
++ int tpgrp;
++
++ tpgrp = tcgetpgrp (shell_tty);
++ if (tpgrp == npgrp)
++ {
++ terminal_pgrp = npgrp;
++ return 0;
++ }
++ else if (tpgrp != opgrp)
++ {
++ #if defined (DEBUG)
++ internal_warning ("maybe_give_terminal_to: terminal pgrp == %d shell pgrp = %d", tpgrp, opgrp);
++ #endif
++ return -1;
++ }
++ else
++ return (give_terminal_to (npgrp, flags));
++ }
++
+ /* Clear out any jobs in the job array. This is intended to be used by
+ children of the shell, who should not have any job structures as baggage
diff --git a/app-shells/bash/files/bash-3.2-ulimit.patch b/app-shells/bash/files/bash-3.2-ulimit.patch
new file mode 100644
index 00000000000..a0975cb6e9a
--- /dev/null
+++ b/app-shells/bash/files/bash-3.2-ulimit.patch
@@ -0,0 +1,13 @@
+add missing docs for -e and -r options
+
+--- builtins/ulimit.def
++++ builtins/ulimit.def
+@@ -24,7 +24,7 @@
+ $BUILTIN ulimit
+ $FUNCTION ulimit_builtin
+ $DEPENDS_ON !_MINIX
+-$SHORT_DOC ulimit [-SHacdfilmnpqstuvx] [limit]
++$SHORT_DOC ulimit [-SHacdefilmnpqrstuvx] [limit]
+ Ulimit provides control over the resources available to processes
+ started by the shell, on systems that allow such control. If an
+ option is given, it is interpreted as follows:
diff --git a/app-shells/bash/files/bash-4.0-configure.patch b/app-shells/bash/files/bash-4.0-configure.patch
new file mode 100644
index 00000000000..e57cb6b2402
--- /dev/null
+++ b/app-shells/bash/files/bash-4.0-configure.patch
@@ -0,0 +1,25 @@
+http://bugs.gentoo.org/304901
+
+newer patches touch configure ... we don't want autotool deps, so update
+the files ourselves
+
+--- bash-4.0/configure
++++ bash-4.0/configure
+@@ -5806,7 +5806,7 @@
+ # static version specified as -llibname to override the
+ # dynamic version
+ case "${host_os}" in
+- darwin[89]*) READLINE_LIB='${READLINE_LIBRARY}' ;;
++ darwin[89]*|darwin10*) READLINE_LIB='${READLINE_LIBRARY}' ;;
+ *) READLINE_LIB=-lreadline ;;
+ esac
+ fi
+@@ -5847,7 +5847,7 @@
+ # static version specified as -llibname to override the
+ # dynamic version
+ case "${host_os}" in
+- darwin[89]*) HISTORY_LIB='${HISTORY_LIBRARY}' ;;
++ darwin[89]*|darwin10*) HISTORY_LIB='${HISTORY_LIBRARY}' ;;
+ *) HISTORY_LIB=-lhistory ;;
+ esac
+ fi
diff --git a/app-shells/bash/files/bash-4.0-ldflags-for-build.patch b/app-shells/bash/files/bash-4.0-ldflags-for-build.patch
new file mode 100644
index 00000000000..089264f97e4
--- /dev/null
+++ b/app-shells/bash/files/bash-4.0-ldflags-for-build.patch
@@ -0,0 +1,15 @@
+http://bugs.gentoo.org/211947
+
+fix from Takashi YOSHII: dont use target ldflags for build apps
+
+--- bash/Makefile.in
++++ bash/Makefile.in
+@@ -143,7 +143,7 @@
+ CCFLAGS_FOR_BUILD = $(BASE_CCFLAGS) $(CPPFLAGS_FOR_BUILD) $(CFLAGS_FOR_BUILD)
+
+ LDFLAGS = @LDFLAGS@ $(STATIC_LD) $(LOCAL_LDFLAGS) $(PROFILE_FLAGS) $(CFLAGS)
+-LDFLAGS_FOR_BUILD = $(LDFLAGS)
++LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@ $(LOCAL_LDFLAGS) $(CFLAGS_FOR_BUILD)
+
+ INCLUDES = -I. @RL_INCLUDE@ -I$(srcdir) -I$(BASHINCDIR) -I$(LIBSRC) $(INTL_INC)
+
diff --git a/app-shells/bash/files/bash-4.0-negative-return.patch b/app-shells/bash/files/bash-4.0-negative-return.patch
new file mode 100644
index 00000000000..32affa18c17
--- /dev/null
+++ b/app-shells/bash/files/bash-4.0-negative-return.patch
@@ -0,0 +1,33 @@
+http://lists.gnu.org/archive/html/bug-bash/2009-02/msg00158.html
+
+make `return` accept negative values again
+
+hack by me (vapier@gentoo.org) ... i'm not familiar with bash source code, so
+i imagine this isn't the best way to do it ...
+
+--- bash/builtins/return.def
++++ bash/builtins/return.def
+@@ -60,9 +60,23 @@
+ return_builtin (list)
+ WORD_LIST *list;
+ {
++ int neg = 0;
++ if (list && list->word && list->word->word) {
++ char *word = list->word->word;
++ if (*word == '-') {
++ while (*word++)
++ if (!isdigit(*word))
++ break;
++ if (!*word)
++ neg = 1;
++ }
++ }
++
++ if (!neg) {
+ if (no_options (list))
+ return (EX_USAGE);
+ list = loptend; /* skip over possible `--' */
++ }
+
+ return_catch_value = get_exitstat (list);
+
diff --git a/app-shells/bash/files/bash-4.0-parallel-build.patch b/app-shells/bash/files/bash-4.0-parallel-build.patch
new file mode 100644
index 00000000000..8384e2c9019
--- /dev/null
+++ b/app-shells/bash/files/bash-4.0-parallel-build.patch
@@ -0,0 +1,65 @@
+http://bugs.gentoo.org/267613
+
+add missing dep
+
+patch by Peter Alfredsen
+
+--- bash-4.0/Makefile.in
++++ bash-4.0/Makefile.in
+@@ -1022,10 +1022,11 @@
+ subst.o: flags.h jobs.h siglist.h execute_cmd.h ${BASHINCDIR}/filecntl.h trap.h pathexp.h
+ subst.o: mailcheck.h input.h $(DEFSRC)/getopt.h $(DEFSRC)/common.h
+ subst.o: bashline.h bashhist.h ${GLOB_LIBSRC}/strmatch.h
+ subst.o: ${BASHINCDIR}/chartypes.h
+ subst.o: ${BASHINCDIR}/shmbutil.h
++subst.o: ${DEFDIR}/builtext.h
+ test.o: bashtypes.h ${BASHINCDIR}/posixstat.h ${BASHINCDIR}/filecntl.h
+ test.o: shell.h syntax.h config.h bashjmp.h ${BASHINCDIR}/posixjmp.h command.h ${BASHINCDIR}/stdc.h error.h
+ test.o: general.h xmalloc.h bashtypes.h variables.h arrayfunc.h conftypes.h array.h hashlib.h
+ test.o: quit.h ${BASHINCDIR}/maxpath.h unwind_prot.h dispose_cmd.h
+ test.o: make_cmd.h subst.h sig.h pathnames.h externs.h test.h
+
+http://bugs.gentoo.org/284633
+
+and another ...
+
+--- bash-4.0/lib/sh/Makefile.in
++++ bash-4.0/lib/sh/Makefile.in
+@@ -136,6 +136,9 @@
+ ${BUILD_DIR}/version.h: ${BUILD_DIR}/config.h ${BUILD_DIR}/Makefile Makefile
+ -( cd ${BUILD_DIR} && ${MAKE} ${MFLAGS} version.h )
+
++${BUILD_DIR}/pathnames.h: ${BUILD_DIR}/config.h ${BUILD_DIR}/Makefile Makefile
++ -( cd ${BUILD_DIR} && ${MAKE} ${MFLAGS} pathnames.h )
++
+ # rules for losing makes, like SunOS
+ casemod.o: casemod.c
+ clktck.o: clktck.c
+
+http://bugs.gentoo.org/300143
+
+and another ...
+
+--- bash-4.0/lib/glob/Makefile.in
++++ bash-4.0/lib/glob/Makefile.in
+@@ -119,6 +119,11 @@
+ mostlyclean: clean
+ -( cd doc && $(MAKE) $(MFLAGS) $@ )
+
++# Dependencies
++
++${BUILD_DIR}/pathnames.h: ${BUILD_DIR}/config.h ${BUILD_DIR}/Makefile Makefile
++ -( cd ${BUILD_DIR} && ${MAKE} ${MFLAGS} pathnames.h )
++
+ ######################################################################
+ # #
+ # Dependencies for the object files which make up this library. #
+@@ -136,7 +141,7 @@
+ strmatch.o: $(BUILD_DIR)/config.h
+ strmatch.o: $(BASHINCDIR)/stdc.h
+
+-glob.o: $(BUILD_DIR)/config.h
++glob.o: $(BUILD_DIR)/config.h $(topdir)/shell.h $(BUILD_DIR)/pathnames.h
+ glob.o: $(topdir)/bashtypes.h $(BASHINCDIR)/ansi_stdlib.h $(topdir)/bashansi.h
+ glob.o: $(BASHINCDIR)/posixstat.h $(BASHINCDIR)/memalloc.h
+ glob.o: strmatch.h glob.h
diff --git a/app-shells/bash/files/bash-4.1-fbsd-eaccess.patch b/app-shells/bash/files/bash-4.1-fbsd-eaccess.patch
new file mode 100644
index 00000000000..576a8a47a61
--- /dev/null
+++ b/app-shells/bash/files/bash-4.1-fbsd-eaccess.patch
@@ -0,0 +1,29 @@
+Bash built-in test fails to correctly report exeuctable status for non-
+executable files when run by root on FreeBSD.
+
+See http://bugs.gentoo.org/303411
+
+Patch from Johan Hattne <johan.hattne@utsuthwestern.edu>
+--- lib/sh/eaccess.c.orig
++++ lib/sh/eaccess.c
+@@ -198,11 +198,19 @@
+ char *path;
+ int mode;
+ {
++ struct stat s;
++ int ret;
++
+ if (path_is_devfd (path))
+ return (sh_stataccess (path, mode));
+
+ #if defined (HAVE_EACCESS) /* FreeBSD */
+- return (eaccess (path, mode));
++ if (stat (path, &s) != 0)
++ return (-1);
++ ret = eaccess (path, mode);
++ if (mode == X_OK && ret == 0 && !S_ISDIR(s.st_mode) && geteuid() == 0)
++ return ((s.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH)) == 0 ? -1 : 0);
++ return (ret);
+ #elif defined (EFF_ONLY_OK) /* SVR4(?), SVR4.2 */
+ return access (path, mode|EFF_ONLY_OK);
+ #else
diff --git a/app-shells/bash/files/bash-4.1-parallel-build.patch b/app-shells/bash/files/bash-4.1-parallel-build.patch
new file mode 100644
index 00000000000..ae44bcc0cf6
--- /dev/null
+++ b/app-shells/bash/files/bash-4.1-parallel-build.patch
@@ -0,0 +1,23 @@
+--- bash-4.1/lib/glob/Makefile.in
++++ bash-4.1/lib/glob/Makefile.in
+@@ -119,6 +119,11 @@
+ mostlyclean: clean
+ -( cd doc && $(MAKE) $(MFLAGS) $@ )
+
++# Dependencies
++
++${BUILD_DIR}/pathnames.h: ${BUILD_DIR}/config.h ${BUILD_DIR}/Makefile Makefile
++ -( cd ${BUILD_DIR} && ${MAKE} ${MFLAGS} pathnames.h )
++
+ ######################################################################
+ # #
+ # Dependencies for the object files which make up this library. #
+@@ -136,7 +141,7 @@
+ strmatch.o: $(BUILD_DIR)/config.h
+ strmatch.o: $(BASHINCDIR)/stdc.h
+
+-glob.o: $(BUILD_DIR)/config.h
++glob.o: $(BUILD_DIR)/config.h $(topdir)/shell.h $(BUILD_DIR)/pathnames.h
+ glob.o: $(topdir)/bashtypes.h $(BASHINCDIR)/ansi_stdlib.h $(topdir)/bashansi.h
+ glob.o: $(BASHINCDIR)/posixstat.h $(BASHINCDIR)/memalloc.h
+ glob.o: strmatch.h glob.h
diff --git a/app-shells/bash/files/bash-4.2-execute-job-control.patch b/app-shells/bash/files/bash-4.2-execute-job-control.patch
new file mode 100644
index 00000000000..82b73e5157c
--- /dev/null
+++ b/app-shells/bash/files/bash-4.2-execute-job-control.patch
@@ -0,0 +1,24 @@
+fix build when job control is disabled
+
+http://lists.gnu.org/archive/html/bug-bash/2011-06/msg00110.html
+http://lists.gnu.org/archive/html/bug-bash/2011-07/msg00057.html
+http://lists.gnu.org/archive/html/bug-bash/2011-09/msg00039.html
+https://bugs.gentoo.org/383237
+
+should be fixed in next release of bash ...
+
+--- a/execute_cmd.c
++++ b/execute_cmd.c
+@@ -2202,7 +2202,11 @@
+ /* If the `lastpipe' option is set with shopt, and job control is not
+ enabled, execute the last element of non-async pipelines in the
+ current shell environment. */
+- if (lastpipe_opt && job_control == 0 && asynchronous == 0 && pipe_out == NO_PIPE && prev > 0)
++ if (lastpipe_opt &&
++#if defined(JOB_CONTROL)
++ job_control == 0 &&
++#endif
++ asynchronous == 0 && pipe_out == NO_PIPE && prev > 0)
+ {
+ lstdin = move_to_high_fd (0, 0, 255);
+ if (lstdin > 0)
diff --git a/app-shells/bash/files/bash-4.2-no-readline.patch b/app-shells/bash/files/bash-4.2-no-readline.patch
new file mode 100644
index 00000000000..14eb6bf421e
--- /dev/null
+++ b/app-shells/bash/files/bash-4.2-no-readline.patch
@@ -0,0 +1,19 @@
+fix building when readline is disabled
+
+--- a/builtins/complete.def
++++ b/builtins/complete.def
+@@ -49,6 +49,8 @@ $END
+
+ #include <config.h>
+
++#ifdef READLINE
++
+ #include <stdio.h>
+
+ #include "../bashtypes.h"
+@@ -867,3 +869,5 @@ compopt_builtin (list)
+
+ return (ret);
+ }
++
++#endif
diff --git a/app-shells/bash/files/bash-4.2-parallel-build.patch b/app-shells/bash/files/bash-4.2-parallel-build.patch
new file mode 100644
index 00000000000..ab2de86206a
--- /dev/null
+++ b/app-shells/bash/files/bash-4.2-parallel-build.patch
@@ -0,0 +1,106 @@
+https://lists.gnu.org/archive/html/bug-bash/2011-10/msg00036.html
+
+the current yacc rules allow multiple runs to generate the same files. usually
+this doesn't come up as the generated files are shipped in the tarball, but
+when you modify parse.y (applying a patch or developing or whatever), you can
+hit this problem.
+
+simple way of showing this:
+ make -j y.tab.{c,h}
+a correct system would not show the yacc parser running twice :)
+
+simple patch is to have the .h file depend on the .c file, and have the .h file
+itself issue a dummy rule (to avoid make thinking things changed).
+
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -579,16 +579,17 @@
+
+ # old rules
+ GRAM_H = parser-built
+-y.tab.o: y.tab.c ${GRAM_H} command.h ${BASHINCDIR}/stdc.h input.h
++y.tab.o: y.tab.h y.tab.c ${GRAM_H} command.h ${BASHINCDIR}/stdc.h input.h
+ ${GRAM_H}: y.tab.h
+ @-if test -f y.tab.h ; then \
+ cmp -s $@ y.tab.h 2>/dev/null || cp -p y.tab.h $@; \
+ fi
+-y.tab.c y.tab.h: parse.y
++y.tab.c: parse.y
+ # -if test -f y.tab.h; then mv -f y.tab.h old-y.tab.h; fi
+ $(YACC) -d $(srcdir)/parse.y
+ touch parser-built
+ # -if cmp -s old-y.tab.h y.tab.h; then mv old-y.tab.h y.tab.h; else cp -p y.tab.h ${GRAM_H}; fi
++y.tab.h: y.tab.c ; @true
+
+ # experimental new rules - work with GNU make but not BSD (or OSF) make
+ #y.tab.o: y.tab.c y.tab.h
+
+https://lists.gnu.org/archive/html/bug-bash/2011-10/msg00037.html
+
+the current code generates a bunch of local libraries in subdirs and then
+links bash against that. those subdirs sometimes need version.h. so they
+have a rule to change back up to the parent dir and build version.h (which is
+fine). the trouble is that the top level objects and the subdirs are allowed
+to build in parallel, so it's possible for multiple children to see that
+version.h is not available and that it needs to be created, so they all do.
+
+there is even more trouble is that version.h depends on all the top level
+sources, some of which are compiled (like syntax.c). so these parallel
+children all kick off a job to generate syntax.c which in turn requires the
+mksyntax helper executable. obviously multiple processes rm-ing, compiling,
+and linking the same files quickly falls apart.
+
+so tweak the subdirs to all depend on the .build target which in turn depends
+on all of these top level files being generated. now the subdirs won't try and
+recursively enter the top level.
+
+(noticed by David James)
+
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -597,6 +598,11 @@
+ # $(YACC) -d $(srcdir)/parse.y
+ # -if cmp -s old-y.tab.h y.tab.h; then mv old-y.tab.h y.tab.h; fi
+
++# Subdirs will often times want version.h, so they'll change back up to
++# the top level and try to create it. This causes parallel build issues
++# so just force top level sanity before we descend.
++$(LIBDEP): .build
++
+ $(READLINE_LIBRARY): config.h $(READLINE_SOURCE)
+ @echo making $@ in ${RL_LIBDIR}
+ @( { test "${RL_LIBDIR}" = "${libdir}" && exit 0; } || \
+
+http://lists.gnu.org/archive/html/bug-bash/2011-10/msg00107.html
+
+the top level Makefile will recurse into the defdir for multiple targets
+(libbuiltins.a, common.o, bashgetopt.o, builtext.h), and since these do
+not have any declared interdependencies, parallel makes will recurse into
+the subdir and build the respective targets.
+
+nothing depends on common.o or bashgetopt.o, so those targets don't get
+used normally. this leaves libbuiltins.a and builtext.h. at a glance,
+this shouldn't be a big deal, but when we look closer, there's a subtle
+failure lurking.
+
+most of the objects in the defdir need to be generated which means they
+need to build+link the local mkbuiltins helper. the builtext.h header
+also needs to be generated by the mkbuiltins helper. so when the top
+level launches a child for libbuiltins.a and a child for builtext.h, we
+can hit a race condition where the two try to generate mkbuiltins, and
+the build randomly fails.
+
+so update libbuiltins.a to depend on builtext.h. this should be fairly
+simple since it's only a single target.
+
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -674,7 +674,7 @@
+ $(RM) $@
+ ./mksyntax$(EXEEXT) -o $@
+
+-$(BUILTINS_LIBRARY): $(BUILTIN_DEFS) $(BUILTIN_C_SRC) config.h ${BASHINCDIR}/memalloc.h version.h
++$(BUILTINS_LIBRARY): $(BUILTIN_DEFS) $(BUILTIN_C_SRC) config.h ${BASHINCDIR}/memalloc.h ${DEFDIR}/builtext.h version.h
+ @(cd $(DEFDIR) && $(MAKE) $(MFLAGS) DEBUG=${DEBUG} libbuiltins.a ) || exit 1
+
+ # these require special rules to circumvent make builtin rules
diff --git a/app-shells/bash/files/bash-4.2-read-retry.patch b/app-shells/bash/files/bash-4.2-read-retry.patch
new file mode 100644
index 00000000000..44903c68afe
--- /dev/null
+++ b/app-shells/bash/files/bash-4.2-read-retry.patch
@@ -0,0 +1,41 @@
+https://bugs.gentoo.org/447810
+
+fix from upstream to workaround broken BSD kernels
+
+commit 208fdb509e072977ae7a621e916dfcd32c76047d
+Author: Chet Ramey <chet@caleb.ins.cwru.edu>
+Date: Mon Mar 4 08:09:29 2013 -0500
+
+ commit bash-20130201 snapshot
+
+diff --git a/redir.c b/redir.c
+index d7da2f3..aa3d16d 100644
+--- a/redir.c
++++ b/redir.c
+@@ -650,7 +650,7 @@ redir_open (filename, flags, mode, ri)
+ int flags, mode;
+ enum r_instruction ri;
+ {
+- int fd, r;
++ int fd, r, e;
+
+ r = find_string_in_alist (filename, _redir_special_filenames, 1);
+ if (r >= 0)
+@@ -666,7 +666,16 @@ redir_open (filename, flags, mode, ri)
+ }
+ else
+ {
+- fd = open (filename, flags, mode);
++ do
++ {
++ fd = open (filename, flags, mode);
++ e = errno;
++ if (fd < 0 && e == EINTR)
++ QUIT;
++ errno = e;
++ }
++ while (fd < 0 && errno == EINTR);
++
+ #if defined (AFS)
+ if ((fd < 0) && (errno == EACCES))
+ {
diff --git a/app-shells/bash/files/bash-4.2-speed-up-read-N.patch b/app-shells/bash/files/bash-4.2-speed-up-read-N.patch
new file mode 100644
index 00000000000..b96ad0c887e
--- /dev/null
+++ b/app-shells/bash/files/bash-4.2-speed-up-read-N.patch
@@ -0,0 +1,112 @@
+http://lists.gnu.org/archive/html/bug-bash/2012-11/msg00034.html
+
+From 530d4988afd68ea9d2cf1b0267d4dc821d0d204f Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Mon, 19 Nov 2012 17:58:51 -0500
+Subject: [PATCH] bash: speed up `read -N`
+
+Rather than using 1 byte reads, use the existing cache read logic.
+This could be sped up more, but this change is not as invasive and
+should (hopefully) be fairly safe.
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ builtins/read.def | 21 ++++++++++++++++-----
+ externs.h | 1 +
+ lib/sh/zread.c | 15 +++++++++++++--
+ 3 files changed, 30 insertions(+), 7 deletions(-)
+
+diff --git a/builtins/read.def b/builtins/read.def
+index e32dec7..81a1b3f 100644
+--- a/builtins/read.def
++++ b/builtins/read.def
+@@ -457,7 +457,10 @@ read_builtin (list)
+ interrupt_immediately++;
+ terminate_immediately++;
+
+- unbuffered_read = (nchars > 0) || (delim != '\n') || input_is_pipe;
++ if ((nchars > 0) && !input_is_tty && ignore_delim)
++ unbuffered_read = 2;
++ else if ((nchars > 0) || (delim != '\n') || input_is_pipe)
++ unbuffered_read = 1;
+
+ if (prompt && edit == 0)
+ {
+@@ -505,10 +508,18 @@ read_builtin (list)
+ print_ps2 = 0;
+ }
+
+- if (unbuffered_read)
+- retval = zread (fd, &c, 1);
+- else
+- retval = zreadc (fd, &c);
++ switch (unbuffered_read)
++ {
++ case 2:
++ retval = zreadcn (fd, &c, nchars - nr);
++ break;
++ case 1:
++ retval = zread (fd, &c, 1);
++ break;
++ default:
++ retval = zreadc (fd, &c);
++ break;
++ }
+
+ if (retval <= 0)
+ {
+diff --git a/externs.h b/externs.h
+index 09244fa..a5ad645 100644
+--- a/externs.h
++++ b/externs.h
+@@ -479,6 +479,7 @@ extern ssize_t zread __P((int, char *, size_t));
+ extern ssize_t zreadretry __P((int, char *, size_t));
+ extern ssize_t zreadintr __P((int, char *, size_t));
+ extern ssize_t zreadc __P((int, char *));
++extern ssize_t zreadcn __P((int, char *, int));
+ extern ssize_t zreadcintr __P((int, char *));
+ extern void zreset __P((void));
+ extern void zsyncfd __P((int));
+diff --git a/lib/sh/zread.c b/lib/sh/zread.c
+index 5db21a9..af7d02b 100644
+--- a/lib/sh/zread.c
++++ b/lib/sh/zread.c
+@@ -101,15 +101,18 @@ static char lbuf[128];
+ static size_t lind, lused;
+
+ ssize_t
+-zreadc (fd, cp)
++zreadcn (fd, cp, len)
+ int fd;
+ char *cp;
++ int len;
+ {
+ ssize_t nr;
+
+ if (lind == lused || lused == 0)
+ {
+- nr = zread (fd, lbuf, sizeof (lbuf));
++ if (len > sizeof (lbuf))
++ len = sizeof (lbuf);
++ nr = zread (fd, lbuf, len);
+ lind = 0;
+ if (nr <= 0)
+ {
+@@ -123,6 +126,14 @@ zreadc (fd, cp)
+ return 1;
+ }
+
++ssize_t
++zreadc (fd, cp)
++ int fd;
++ char *cp;
++{
++ return zreadcn (fd, cp, sizeof (lbuf));
++}
++
+ /* Don't mix calls to zreadc and zreadcintr in the same function, since they
+ use the same local buffer. */
+ ssize_t
+--
+1.7.12.4
+
diff --git a/app-shells/bash/files/bash-4.3-append-process-segfault.patch b/app-shells/bash/files/bash-4.3-append-process-segfault.patch
new file mode 100644
index 00000000000..6c9b2e83067
--- /dev/null
+++ b/app-shells/bash/files/bash-4.3-append-process-segfault.patch
@@ -0,0 +1,18 @@
+https://lists.gnu.org/archive/html/bug-bash/2014-08/msg00048.html
+
+*** ../bash-4.3-patched/execute_cmd.c 2014-07-30 10:26:52.000000000 -0400
+--- execute_cmd.c 2014-08-11 16:55:57.000000000 -0400
+***************
+*** 2406,2410 ****
+ {
+ #if defined (JOB_CONTROL)
+! append_process (savestring (the_printed_command), dollar_dollar_pid, exec_result, lastpipe_jid);
+ #endif
+ lstdin = wait_for (lastpid);
+--- 2433,2438 ----
+ {
+ #if defined (JOB_CONTROL)
+! if (INVALID_JOB (lastpipe_jid) == 0)
+! append_process (savestring (the_printed_command_except_trap), dollar_dollar_pid, exec_result, lastpipe_jid);
+ #endif
+ lstdin = wait_for (lastpid);
diff --git a/app-shells/bash/files/bash-4.3-arrayfunc.patch b/app-shells/bash/files/bash-4.3-arrayfunc.patch
new file mode 100644
index 00000000000..f44d1847845
--- /dev/null
+++ b/app-shells/bash/files/bash-4.3-arrayfunc.patch
@@ -0,0 +1,15 @@
+http://lists.gnu.org/archive/html/bug-bash/2014-11/msg00178.html
+
+diff --git a/arrayfunc.c b/arrayfunc.c
+index 804e6da..0f900aa 100644
+--- a/arrayfunc.c
++++ b/arrayfunc.c
+@@ -498,7 +498,7 @@ assign_compound_array_list (var, nlist, flags)
+
+ for (list = nlist; list; list = list->next)
+ {
+- iflags = flags;
++ iflags = (flags & ~ASS_APPEND);
+ w = list->word->word;
+
+ /* We have a word of the form [ind]=value */
diff --git a/app-shells/bash/files/bash-4.3-compat-lvl.patch b/app-shells/bash/files/bash-4.3-compat-lvl.patch
new file mode 100644
index 00000000000..5734687ffeb
--- /dev/null
+++ b/app-shells/bash/files/bash-4.3-compat-lvl.patch
@@ -0,0 +1,13 @@
+https://lists.gnu.org/archive/html/bug-bash/2014-06/msg00046.html
+
+--- a/builtins/shopt.def
++++ b/builtins/shopt.def
+@@ -160,7 +160,7 @@ static struct {
+ { "compat32", &shopt_compat32, set_compatibility_level },
+ { "compat40", &shopt_compat40, set_compatibility_level },
+ { "compat41", &shopt_compat41, set_compatibility_level },
+- { "compat42", &shopt_compat41, set_compatibility_level },
++ { "compat42", &shopt_compat42, set_compatibility_level },
+ #if defined (READLINE)
+ { "complete_fullquote", &complete_fullquote, (shopt_set_func_t *)NULL},
+ { "direxpand", &dircomplete_expand, shopt_set_complete_direxpand },
diff --git a/app-shells/bash/files/bash-4.3-declare-visibility.patch b/app-shells/bash/files/bash-4.3-declare-visibility.patch
new file mode 100644
index 00000000000..03431557063
--- /dev/null
+++ b/app-shells/bash/files/bash-4.3-declare-visibility.patch
@@ -0,0 +1,60 @@
+http://lists.gnu.org/archive/html/bug-bash/2015-02/msg00075.html
+
+assign_array_var_from_word_list: after assignment, mark variable as no
+longer invisible
+
+assign_array_var_from_string: after assignment, mark variable as no
+longer invisible
+
+diff --git a/arrayfunc.c b/arrayfunc.c
+index c2ea0e5..6dab71c 100644
+--- a/arrayfunc.c
++++ b/arrayfunc.c
+@@ -407,6 +407,9 @@ assign_array_var_from_word_list (var, list, flags)
+ (*var->assign_func) (var, l->word->word, i, 0);
+ else
+ array_insert (a, i, l->word->word);
++
++ VUNSETATTR (var, att_invisible); /* no longer invisible */
++
+ return var;
+ }
+
+@@ -639,6 +642,10 @@ assign_array_var_from_string (var, value, flags)
+
+ if (nlist)
+ dispose_words (nlist);
++
++ if (var)
++ VUNSETATTR (var, att_invisible); /* no longer invisible */
++
+ return (var);
+ }
+
+
+bind_int_variable: make sure `v' is non-null before making it visible
+
+diff --git a/variables.c b/variables.c
+index 2f07ebb..cbe7806 100644
+--- a/variables.c
++++ b/variables.c
+@@ -2872,10 +2872,12 @@ bind_int_variable (lhs, rhs)
+ #endif
+ v = bind_variable (lhs, rhs, 0);
+
+- if (v && isint)
+- VSETATTR (v, att_integer);
+-
+- VUNSETATTR (v, att_invisible);
++ if (v)
++ {
++ if (isint)
++ VSETATTR (v, att_integer);
++ VUNSETATTR (v, att_invisible);
++ }
+
+ return (v);
+ }
+--
+2.3.0
+
diff --git a/app-shells/bash/files/bash-4.3-mapfile-improper-array-name-validation.patch b/app-shells/bash/files/bash-4.3-mapfile-improper-array-name-validation.patch
new file mode 100644
index 00000000000..20bf340fdbd
--- /dev/null
+++ b/app-shells/bash/files/bash-4.3-mapfile-improper-array-name-validation.patch
@@ -0,0 +1,13 @@
+http://lists.gnu.org/archive/html/bug-bash/2014-11/msg00097.html
+
+--- bash-4.3/builtins/mapfile.def
++++ bash-4.3/builtins/mapfile.def
+@@ -339,7 +339,7 @@
+ else
+ array_name = list->word->word;
+
+- if (legal_identifier (array_name) == 0 && valid_array_reference (array_name) == 0)
++ if (legal_identifier (array_name) == 0)
+ {
+ sh_invalidid (array_name);
+ return (EXECUTION_FAILURE);
diff --git a/app-shells/bash/files/bash-4.3-parse-time-keyword.patch b/app-shells/bash/files/bash-4.3-parse-time-keyword.patch
new file mode 100644
index 00000000000..cd516e5c66c
--- /dev/null
+++ b/app-shells/bash/files/bash-4.3-parse-time-keyword.patch
@@ -0,0 +1,30 @@
+https://lists.gnu.org/archive/html/bug-bash/2014-06/msg00034.html
+
+*** ../bash-4.3-patched/parse.y 2014-04-07 11:56:12.000000000 -0400
+--- parse.y 2014-06-11 10:25:53.000000000 -0400
+***************
+*** 2789,2797 ****
+ case OR_OR:
+ case '&':
+ case DO:
+ case THEN:
+ case ELSE:
+ case '{': /* } */
+! case '(': /* ) */
+ case BANG: /* ! time pipeline */
+ case TIME: /* time time pipeline */
+--- 2789,2802 ----
+ case OR_OR:
+ case '&':
++ case WHILE:
+ case DO:
++ case UNTIL:
++ case IF:
+ case THEN:
++ case ELIF:
+ case ELSE:
+ case '{': /* } */
+! case '(': /* )( */
+! case ')': /* only valid in case statement */
+ case BANG: /* ! time pipeline */
+ case TIME: /* time time pipeline */
diff --git a/app-shells/bash/files/bash-4.4-optimize-fork.patch b/app-shells/bash/files/bash-4.4-optimize-fork.patch
new file mode 100644
index 00000000000..98e83be12f8
--- /dev/null
+++ b/app-shells/bash/files/bash-4.4-optimize-fork.patch
@@ -0,0 +1,16 @@
+https://lists.gnu.org/archive/html/bug-bash/2015-07/msg00060.html
+
+*** ../bash-4.4-alpha/execute_cmd.c 2015-06-12 17:29:18.000000000 -0400
+--- execute_cmd.c 2015-07-14 08:59:22.000000000 -0400
+***************
+*** 2630,2638 ****
+ if (ignore_return && second)
+ second->flags |= CMD_IGNORE_RETURN;
+- if (should_suppress_fork (second))
+- {
+- second->flags |= CMD_NO_FORK;
+- second->value.Simple->flags |= CMD_NO_FORK;
+- }
+
+ exec_result = execute_command (second);
+--- 2630,2633 ----
diff --git a/app-shells/bash/files/bash-4.x-deferred-heredocs.patch b/app-shells/bash/files/bash-4.x-deferred-heredocs.patch
new file mode 100644
index 00000000000..698d277a3db
--- /dev/null
+++ b/app-shells/bash/files/bash-4.x-deferred-heredocs.patch
@@ -0,0 +1,47 @@
+http://bugs.gentoo.org/310197
+http://lists.gnu.org/archive/html/bug-bash/2010-03/msg00063.html
+
+fix heredocs handling in `set` output
+
+*** ../bash-4.1-patched/print_cmd.c 2009-09-16 15:32:26.000000000 -0400
+--- print_cmd.c 2010-03-22 21:15:30.000000000 -0400
+***************
+*** 114,117 ****
+--- 114,123 ----
+ #define CHECK_XTRACE_FP xtrace_fp = (xtrace_fp ? xtrace_fp : stderr)
+
++ #define PRINT_DEFERRED_HEREDOCS(x) \
++ do { \
++ if (deferred_heredocs) \
++ print_deferred_heredocs (x); \
++ } while (0)
++
+ /* Non-zero means the stuff being printed is inside of a function def. */
+ static int inside_function_def;
+***************
+*** 561,571 ****
+ {
+ print_for_command_head (for_command);
+-
+ cprintf (";");
+ newline ("do\n");
+ indentation += indentation_amount;
+ make_command_string_internal (for_command->action);
+ semicolon ();
+ indentation -= indentation_amount;
+ newline ("done");
+ }
+--- 566,578 ----
+ {
+ print_for_command_head (for_command);
+ cprintf (";");
+ newline ("do\n");
++
+ indentation += indentation_amount;
+ make_command_string_internal (for_command->action);
++ PRINT_DEFERRED_HEREDOCS ("");
+ semicolon ();
+ indentation -= indentation_amount;
++
+ newline ("done");
+ }
diff --git a/app-shells/bash/files/bash_logout b/app-shells/bash/files/bash_logout
new file mode 100644
index 00000000000..50a79331c08
--- /dev/null
+++ b/app-shells/bash/files/bash_logout
@@ -0,0 +1,9 @@
+# /etc/bash/bash_logout
+
+# This file is sourced when a login shell terminates.
+
+# You may wish to clear everyone's screen when they logout.
+#clear
+
+# Or maybe you want to leave a thoughtful note.
+#fortune
diff --git a/app-shells/bash/files/bashrc b/app-shells/bash/files/bashrc
new file mode 100644
index 00000000000..a398eb1ed4a
--- /dev/null
+++ b/app-shells/bash/files/bashrc
@@ -0,0 +1,88 @@
+# /etc/bash/bashrc
+#
+# This file is sourced by all *interactive* bash shells on startup,
+# including some apparently interactive shells such as scp and rcp
+# that can't tolerate any output. So make sure this doesn't display
+# anything or bad things will happen !
+
+
+# Test for an interactive shell. There is no need to set anything
+# past this point for scp and rcp, and it's important to refrain from
+# outputting anything in those cases.
+if [[ $- != *i* ]] ; then
+ # Shell is non-interactive. Be done now!
+ return
+fi
+
+# Bash won't get SIGWINCH if another process is in the foreground.
+# Enable checkwinsize so that bash will check the terminal size when
+# it regains control. #65623
+# http://cnswww.cns.cwru.edu/~chet/bash/FAQ (E11)
+shopt -s checkwinsize
+
+# Enable history appending instead of overwriting. #139609
+shopt -s histappend
+
+# Change the window title of X terminals
+case ${TERM} in
+ xterm*|rxvt*|Eterm*|aterm|kterm|gnome*|interix|konsole*)
+ PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/~}\007"'
+ ;;
+ screen*)
+ PROMPT_COMMAND='echo -ne "\033_${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/~}\033\\"'
+ ;;
+esac
+
+use_color=false
+#BSD#@# BSD doesn't typically come with dircolors so we need
+#BSD#@# to hardcode some terminals in here.
+#BSD#@case ${TERM} in
+#BSD#@ xterm*|rxvt*|Eterm|aterm|kterm|gnome*|screen|cons25) use_color=true;;
+#BSD#@esac
+
+# Set colorful PS1 only on colorful terminals.
+# dircolors --print-database uses its own built-in database
+# instead of using /etc/DIR_COLORS. Try to use the external file
+# first to take advantage of user additions. Use internal bash
+# globbing instead of external grep binary.
+safe_term=${TERM//[^[:alnum:]]/?} # sanitize TERM
+match_lhs=""
+[[ -f ~/.dir_colors ]] && match_lhs="${match_lhs}$(<~/.dir_colors)"
+[[ -f /etc/DIR_COLORS ]] && match_lhs="${match_lhs}$(</etc/DIR_COLORS)"
+[[ -z ${match_lhs} ]] \
+ && type -P dircolors >/dev/null \
+ && match_lhs=$(dircolors --print-database)
+[[ $'\n'${match_lhs} == *$'\n'"TERM "${safe_term}* ]] && use_color=true
+
+if ${use_color} ; then
+ # Enable colors for ls, etc. Prefer ~/.dir_colors #64489
+ if type -P dircolors >/dev/null ; then
+ if [[ -f ~/.dir_colors ]] ; then
+ eval $(dircolors -b ~/.dir_colors)
+ elif [[ -f /etc/DIR_COLORS ]] ; then
+ eval $(dircolors -b /etc/DIR_COLORS)
+ fi
+ fi
+
+ if [[ ${EUID} == 0 ]] ; then
+ PS1='\[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\] '
+ else
+ PS1='\[\033[01;32m\]\u@\h\[\033[01;34m\] \w \$\[\033[00m\] '
+ fi
+
+ #BSD#@export CLICOLOR=1
+ #GNU#@alias ls='ls --color=auto'
+ alias grep='grep --colour=auto'
+ alias egrep='egrep --colour=auto'
+ alias fgrep='fgrep --colour=auto'
+else
+ if [[ ${EUID} == 0 ]] ; then
+ # show root@ when we don't have colors
+ PS1='\u@\h \W \$ '
+ else
+ PS1='\u@\h \w \$ '
+ fi
+fi
+
+# Try to keep environment pollution down, EPA loves us.
+unset use_color safe_term match_lhs
diff --git a/app-shells/bash/files/bashrc-r1 b/app-shells/bash/files/bashrc-r1
new file mode 100644
index 00000000000..300070974f5
--- /dev/null
+++ b/app-shells/bash/files/bashrc-r1
@@ -0,0 +1,92 @@
+# /etc/bash/bashrc
+#
+# This file is sourced by all *interactive* bash shells on startup,
+# including some apparently interactive shells such as scp and rcp
+# that can't tolerate any output. So make sure this doesn't display
+# anything or bad things will happen !
+
+
+# Test for an interactive shell. There is no need to set anything
+# past this point for scp and rcp, and it's important to refrain from
+# outputting anything in those cases.
+if [[ $- != *i* ]] ; then
+ # Shell is non-interactive. Be done now!
+ return
+fi
+
+# Bash won't get SIGWINCH if another process is in the foreground.
+# Enable checkwinsize so that bash will check the terminal size when
+# it regains control. #65623
+# http://cnswww.cns.cwru.edu/~chet/bash/FAQ (E11)
+shopt -s checkwinsize
+
+# Enable history appending instead of overwriting. #139609
+shopt -s histappend
+
+# Change the window title of X terminals
+case ${TERM} in
+ xterm*|rxvt*|Eterm*|aterm|kterm|gnome*|interix|konsole*)
+ PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/~}\007"'
+ ;;
+ screen*)
+ PROMPT_COMMAND='echo -ne "\033_${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/~}\033\\"'
+ ;;
+esac
+
+use_color=false
+#BSD#@# BSD doesn't typically come with dircolors so we need
+#BSD#@# to hardcode some terminals in here.
+#BSD#@case ${TERM} in
+#BSD#@ xterm*|rxvt*|Eterm|aterm|kterm|gnome*|screen|cons25) use_color=true;;
+#BSD#@esac
+
+# Set colorful PS1 only on colorful terminals.
+# dircolors --print-database uses its own built-in database
+# instead of using /etc/DIR_COLORS. Try to use the external file
+# first to take advantage of user additions. Use internal bash
+# globbing instead of external grep binary.
+safe_term=${TERM//[^[:alnum:]]/?} # sanitize TERM
+match_lhs=""
+[[ -f ~/.dir_colors ]] && match_lhs="${match_lhs}$(<~/.dir_colors)"
+[[ -f /etc/DIR_COLORS ]] && match_lhs="${match_lhs}$(</etc/DIR_COLORS)"
+[[ -z ${match_lhs} ]] \
+ && type -P dircolors >/dev/null \
+ && match_lhs=$(dircolors --print-database)
+[[ $'\n'${match_lhs} == *$'\n'"TERM "${safe_term}* ]] && use_color=true
+
+if ${use_color} ; then
+ # Enable colors for ls, etc. Prefer ~/.dir_colors #64489
+ if type -P dircolors >/dev/null ; then
+ if [[ -f ~/.dir_colors ]] ; then
+ eval $(dircolors -b ~/.dir_colors)
+ elif [[ -f /etc/DIR_COLORS ]] ; then
+ eval $(dircolors -b /etc/DIR_COLORS)
+ fi
+ fi
+
+ if [[ ${EUID} == 0 ]] ; then
+ PS1='\[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\] '
+ else
+ PS1='\[\033[01;32m\]\u@\h\[\033[01;34m\] \w \$\[\033[00m\] '
+ fi
+
+ #BSD#@export CLICOLOR=1
+ #GNU#@alias ls='ls --color=auto'
+ alias grep='grep --colour=auto'
+ alias egrep='egrep --colour=auto'
+ alias fgrep='fgrep --colour=auto'
+else
+ if [[ ${EUID} == 0 ]] ; then
+ # show root@ when we don't have colors
+ PS1='\u@\h \W \$ '
+ else
+ PS1='\u@\h \w \$ '
+ fi
+fi
+
+for sh in /etc/bash/bashrc.d/* ; do
+ [[ -r ${sh} ]] && source "${sh}"
+done
+
+# Try to keep environment pollution down, EPA loves us.
+unset use_color safe_term match_lhs sh
diff --git a/app-shells/bash/files/bashrc-r2 b/app-shells/bash/files/bashrc-r2
new file mode 100644
index 00000000000..c9bd88e8586
--- /dev/null
+++ b/app-shells/bash/files/bashrc-r2
@@ -0,0 +1,108 @@
+# /etc/bash/bashrc
+#
+# This file is sourced by all *interactive* bash shells on startup,
+# including some apparently interactive shells such as scp and rcp
+# that can't tolerate any output. So make sure this doesn't display
+# anything or bad things will happen !
+
+
+# Test for an interactive shell. There is no need to set anything
+# past this point for scp and rcp, and it's important to refrain from
+# outputting anything in those cases.
+if [[ $- != *i* ]] ; then
+ # Shell is non-interactive. Be done now!
+ return
+fi
+
+# Bash won't get SIGWINCH if another process is in the foreground.
+# Enable checkwinsize so that bash will check the terminal size when
+# it regains control. #65623
+# http://cnswww.cns.cwru.edu/~chet/bash/FAQ (E11)
+shopt -s checkwinsize
+
+# Disable completion when the input buffer is empty. i.e. Hitting tab
+# and waiting a long time for bash to expand all of $PATH.
+shopt -s no_empty_cmd_completion
+
+# Enable history appending instead of overwriting when exiting. #139609
+shopt -s histappend
+
+# Save each command to the history file as it's executed. #517342
+# This does mean sessions get interleaved when reading later on, but this
+# way the history is always up to date. History is not synced across live
+# sessions though; that is what `history -n` does.
+# Disabled by default due to concerns related to system recovery when $HOME
+# is under duress, or lives somewhere flaky (like NFS). Constantly syncing
+# the history will halt the shell prompt until it's finished.
+#PROMPT_COMMAND='history -a'
+
+# Change the window title of X terminals
+case ${TERM} in
+ xterm*|rxvt*|Eterm*|aterm|kterm|gnome*|interix|konsole*)
+ PS1='\[\033]0;\u@\h:\w\007\]'
+ ;;
+ screen*)
+ PS1='\[\033k\u@\h:\w\033\\\]'
+ ;;
+ *)
+ unset PS1
+ ;;
+esac
+
+use_color=false
+#BSD#@# BSD doesn't typically come with dircolors so we need
+#BSD#@# to hardcode some terminals in here.
+#BSD#@case ${TERM} in
+#BSD#@ xterm*|rxvt*|Eterm|aterm|kterm|gnome*|screen|cons25) use_color=true;;
+#BSD#@esac
+
+# Set colorful PS1 only on colorful terminals.
+# dircolors --print-database uses its own built-in database
+# instead of using /etc/DIR_COLORS. Try to use the external file
+# first to take advantage of user additions. Use internal bash
+# globbing instead of external grep binary.
+safe_term=${TERM//[^[:alnum:]]/?} # sanitize TERM
+match_lhs=""
+[[ -f ~/.dir_colors ]] && match_lhs="${match_lhs}$(<~/.dir_colors)"
+[[ -f /etc/DIR_COLORS ]] && match_lhs="${match_lhs}$(</etc/DIR_COLORS)"
+[[ -z ${match_lhs} ]] \
+ && type -P dircolors >/dev/null \
+ && match_lhs=$(dircolors --print-database)
+[[ $'\n'${match_lhs} == *$'\n'"TERM "${safe_term}* ]] && use_color=true
+
+if ${use_color} ; then
+ # Enable colors for ls, etc. Prefer ~/.dir_colors #64489
+ if type -P dircolors >/dev/null ; then
+ if [[ -f ~/.dir_colors ]] ; then
+ eval $(dircolors -b ~/.dir_colors)
+ elif [[ -f /etc/DIR_COLORS ]] ; then
+ eval $(dircolors -b /etc/DIR_COLORS)
+ fi
+ fi
+
+ if [[ ${EUID} == 0 ]] ; then
+ PS1+='\[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\] '
+ else
+ PS1+='\[\033[01;32m\]\u@\h\[\033[01;34m\] \w \$\[\033[00m\] '
+ fi
+
+ #BSD#@export CLICOLOR=1
+ #GNU#@alias ls='ls --color=auto'
+ alias grep='grep --colour=auto'
+ alias egrep='egrep --colour=auto'
+ alias fgrep='fgrep --colour=auto'
+else
+ if [[ ${EUID} == 0 ]] ; then
+ # show root@ when we don't have colors
+ PS1+='\u@\h \W \$ '
+ else
+ PS1+='\u@\h \w \$ '
+ fi
+fi
+
+for sh in /etc/bash/bashrc.d/* ; do
+ [[ -r ${sh} ]] && source "${sh}"
+done
+
+# Try to keep environment pollution down, EPA loves us.
+unset use_color safe_term match_lhs sh
diff --git a/app-shells/bash/files/dot-bash_logout b/app-shells/bash/files/dot-bash_logout
new file mode 100644
index 00000000000..44b6f79ca8e
--- /dev/null
+++ b/app-shells/bash/files/dot-bash_logout
@@ -0,0 +1,6 @@
+# /etc/skel/.bash_logout
+
+# This file is sourced when a login shell terminates.
+
+# Clear the screen for security's sake.
+clear
diff --git a/app-shells/bash/files/dot-bash_profile b/app-shells/bash/files/dot-bash_profile
new file mode 100644
index 00000000000..94a6622b5c6
--- /dev/null
+++ b/app-shells/bash/files/dot-bash_profile
@@ -0,0 +1,5 @@
+# /etc/skel/.bash_profile
+
+# This file is sourced by bash for login shells. The following line
+# runs your .bashrc and is recommended by the bash info pages.
+[[ -f ~/.bashrc ]] && . ~/.bashrc
diff --git a/app-shells/bash/files/dot-bashrc b/app-shells/bash/files/dot-bashrc
new file mode 100644
index 00000000000..34dbd8c892f
--- /dev/null
+++ b/app-shells/bash/files/dot-bashrc
@@ -0,0 +1,18 @@
+# /etc/skel/.bashrc
+#
+# This file is sourced by all *interactive* bash shells on startup,
+# including some apparently interactive shells such as scp and rcp
+# that can't tolerate any output. So make sure this doesn't display
+# anything or bad things will happen !
+
+
+# Test for an interactive shell. There is no need to set anything
+# past this point for scp and rcp, and it's important to refrain from
+# outputting anything in those cases.
+if [[ $- != *i* ]] ; then
+ # Shell is non-interactive. Be done now!
+ return
+fi
+
+
+# Put your fun stuff here.
diff --git a/app-shells/bash/metadata.xml b/app-shells/bash/metadata.xml
new file mode 100644
index 00000000000..8598dc9b880
--- /dev/null
+++ b/app-shells/bash/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>base-system</herd>
+<use>
+ <flag name='bashlogger'>Log ALL commands typed into bash; should ONLY be
+ used in restricted environments such as honeypots</flag>
+ <flag name='mem-scramble'>Build with custom malloc/free overwriting allocated/freed memory</flag>
+ <flag name='net'>Enable /dev/tcp/host/port redirection</flag>
+ <flag name='plugins'>Add support for loading builtins at runtime via
+ 'enable'</flag>
+</use>
+<upstream>
+ <remote-id type="cpe">cpe:/a:gnu:bash</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/app-shells/bashdb/Manifest b/app-shells/bashdb/Manifest
new file mode 100644
index 00000000000..0a53a1d9838
--- /dev/null
+++ b/app-shells/bashdb/Manifest
@@ -0,0 +1,4 @@
+DIST bashdb-4.1-0.4.tar.gz 708199 SHA256 ed92cd88f23b2f644e2c19cc6807d42181d42d8714b7e4a4cb15cb5158742322 SHA512 1368a21c67422ee677a04edb0c4f5c27500dfe21b401385ccd54cce387374a89af37c3e5faaeb708594479116c724be58abc1c5288f9def1c7fc277819593bad WHIRLPOOL faa5463c12f6df512d32b929026c8cbf7e75cd836c32e223be6dcb438bb3e271257104083ea6345bb43a4c4f706c1d7ffd0a3cdf2c33cb356dbe89a3c80a2874
+DIST bashdb-4.2-0.6.tar.gz 696867 SHA256 310b427c8bf2428cea3a6e21a985bbe5653af4202e5a8795b8c08bcae97b2f72 SHA512 c4b3d31efc1ca7cacdfd7b305ec35a2eb0fdc9f83e65068e3c088d2f80cc34254240cabc9a1c72f6ddd5cc08b6f5ba6845edbe457fc78a62402db038a86d6129 WHIRLPOOL a006a240f9762c4969c236ae28185f3da0a640e9c6cb1d60a4ecc4dc104710e4d9bea43014ff0c443e3d302823bed0e02a62790d25d5974f3b7c132d24ec5a03
+DIST bashdb-4.2-0.8.tar.gz 745064 SHA256 d941a183188f837400a9f68dda3f6b231d47af26e729a30e6125cbec4ea9079d SHA512 27f87d434ac6344656e2c2fb810c2b4ab4a537512b087fab323b88b2e14828c722a214af8b6e3c9848a5e1ac972c46fb9f67fc5ab8e040554a9c183ea61ed4bc WHIRLPOOL 81b4c0a17781f93b5006ad079cd5e1d072d2227a6d19bed4859ba14cc222137953bf91ec35dedcf12cb389c338d93c3286fae633c0b0516177bc682af04e16e4
+DIST bashdb-4.3-0.91.tar.bz2 660370 SHA256 60117745813f29070a034c590c9d70153cc47f47024ae54bfecdc8cd86d9e3ea SHA512 903710e61efcf272213c3dcc20799842e8ef969e791e3d1a8eab071e5b7538a195f621320945019611042ed623d005e481bd75724194cc10cb6f668b615ce3af WHIRLPOOL 075ee878713a7611b7437d4c3420669c6bcff949a9e2991cbfc533874e2b215e1c9a4d23f4f414205d979190c09eec1a2a8daa3857053dfade6f8864211534be
diff --git a/app-shells/bashdb/bashdb-4.1.0.4.ebuild b/app-shells/bashdb/bashdb-4.1.0.4.ebuild
new file mode 100644
index 00000000000..2a8d2352868
--- /dev/null
+++ b/app-shells/bashdb/bashdb-4.1.0.4.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+MY_P="${PN}-${PV:0:3}-${PV:4}"
+DESCRIPTION="bash source code debugging"
+HOMEPAGE="http://bashdb.sourceforge.net/"
+SRC_URI="mirror://sourceforge/bashdb/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="!>=app-shells/bash-${PV:0:1}.$((${PV:2:1}+1))"
+
+S=${WORKDIR}/${MY_P}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+ dodoc AUTHORS NEWS README THANKS TODO
+}
diff --git a/app-shells/bashdb/bashdb-4.2.0.6.ebuild b/app-shells/bashdb/bashdb-4.2.0.6.ebuild
new file mode 100644
index 00000000000..44673fa4b55
--- /dev/null
+++ b/app-shells/bashdb/bashdb-4.2.0.6.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+MY_P="${PN}-${PV:0:3}-${PV:4}"
+DESCRIPTION="bash source code debugging"
+HOMEPAGE="http://bashdb.sourceforge.net/"
+SRC_URI="mirror://sourceforge/bashdb/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="!>=app-shells/bash-${PV:0:1}.$((${PV:2:1}+1))"
+
+S=${WORKDIR}/${MY_P}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+ dodoc AUTHORS NEWS README THANKS TODO
+}
diff --git a/app-shells/bashdb/bashdb-4.2.0.8.ebuild b/app-shells/bashdb/bashdb-4.2.0.8.ebuild
new file mode 100644
index 00000000000..665beda5c7c
--- /dev/null
+++ b/app-shells/bashdb/bashdb-4.2.0.8.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+MY_P="${PN}-${PV:0:3}-${PV:4}"
+DESCRIPTION="bash source code debugging"
+HOMEPAGE="http://bashdb.sourceforge.net/"
+SRC_URI="mirror://sourceforge/bashdb/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="!>=app-shells/bash-${PV:0:1}.$((${PV:2:1}+1))"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ # We don't install this, so don't bother building it. #468044
+ sed -i 's:texi2html:true:' doc/Makefile.in || die
+}
diff --git a/app-shells/bashdb/bashdb-4.3.0.91.ebuild b/app-shells/bashdb/bashdb-4.3.0.91.ebuild
new file mode 100644
index 00000000000..b04f2f69083
--- /dev/null
+++ b/app-shells/bashdb/bashdb-4.3.0.91.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+MY_P="${PN}-${PV:0:3}-${PV:4}"
+DESCRIPTION="bash source code debugging"
+HOMEPAGE="http://bashdb.sourceforge.net/"
+SRC_URI="mirror://sourceforge/bashdb/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="!>=app-shells/bash-${PV:0:1}.$((${PV:2:1}+1))"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ # We don't install this, so don't bother building it. #468044
+ sed -i 's:texi2html:true:' doc/Makefile.in || die
+}
diff --git a/app-shells/bashdb/metadata.xml b/app-shells/bashdb/metadata.xml
new file mode 100644
index 00000000000..cd565ccf05d
--- /dev/null
+++ b/app-shells/bashdb/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>base-system</herd>
+ <upstream>
+ <remote-id type="sourceforge">bashdb</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/bashish/Manifest b/app-shells/bashish/Manifest
new file mode 100644
index 00000000000..9b7be7c036b
--- /dev/null
+++ b/app-shells/bashish/Manifest
@@ -0,0 +1 @@
+DIST bashish-2.2.4.tar.gz 241565 SHA256 3de48bc1aa69ec73dafc7436070e688015d794f22f6e74d5c78a0b09c938204b SHA512 667ad91c71c99b2f0975eaf64ce4c2be1e60ce921e7232842fae62b6fdd9eca073c5941d5fd9b1af0d77dbb08e9ace3e0c43ed113761c2442f99f762ad581d46 WHIRLPOOL 5bf6c6199d69aec39b35b705a7f5b05f00f1bfe60af1d9b3524d302a33ea5846622e833804ec21343053c3c7d59f7cc04975c7c73ed174b98f7df4de8e5fce66
diff --git a/app-shells/bashish/bashish-2.2.4.ebuild b/app-shells/bashish/bashish-2.2.4.ebuild
new file mode 100644
index 00000000000..cf58db9a9b0
--- /dev/null
+++ b/app-shells/bashish/bashish-2.2.4.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Text console theme engine"
+HOMEPAGE="http://bashish.sourceforge.net/"
+SRC_URI="mirror://sourceforge/bashish/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 hppa ia64 ppc sparc x86"
+IUSE=""
+
+RDEPEND=">=dev-util/dialog-1.0"
+
+src_install() {
+ default
+ mv "${D}"/usr/share/doc/{${PN},${PF}} || die "mv docs failed"
+}
diff --git a/app-shells/bashish/metadata.xml b/app-shells/bashish/metadata.xml
new file mode 100644
index 00000000000..c5c1ea903fb
--- /dev/null
+++ b/app-shells/bashish/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>jer@gentoo.org</email>
+ <name>Jeroen Roovers</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">bashish</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/ccsh/Manifest b/app-shells/ccsh/Manifest
new file mode 100644
index 00000000000..d275ccb8dc3
--- /dev/null
+++ b/app-shells/ccsh/Manifest
@@ -0,0 +1 @@
+DIST ccsh-0.0.4.tar.gz 11625 SHA256 d0be3edb97fd227e267cd917eb252b1cdb1b7bba3de0509598014dacb89227ec SHA512 114c471870a23682ebc6bf1967bb82af55eb8a56abcb3472492d08a39906d9a6476adb619f2b9a6097c4ccf75f9ea266d297e50de39a277aea4eadea15cc06ba WHIRLPOOL 6957d3f23da773dbb567bbfefdc00b269af72f4486e3e0763b2481a04ef979c0dcac5c459eba0b2827298e60e7ffa99372c974a17bebbf2faeaa74c76ff6f874
diff --git a/app-shells/ccsh/ccsh-0.0.4-r3.ebuild b/app-shells/ccsh/ccsh-0.0.4-r3.ebuild
new file mode 100644
index 00000000000..0b457e07bbf
--- /dev/null
+++ b/app-shells/ccsh/ccsh-0.0.4-r3.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit toolchain-funcs
+
+DESCRIPTION="UNIX Shell for people already familiar with the C language"
+HOMEPAGE="http://ccsh.sourceforge.net/"
+SRC_URI="http://download.sourceforge.net/ccsh/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc sparc x86"
+IUSE=""
+
+src_compile() {
+ emake CFLAGS="${CFLAGS}" CC="$(tc-getCC)"
+}
+
+src_install() {
+ exeinto /bin
+ doexe ccsh
+ newman ccsh.man ccsh.1
+ dodoc ChangeLog README TODO
+}
diff --git a/app-shells/ccsh/metadata.xml b/app-shells/ccsh/metadata.xml
new file mode 100644
index 00000000000..b6b8956cde3
--- /dev/null
+++ b/app-shells/ccsh/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>pinkbyte@gentoo.org</email>
+ <name>Sergey Popov</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-shells/dash/Manifest b/app-shells/dash/Manifest
new file mode 100644
index 00000000000..9dc89c12d65
--- /dev/null
+++ b/app-shells/dash/Manifest
@@ -0,0 +1,5 @@
+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
+DIST dash_0.5.7-4.diff.gz 42834 SHA256 649d97aa0c48dc0db73c08d7e89a004b9d413279a823388161940342016284f0 SHA512 6b53684deebb9ac8ac0f42fa25ff5cad7f717b01473bdb29e968ea2cf3753f83013d70dcea4d4d3e7906b09760f086b10acaff0ebb3445bd392d8276fb865224 WHIRLPOOL efa53e58c6223ef8d9b84780ef873d2a268fc1f40f879f5c731cf37717050b2333a01eb01a44d55e58c14e1c78c6e6d41b4652278311d72657089632358a9aab
+DIST dash_0.5.8-1.diff.gz 41661 SHA256 d751769cc1ef8b825a177e782f1cd3e35bde7c268107fa4febf8d235e12c64d9 SHA512 38e5c4d5b5525b6d1749f6fe6a810fde3233d3412b8cf3bb1f07db162c0d0a8bcbb39c79df846e4b2c43dbea00820fd935a4af707a6ac161b1daa710ae2417b4 WHIRLPOOL a4612fca6f29f17e80ea531699f5fab22837b9ee20b8a73776258e9bf087821d0d9e494c12fd76b657ad112478912074666e61d008664c2daab0cf7b3a25cb95
+DIST dash_0.5.8-2.diff.gz 41715 SHA256 00168a934864c26cae9a51367fe7ea013ece2d4844ff8bd6893fc00a8fa7b38c SHA512 f067ca162cc463a60b5bcd7926bd6ab1f6cb1757e9cd7894cbf7ba5849b6d9af5381b8ec7264c503db544242690db067b6c034041e262ff93d237f1c06e50e56 WHIRLPOOL 1c904df104c6026d3ec53843fb67563d88dd8a4babb779b369ccd037e1774d722a85ad92c184d713cd7a440be4885c7e739da17f038fcf88545afc527ddabb3f
diff --git a/app-shells/dash/dash-0.5.7.4.ebuild b/app-shells/dash/dash-0.5.7.4.ebuild
new file mode 100644
index 00000000000..5a6d473eb7c
--- /dev/null
+++ b/app-shells/dash/dash-0.5.7.4.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit autotools 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.5.1-octal.patch #337329
+
+ # 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 "/LIBS/s:-ledit:\`$(tc-getPKG_CONFIG) --libs libedit $(usex static --static '')\`:" configure.ac
+
+ # May as well, as the debian patches force this anyway
+ eautoreconf
+}
+
+src_configure() {
+ use static && append-ldflags -static
+ # Do not pass --enable-glob due to #443552.
+ econf \
+ --bindir="${EPREFIX}"/bin \
+ --enable-fnmatch \
+ $(use_with libedit)
+}
+
+src_install() {
+ default
+ dodoc */debian/changelog
+}
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 00000000000..c3c39626d37
--- /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
+# $Id$
+
+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/dash-0.5.8.2.ebuild b/app-shells/dash/dash-0.5.8.2.ebuild
new file mode 100644
index 00000000000..80321794950
--- /dev/null
+++ b/app-shells/dash/dash-0.5.8.2.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+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.5.1-octal.patch b/app-shells/dash/files/dash-0.5.5.1-octal.patch
new file mode 100644
index 00000000000..760e4ad5620
--- /dev/null
+++ b/app-shells/dash/files/dash-0.5.5.1-octal.patch
@@ -0,0 +1,29 @@
+http://bugs.gentoo.org/337329
+
+do not interpret \\1 as an octal sequence. require it to start with \\0.
+
+--- a/src/bltin/printf.c
++++ b/src/bltin/printf.c
+@@ -247,18 +247,10 @@ conv_escape_str(char *str)
+ * They start with a \0, and are followed by 0, 1, 2,
+ * or 3 octal digits.
+ */
+- if (ch == '0') {
+- unsigned char i;
+- i = 3;
+- ch = 0;
+- do {
+- unsigned k = octtobin(*str);
+- if (k > 7)
+- break;
+- str++;
+- ch <<= 3;
+- ch += k;
+- } while (--i);
++ if (ch >= '1' && ch <= '9') {
++ /* Filter \1...\9; let \0 fall to conv_escape(). */
++ ch = '\\';
++ --str;
+ continue;
+ }
+
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 00000000000..4059a80e330
--- /dev/null
+++ b/app-shells/dash/files/dash-0.5.8.1-dumb-echo.patch
@@ -0,0 +1,105 @@
+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;
+ }
+--- a/src/dash.1
++++ b/src/dash.1
+@@ -1180,43 +1180,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
+ .Pp
+-All other backslash sequences elicit undefined behaviour.
++No arguments or backslash sequences are supported as they are not portable.
++They will be printed out exactly as passed in.
++.Pp
++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.
diff --git a/app-shells/dash/files/dash-0.5.8.1-eval-warnx.patch b/app-shells/dash/files/dash-0.5.8.1-eval-warnx.patch
new file mode 100644
index 00000000000..51530bfdaf5
--- /dev/null
+++ b/app-shells/dash/files/dash-0.5.8.1-eval-warnx.patch
@@ -0,0 +1,12 @@
+fix one of the Debian patches -- it uses warnx but doesn't include err.h.
+
+--- a/src/eval.c
++++ b/src/eval.c
+@@ -36,6 +36,7 @@
+ #include <signal.h>
+ #include <unistd.h>
+ #include <sys/types.h>
++#include <err.h>
+
+ /*
+ * Evaluate a command.
diff --git a/app-shells/dash/metadata.xml b/app-shells/dash/metadata.xml
new file mode 100644
index 00000000000..54de097c10a
--- /dev/null
+++ b/app-shells/dash/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>base-system</herd>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:dash:dash</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/dsh/Manifest b/app-shells/dsh/Manifest
new file mode 100644
index 00000000000..20b7c138599
--- /dev/null
+++ b/app-shells/dsh/Manifest
@@ -0,0 +1 @@
+DIST dsh-0.25.10.tar.gz 394506 SHA256 520031a5474c25c6b3f9a0840e06a4fea4750734043ab06342522f533fa5b4d0 SHA512 a53fba14e65644ce5858b1e9827601016db6d61cb50b0229ea53eeaee676f5870d2dbfd6ebde237008bfc7144316484529c646104e72d99868d44d814a41a009 WHIRLPOOL 63c88c40063ca333c9c94d4e83847c122443e6edb5754efa8b2da0182378c58c79dd26d2a368b63d0956dd760e4b37ce35627222bdb17a95e81f7e56657e0fdb
diff --git a/app-shells/dsh/dsh-0.25.10.ebuild b/app-shells/dsh/dsh-0.25.10.ebuild
new file mode 100644
index 00000000000..d629eddc209
--- /dev/null
+++ b/app-shells/dsh/dsh-0.25.10.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+
+DESCRIPTION="Distributed Shell"
+HOMEPAGE="http://www.netfort.gr.jp/~dancer/software/dsh.html.en"
+SRC_URI="http://www.netfort.gr.jp/~dancer/software/downloads/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~m68k-mint"
+IUSE="nls"
+
+DEPEND="dev-libs/libdshconfig"
+RDEPEND="${DEPEND}
+ virtual/ssh"
+
+src_configure() {
+ econf --sysconfdir="${EPREFIX}"/etc/dsh $(use_enable nls)
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed."
+ dodir /etc/dsh/group
+ dodoc AUTHORS ChangeLog NEWS README THANKS TODO
+}
diff --git a/app-shells/dsh/metadata.xml b/app-shells/dsh/metadata.xml
new file mode 100644
index 00000000000..348e6c4de81
--- /dev/null
+++ b/app-shells/dsh/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>cluster</herd>
+</pkgmetadata>
diff --git a/app-shells/esh/Manifest b/app-shells/esh/Manifest
new file mode 100644
index 00000000000..46c2f39e66e
--- /dev/null
+++ b/app-shells/esh/Manifest
@@ -0,0 +1 @@
+DIST esh-0.8.5.tar.gz 214040 SHA256 8801c8ffacc07240da20425728bd69897fc26f07839e7e8d5ee9059097961744 SHA512 2473cc2418f70533136305f47dfe59bee560206a8b58c080e2113297dd82483e867937bda1b015069a7220552b4d03346a3b71026a24a2795b0b499e355490a0 WHIRLPOOL c75b59102d6b4bfdc64802016b1af96598d541d75efeb5e255a3d61a4245b0980b5e7d83b453f47eb366aab26a832870e6049cf52ad912e68aaf73b577f22114
diff --git a/app-shells/esh/esh-0.8.5-r2.ebuild b/app-shells/esh/esh-0.8.5-r2.ebuild
new file mode 100644
index 00000000000..44f147ea28c
--- /dev/null
+++ b/app-shells/esh/esh-0.8.5-r2.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="A UNIX Shell with a simplified Scheme syntax"
+HOMEPAGE="http://slon.ttk.ru/esh/"
+SRC_URI="http://slon.ttk.ru/esh/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="debug"
+
+DEPEND=">=sys-libs/readline-4.1"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${PN}"
+
+src_prepare() {
+ emake clean
+
+ sed -i \
+ -e 's|-g ||' \
+ -e 's|-DMEM_DEBUG ||' \
+ -e 's|^CFLAGS|&+|g' \
+ -e 's|$(CC) |&$(CFLAGS) $(LDFLAGS) |g' \
+ -e 's:-ltermcap::' \
+ Makefile || die
+}
+
+src_compile() {
+ # For some reason, this tarball has binary files in it for x86.
+ # Make clean so we can rebuild for our arch and optimization.
+
+ use debug && append-flags -DMEM_DEBUG
+
+ emake \
+ CC="$(tc-getCC)" \
+ LDFLAGS="${LDFLAGS}"
+}
+
+src_install() {
+ dobin esh
+ doinfo doc/esh.info
+ dodoc CHANGELOG CREDITS GC_README HEADER READLINE-HACKS TODO
+ dohtml doc/*.html
+ docinto examples
+ dodoc examples/*
+}
diff --git a/app-shells/esh/metadata.xml b/app-shells/esh/metadata.xml
new file mode 100644
index 00000000000..d9cd2cad66c
--- /dev/null
+++ b/app-shells/esh/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+<email>maintainer-needed@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/app-shells/fish/Manifest b/app-shells/fish/Manifest
new file mode 100644
index 00000000000..f14d51039b9
--- /dev/null
+++ b/app-shells/fish/Manifest
@@ -0,0 +1,3 @@
+DIST fish-2.1.1.tar.gz 1681744 SHA256 b7e4d3c3d55fc3859edcb20462fcf0d14ab26e920eddcd503072e8105284d924 SHA512 c6b41a7514d684bc165bdf03edd0f07b0cdfbcc827a3bcc6e9105bbf6b94a60962bd7fffaf5f9c44c450da3d4b6af4bdcf72fbbaaa043851c631d8c2a1344dd6 WHIRLPOOL c6bcbfea35d68f99903633f06a436cf982f6fc01123cebbb4342be1b3f3be106c0ac144d24b2069bf34bc7e3540d26526a8ef8b74e4f27255525ad0d7cb70774
+DIST fish-2.1.2.tar.gz 1730198 SHA256 c6c20d5ca3a2a0168461de8abfe85f9e6b255132698ea0109998d4ab68f9f6dd SHA512 4f8f0133094d4d2295546a5b96e044646de2266364610368210b0db529b2d865c1b389f01f311b9b6d6d6dcd2a29040b7a9499d491605ae52a765a76d83db2a5 WHIRLPOOL 2a02dd0f91731cfc79de64245c34fc4361f42406d0c0a60afbafa08c2b9265d11c4adadc96ca5eb49b9053db1eb949c297eee23a7cbc63a30f56ce577b650779
+DIST fish-2.2.0.tar.gz 2213037 SHA256 a76339fd14ce2ec229283c53e805faac48c3e99d9e3ede9d82c0554acfc7b77a SHA512 210047f56b105a3d372f03d3a2de41661ed18001e3c8fa053ae4aa43089118d4467837ea022bc44f9877ecc3d0563b365f97920c002faccebaa663c4f079e9e0 WHIRLPOOL 8b25e437e0c942255b5f39686008fb37ec45cea52e04b2d61facf1fdcd59510138dace506eadb17eb0074d175d3c1226d6e52d437e325ed5a90e22e696918d9d
diff --git a/app-shells/fish/files/fish-2.1.0-tinfo.patch b/app-shells/fish/files/fish-2.1.0-tinfo.patch
new file mode 100644
index 00000000000..ba4cc40a188
--- /dev/null
+++ b/app-shells/fish/files/fish-2.1.0-tinfo.patch
@@ -0,0 +1,11 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -480,7 +480,7 @@
+ AC_SEARCH_LIBS( connect, socket, , [AC_MSG_ERROR([Cannot find the socket library, needed to build this package.] )] )
+ AC_SEARCH_LIBS( nanosleep, rt, , [AC_MSG_ERROR([Cannot find the rt library, needed to build this package.] )] )
+ AC_SEARCH_LIBS( pthread_create, pthread, , [AC_MSG_ERROR([Cannot find the pthread library, needed to build this package.] )] )
+-AC_SEARCH_LIBS( setupterm, [ncurses curses], , [AC_MSG_ERROR([Could not find a curses implementation, needed to build fish. If this is Linux, try running 'sudo apt-get install libncurses5-dev' or 'sudo yum install ncurses-devel'])] )
++AC_SEARCH_LIBS( setupterm, [ncurses tinfo curses], , [AC_MSG_ERROR([Could not find a curses implementation, needed to build fish. If this is Linux, try running 'sudo apt-get install libncurses5-dev' or 'sudo yum install ncurses-devel'])] )
+ AC_SEARCH_LIBS( [nan], [m], [AC_DEFINE( [HAVE_NAN], [1], [Define to 1 if you have the nan function])] )
+ LIBS_SHARED=$LIBS
+ LIBS=$LIBS_COMMON
diff --git a/app-shells/fish/fish-2.1.1.ebuild b/app-shells/fish/fish-2.1.1.ebuild
new file mode 100644
index 00000000000..c1a29833c1b
--- /dev/null
+++ b/app-shells/fish/fish-2.1.1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_2,3_3,3_4} )
+
+inherit base autotools
+
+DESCRIPTION="fish is the Friendly Interactive SHell"
+HOMEPAGE="http://fishshell.com/"
+SRC_URI="http://fishshell.com/files/${PV}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
+IUSE="X"
+
+DEPEND="sys-libs/ncurses
+ sys-devel/bc
+ sys-devel/gettext
+ X? ( x11-misc/xsel )"
+
+# fish can add man-page completions from lzma and xz compressed man pages
+# through a python script. That's why we depend on python here (bug #490478)
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2.1.0-tinfo.patch #459768
+
+ eautoreconf
+}
+
+src_configure() {
+ # Set things up for fish to be a default shell.
+ # It has to be in /bin in case /usr is unavailable.
+ # Also, all of its utilities have to be in /bin.
+ econf \
+ docdir="${EPREFIX}"/usr/share/doc/${PF} \
+ --bindir="${EPREFIX}"/bin
+}
+
+src_test() {
+ if has_version ~${CATEGORY}/${P} ; then
+ emake test
+ else
+ ewarn "The test suite only works when the package is already installed"
+ fi
+}
+
+pkg_postinst() {
+ elog "fish is now installed on your system."
+ elog "To run fish, type 'fish' in your terminal."
+ elog
+ elog "To use fish as your login shell:"
+ elog "* add the line '${EPREFIX}/bin/${PN}'"
+ elog "* to the file '${EPREFIX}/etc/shells'."
+ elog "* use the command 'chsh -s ${EPREFIX}/bin/${PN}'."
+ elog
+ elog "To set your colors, run 'fish_config'"
+ elog "To scan your man pages for completions, run 'fish_update_completions'"
+ elog "To autocomplete command suggestions press Ctrl + F or right arrow key."
+ elog
+ elog "Please add a \"BROWSER\" variable to ${PN}'s environment pointing to the"
+ elog "browser of your choice to get acces to ${PN}'s help system:"
+ elog " BROWSER=\"/usr/bin/firefox\""
+ elog
+ elog "In order to get lzma and xz support for man-page completion please"
+ elog "emerge one of the following packages:"
+ elog " dev-python/backports-lzma"
+ elog " >=dev-lang/python-3.3"
+ elog
+ elog "Have fun!"
+}
diff --git a/app-shells/fish/fish-2.1.2.ebuild b/app-shells/fish/fish-2.1.2.ebuild
new file mode 100644
index 00000000000..ad4b8a27f17
--- /dev/null
+++ b/app-shells/fish/fish-2.1.2.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_2,3_3,3_4} )
+
+inherit base autotools
+
+DESCRIPTION="fish is the Friendly Interactive SHell"
+HOMEPAGE="http://fishshell.com/"
+SRC_URI="http://fishshell.com/files/${PV}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
+IUSE="X"
+
+DEPEND="sys-libs/ncurses
+ sys-devel/bc
+ sys-devel/gettext
+ X? ( x11-misc/xsel )"
+
+# fish can add man-page completions from lzma and xz compressed man pages
+# through a python script. That's why we depend on python here (bug #490478)
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2.1.0-tinfo.patch #459768
+
+ eautoreconf
+}
+
+src_configure() {
+ # Set things up for fish to be a default shell.
+ # It has to be in /bin in case /usr is unavailable.
+ # Also, all of its utilities have to be in /bin.
+ econf \
+ docdir="${EPREFIX}"/usr/share/doc/${PF} \
+ --bindir="${EPREFIX}"/bin
+}
+
+src_test() {
+ if has_version ~${CATEGORY}/${P} ; then
+ emake test
+ else
+ ewarn "The test suite only works when the package is already installed"
+ fi
+}
+
+pkg_postinst() {
+ elog "fish is now installed on your system."
+ elog "To run fish, type 'fish' in your terminal."
+ elog
+ elog "To use fish as your login shell:"
+ elog "* add the line '${EPREFIX}/bin/${PN}'"
+ elog "* to the file '${EPREFIX}/etc/shells'."
+ elog "* use the command 'chsh -s ${EPREFIX}/bin/${PN}'."
+ elog
+ elog "To set your colors, run 'fish_config'"
+ elog "To scan your man pages for completions, run 'fish_update_completions'"
+ elog "To autocomplete command suggestions press Ctrl + F or right arrow key."
+ elog
+ elog "Please add a \"BROWSER\" variable to ${PN}'s environment pointing to the"
+ elog "browser of your choice to get acces to ${PN}'s help system:"
+ elog " BROWSER=\"/usr/bin/firefox\""
+ elog
+ elog "In order to get lzma and xz support for man-page completion please"
+ elog "emerge one of the following packages:"
+ elog " dev-python/backports-lzma"
+ elog " >=dev-lang/python-3.3"
+ elog
+ elog "Have fun!"
+}
diff --git a/app-shells/fish/fish-2.2.0.ebuild b/app-shells/fish/fish-2.2.0.ebuild
new file mode 100644
index 00000000000..40bb796f251
--- /dev/null
+++ b/app-shells/fish/fish-2.2.0.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_2,3_3,3_4} )
+
+inherit base
+
+DESCRIPTION="fish is the Friendly Interactive SHell"
+HOMEPAGE="http://fishshell.com/"
+SRC_URI="http://fishshell.com/files/${PV}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
+IUSE="X"
+
+DEPEND="sys-libs/ncurses
+ sys-devel/bc
+ sys-devel/gettext
+ X? ( x11-misc/xsel )"
+
+# fish can add man-page completions from lzma and xz compressed man pages
+# through a python script. That's why we depend on python here (bug #490478)
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ # Set things up for fish to be a default shell.
+ # It has to be in /bin in case /usr is unavailable.
+ # Also, all of its utilities have to be in /bin.
+ econf \
+ docdir="${EPREFIX}"/usr/share/doc/${PF} \
+ --bindir="${EPREFIX}"/bin
+}
+
+src_test() {
+ if has_version ~${CATEGORY}/${P} ; then
+ emake test
+ else
+ ewarn "The test suite only works when the package is already installed"
+ fi
+}
+
+pkg_postinst() {
+ elog "fish is now installed on your system."
+ elog "To run fish, type 'fish' in your terminal."
+ elog
+ elog "To use fish as your login shell:"
+ elog "* add the line '${EPREFIX}/bin/${PN}'"
+ elog "* to the file '${EPREFIX}/etc/shells'."
+ elog "* use the command 'chsh -s ${EPREFIX}/bin/${PN}'."
+ elog
+ elog "To set your colors, run 'fish_config'"
+ elog "To scan your man pages for completions, run 'fish_update_completions'"
+ elog "To autocomplete command suggestions press Ctrl + F or right arrow key."
+ elog
+ elog "Please add a \"BROWSER\" variable to ${PN}'s environment pointing to the"
+ elog "browser of your choice to get acces to ${PN}'s help system:"
+ elog " BROWSER=\"/usr/bin/firefox\""
+ elog
+ elog "In order to get lzma and xz support for man-page completion please"
+ elog "emerge one of the following packages:"
+ elog " dev-python/backports-lzma"
+ elog " >=dev-lang/python-3.3"
+ elog
+ elog "Have fun!"
+}
diff --git a/app-shells/fish/metadata.xml b/app-shells/fish/metadata.xml
new file mode 100644
index 00000000000..c9169515bdf
--- /dev/null
+++ b/app-shells/fish/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>polynomial-c@gentoo.org</email>
+ <name>Lars Wendler</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-shells/gentoo-bashcomp/Manifest b/app-shells/gentoo-bashcomp/Manifest
new file mode 100644
index 00000000000..c29009c6dd8
--- /dev/null
+++ b/app-shells/gentoo-bashcomp/Manifest
@@ -0,0 +1,3 @@
+DIST gentoo-bashcomp-20101217.tar.bz2 23095 SHA256 834e62a9189294f30771fce3fcdeca5fae6fd706c7fd35047f246fb2c0e8cd5a SHA512 29c4802b8f71585b7146e454f44700954de8655aa46dda7046338ed46e1e9835f4ea4141cfd5a813a5f75b6586b030e0e0cbde4c8030ec303f98110fa7a5e316 WHIRLPOOL 1d2c0ea0cd9a4888cc86b05bc9f9c9e9810a7af3c601c000cfc03d1f648cf958308d0d0c09615aec9b1d5b1f550398fca08b6a5b60cbc86d189650d13d2d0987
+DIST gentoo-bashcomp-20121024.tar.bz2 28025 SHA256 e7c23a671fa5fee6647729bfb0f93984fda3a33256cf5a29af6f525f2068c42a SHA512 ca755de801b8ecba6267395930024cbd6eb7f3f78c08de5caff6621bcf99554b68f8d3bb93f517f6a7fe27b08c42c8896910b0b93f8917db6e0172bfd614bacd WHIRLPOOL f4a08409874d9481618392810aa942c489337075d01050da24ee88b0dd41e303fc0b44a7f919034d1ddf543cc2a06c3d1cb46430e356a7f6f910a9874d0144bf
+DIST gentoo-bashcomp-20140911.tar.bz2 30258 SHA256 71d14492f9af8fe53e20bb130884fea36cf4ea643c8854713aa509b8602b7fb3 SHA512 cacd1c3353bce7e67d00758a714829860111932ab7addd0a84a06cae9218ff18aff4ea562e0682ca4db859408ca15817edd81548d54144223ed5016667549f7f WHIRLPOOL fb208cb268efa43dcb5a71a29c96c3ebe3731cbcb2cfa3d10776fa5ede20eadd496eab69d2c448346deaf367b49cca8ae92b77af40ceb4fac725249caffd6def
diff --git a/app-shells/gentoo-bashcomp/files/gentoo-bashcomp-20101217-make_globals.patch b/app-shells/gentoo-bashcomp/files/gentoo-bashcomp-20101217-make_globals.patch
new file mode 100644
index 00000000000..ff5262cdabf
--- /dev/null
+++ b/app-shells/gentoo-bashcomp/files/gentoo-bashcomp-20101217-make_globals.patch
@@ -0,0 +1,11 @@
+--- a/gentoo
++++ b/gentoo
+@@ -21,7 +21,7 @@ have()
+ _portdir()
+ {
+ (
+- source @GENTOO_PORTAGE_EPREFIX@/etc/make.globals 2>/dev/null
++ source @GENTOO_PORTAGE_EPREFIX@/usr/share/portage/config/make.globals 2>/dev/null
+ source @GENTOO_PORTAGE_EPREFIX@/etc/make.conf 2>/dev/null
+
+ echo ${PORTDIR}
diff --git a/app-shells/gentoo-bashcomp/gentoo-bashcomp-20101217-r1.ebuild b/app-shells/gentoo-bashcomp/gentoo-bashcomp-20101217-r1.ebuild
new file mode 100644
index 00000000000..752c20ab2a0
--- /dev/null
+++ b/app-shells/gentoo-bashcomp/gentoo-bashcomp-20101217-r1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit eutils prefix
+
+DESCRIPTION="Gentoo-specific bash command-line completions (emerge, ebuild, equery, repoman, layman, etc)"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="mirror://gentoo/${P}.tar.bz2
+ http://dev.gentoo.org/~darkside/tmp/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris"
+IUSE=""
+
+RDEPEND="app-shells/bash-completion"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-make_globals.patch" #431034
+ eprefixify gentoo
+}
+
+src_compile() { :; } # There is a useless Makefile in the distfile
+
+src_install() {
+ insinto /usr/share/bash-completion
+ doins gentoo || die "failed to install gentoo module"
+ doins repoman || die "failed to install repoman module"
+ doins layman || die "failed to install layman module"
+ dodoc AUTHORS ChangeLog TODO
+}
+
+pkg_postinst() {
+ # can't use bash-completion.eclass.
+ elog "To enable command-line completion for ${PN}, run:"
+ elog
+ elog " eselect bashcomp enable gentoo"
+ elog
+ elog "to install locally, or"
+ elog
+ elog " eselect bashcomp enable --global gentoo"
+ elog
+ elog "to install system-wide. (and/or repoman instead of gentoo if you use"
+ elog "repoman frequently)"
+}
diff --git a/app-shells/gentoo-bashcomp/gentoo-bashcomp-20121024.ebuild b/app-shells/gentoo-bashcomp/gentoo-bashcomp-20121024.ebuild
new file mode 100644
index 00000000000..733412a327d
--- /dev/null
+++ b/app-shells/gentoo-bashcomp/gentoo-bashcomp-20121024.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit eutils prefix
+
+DESCRIPTION="Gentoo-specific bash command-line completions (emerge, ebuild, equery, repoman, layman, etc)"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="mirror://gentoo/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris"
+IUSE=""
+
+RDEPEND="app-shells/bash-completion"
+
+src_prepare() {
+ eprefixify gentoo
+}
+
+src_compile() { :; } # There is a useless Makefile in the distfile
+
+src_install() {
+ insinto /usr/share/bash-completion
+ doins gentoo || die "failed to install gentoo module"
+ doins repoman || die "failed to install repoman module"
+ doins layman || die "failed to install layman module"
+ dodoc AUTHORS ChangeLog TODO
+}
+
+pkg_postinst() {
+ # can't use bash-completion.eclass.
+ elog "To enable command-line completion for ${PN}, run:"
+ elog
+ elog " eselect bashcomp enable gentoo"
+ elog
+ elog "to install locally, or"
+ elog
+ elog " eselect bashcomp enable --global gentoo"
+ elog
+ elog "to install system-wide. (and/or repoman instead of gentoo if you use"
+ elog "repoman frequently)"
+}
diff --git a/app-shells/gentoo-bashcomp/gentoo-bashcomp-20140911.ebuild b/app-shells/gentoo-bashcomp/gentoo-bashcomp-20140911.ebuild
new file mode 100644
index 00000000000..3d5fd3cad17
--- /dev/null
+++ b/app-shells/gentoo-bashcomp/gentoo-bashcomp-20140911.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit bash-completion-r1
+
+DESCRIPTION="Gentoo-specific bash command-line completions (emerge, ebuild, equery, repoman, layman, etc)"
+HOMEPAGE="http://www.gentoo.org/"
+SRC_URI="http://dev.gentoo.org/~mgorny/dist/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris"
+IUSE=""
+
+src_install() {
+ emake DESTDIR="${D}" install \
+ completionsdir="$(get_bashcompdir)" \
+ helpersdir="$(get_bashhelpersdir)" \
+ compatdir="${EPREFIX}/etc/bash_completion.d"
+}
diff --git a/app-shells/gentoo-bashcomp/metadata.xml b/app-shells/gentoo-bashcomp/metadata.xml
new file mode 100644
index 00000000000..40149c99556
--- /dev/null
+++ b/app-shells/gentoo-bashcomp/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>shell-tools</herd>
+</pkgmetadata>
diff --git a/app-shells/gentoo-zsh-completions/Manifest b/app-shells/gentoo-zsh-completions/Manifest
new file mode 100644
index 00000000000..32180684f0c
--- /dev/null
+++ b/app-shells/gentoo-zsh-completions/Manifest
@@ -0,0 +1,2 @@
+DIST gentoo-zsh-completions-20141115.tar.xz 19672 SHA256 8da688b38065728056a0557971894668657c029bf1127521eb088268c421bc27 SHA512 23debde6227574285ba123ad312db535d40813de686ef4c89f1e4cd9acb3c1ab63f5094194a50e6d272ad9ce3fa1ec6ef0bf4cf93424e2ec7adcb4c74572e420 WHIRLPOOL d22a5e897d4eb48e7191172f9da40c23b84f9fade10fb383e251562522b7b96c918af2de047a1a88ac385e13a6d0dc86fc1292dc9b7d5ad42696d48b618f6c21
+DIST gentoo-zsh-completions-20150103.tar.gz 23759 SHA256 b9636fe7a2d9b586437688c30b53efc6c005d2e4599a001af72ebb6cef772631 SHA512 4d87edda071d98672df79e3dbb9565757c0738bc50751d31e5dfefab4f17523387fb2342906ecc0600ce86d888ab4a785756bbb1daf37ca56a3ce1af9e5ae173 WHIRLPOOL 8b685bd0838f14feaed7a23c47b9af884a509fbf99db9d91cac39604671405f2e5a2e9e3945c6bd049f85a2ecde244c92bc8db2e72d4a9b852b021dd78fe8900
diff --git a/app-shells/gentoo-zsh-completions/gentoo-zsh-completions-20141115.ebuild b/app-shells/gentoo-zsh-completions/gentoo-zsh-completions-20141115.ebuild
new file mode 100644
index 00000000000..691941b0a87
--- /dev/null
+++ b/app-shells/gentoo-zsh-completions/gentoo-zsh-completions-20141115.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Gentoo specific zsh completion support (includes emerge and ebuild commands)"
+HOMEPAGE="https://github.com/radhermit/gentoo-zsh-completions"
+SRC_URI="http://dev.gentoo.org/~radhermit/dist/${P}.tar.xz"
+
+LICENSE="ZSH"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc64-solaris"
+
+RDEPEND=">=app-shells/zsh-4.3.5"
+
+src_install() {
+ insinto /usr/share/zsh/site-functions
+ doins _*
+
+ dodoc AUTHORS
+}
+
+pkg_postinst() {
+ elog
+ elog "If you happen to compile your functions, you may need to delete"
+ elog "~/.zcompdump{,.zwc} and recompile to make the new completions available"
+ elog "to your shell."
+ elog
+}
diff --git a/app-shells/gentoo-zsh-completions/gentoo-zsh-completions-20150103.ebuild b/app-shells/gentoo-zsh-completions/gentoo-zsh-completions-20150103.ebuild
new file mode 100644
index 00000000000..28d819245c2
--- /dev/null
+++ b/app-shells/gentoo-zsh-completions/gentoo-zsh-completions-20150103.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+if [[ ${PV} == 9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/radhermit/gentoo-zsh-completions.git"
+else
+ SRC_URI="https://github.com/radhermit/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc64-solaris"
+fi
+
+DESCRIPTION="Gentoo specific zsh completion support (includes emerge and ebuild commands)"
+HOMEPAGE="https://github.com/radhermit/gentoo-zsh-completions"
+
+LICENSE="ZSH"
+SLOT="0"
+
+RDEPEND=">=app-shells/zsh-4.3.5"
+
+src_install() {
+ insinto /usr/share/zsh/site-functions
+ doins src/_*
+
+ dodoc AUTHORS
+}
diff --git a/app-shells/gentoo-zsh-completions/gentoo-zsh-completions-99999999.ebuild b/app-shells/gentoo-zsh-completions/gentoo-zsh-completions-99999999.ebuild
new file mode 100644
index 00000000000..fb166618529
--- /dev/null
+++ b/app-shells/gentoo-zsh-completions/gentoo-zsh-completions-99999999.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+if [[ ${PV} == 9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/radhermit/gentoo-zsh-completions.git"
+else
+ SRC_URI="https://github.com/radhermit/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc64-solaris"
+fi
+
+DESCRIPTION="Gentoo specific zsh completion support (includes emerge and ebuild commands)"
+HOMEPAGE="https://github.com/radhermit/gentoo-zsh-completions"
+
+LICENSE="ZSH"
+SLOT="0"
+
+RDEPEND=">=app-shells/zsh-4.3.5"
+
+src_install() {
+ insinto /usr/share/zsh/site-functions
+ doins src/_*
+
+ dodoc AUTHORS
+}
diff --git a/app-shells/gentoo-zsh-completions/metadata.xml b/app-shells/gentoo-zsh-completions/metadata.xml
new file mode 100644
index 00000000000..5e9d5c770f6
--- /dev/null
+++ b/app-shells/gentoo-zsh-completions/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>radhermit@gentoo.org</email>
+ <name>Tim Harder</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">radhermit/gentoo-zsh-completions</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/heirloom-sh/Manifest b/app-shells/heirloom-sh/Manifest
new file mode 100644
index 00000000000..71ad70225f7
--- /dev/null
+++ b/app-shells/heirloom-sh/Manifest
@@ -0,0 +1 @@
+DIST heirloom-sh-050706.tar.bz2 82725 SHA256 25fb8409e1eb75bb5da21ca32baf2d5eebcb8b84a1288d66e65763a125809e1d SHA512 3a0dbec19eb093b6a818910a1b24f2d7328dc785dc12cd0097c37f98e7ac558d31cda8717381d814259bd54f5de12e50cc8d9d617bd4e09c4a903ef63838807f WHIRLPOOL 4be1e76719493e5ab85b99953e1359658c71e5fd68a3025526c218650079518ab61d4b7ead76903ec68898f0fef5ec2db8ca6b691db929fe9e33b6e44c84b9bf
diff --git a/app-shells/heirloom-sh/heirloom-sh-050706.ebuild b/app-shells/heirloom-sh/heirloom-sh-050706.ebuild
new file mode 100644
index 00000000000..bfff55d950f
--- /dev/null
+++ b/app-shells/heirloom-sh/heirloom-sh-050706.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit flag-o-matic toolchain-funcs
+
+# slightly broken
+RESTRICT="test"
+
+DESCRIPTION="Heirloom Bourne Shell, derived from OpenSolaris code SVR4/SVID3"
+HOMEPAGE="http://heirloom.sourceforge.net/sh.html"
+SRC_URI="mirror://sourceforge/heirloom/${P}.tar.bz2"
+
+LICENSE="CDDL"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND=""
+
+src_compile() {
+ append-cppflags -D_GNU_SOURCE
+ emake \
+ "CFLAGS=${CFLAGS}" \
+ "CPPFLAGS=${CPPFLAGS}" \
+ "LDFLAGS=${LDFLAGS}" \
+ "LARGEF=" \
+ "CC=$(tc-getCC)" || die
+}
+
+src_install() {
+ exeinto /bin
+ newexe sh jsh
+ newman sh.1 jsh.1
+}
diff --git a/app-shells/heirloom-sh/metadata.xml b/app-shells/heirloom-sh/metadata.xml
new file mode 100644
index 00000000000..c594f04f344
--- /dev/null
+++ b/app-shells/heirloom-sh/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>patrick@gentoo.org</email>
+ <name>Patrick Lauer</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">heirloom</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/ksh/Manifest b/app-shells/ksh/Manifest
new file mode 100644
index 00000000000..8a4c61c186b
--- /dev/null
+++ b/app-shells/ksh/Manifest
@@ -0,0 +1,8 @@
+DIST INIT.2012-01-01.tgz 376375 SHA256 60d9a57885f2f37affb6ddab6090275d715236058561f333f351566bedcc2cd1 SHA512 ad933982d819b594f1303e31b3040b7c5f6ceaf7099d1203b0b7d0949709adf9e953586c9980e1b1cf311902e8a6c8fe6a6118e982d461ffeceddaf8b6f18bbe WHIRLPOOL 718f7275d51386960227bd04cfa51acaaaa8c2f83e1ad0a9f6a7c57f2066e86450a232dd94085ad3357ccbc044e586b15cda46cdcdf9f855db0521e75f96c766
+DIST INIT.2012-02-29.tgz 379873 SHA256 da4a886d28f75f8a011d522697272cd196cdcfb406f92d47f8b0a6608d786896 SHA512 2ac9d7ce48f1dc7e0870d87d34fa1688461268140c0747f507f3677a38fba0b8ca2f44020a4c50e0beaed63949dc347ee48c53b6e09bfb0e6c3e51e128a6302e WHIRLPOOL e4e4bc5bebbccb5e8ce3a8fdd73d1e796f9823291eb7980caa06e40bcea1f41d7122c88af50848f3bda58c340884a0a0071b3ba2559248d470e970362b918d4f
+DIST INIT.2014-06-06.tgz 385532 SHA256 73cc2f6a3edd6ffbfcf5002408f7b35c36000729306c6e60788e1ccbc481886f SHA512 94fd97fa069a2857202f7e12bbd920a1e18be13a3f64a3bb72dfdc78bc5db8d585e4123036f3d12fc8e5ce6ae5469831f7377189daf905debeb07034cf10196a WHIRLPOOL a759f435bba62337badb50f00b3760c0d34ae671868875317452bc53e79baabeaf55a943a8b80dff75b8e501500aa5fc68ed933819fd24af7dffcdb192260beb
+DIST INIT.2014-06-25.tgz 385531 SHA256 e73302b6ab2854421c960f179c3ac079f9e21f0362cfdec58476bda36c163f14 SHA512 9034cdf5b798c134472d786195d0f5d14e7e7a1f8226dcbccf962880cd59cd59d3a5597307587163f90a9187cce0232235cf79bcd66842044b2c624b335ba730 WHIRLPOOL 9e33c998c90878829e6e3007a3fa1b0b7d3128f4761a75630bb449e9e3e29b49c6c54e509c56a1e73119ff87aabc1a84108f4943928920745156d95abf2b0d20
+DIST ast-base.2011-02-08.tgz 6111018 SHA256 44ae3913e6c0c8992c6c3cba16864fd4c4a18c6da8e7d87c85a23060cea7cd1a SHA512 f8bfa1104778968dc66cc693da1100b624a7016f6d24281f401aec564ec25047b01473755ed55f19638b7060a7007ae8d1092c521f645147b0babfd359586e95 WHIRLPOOL 6510a55ca151d82e5b7fcb64ba32078fba50ebb70da1362f53052aeb3360cc4741789f6334e4d09731075c3b495c88fad3160653e6de0c6dcb915aedaeb48394
+DIST ast-base.2012-02-29.tgz 9068922 SHA256 08223dc93da5a8e3d1b46d772be16cdcfc11b6e41c00b696e8fcf7160b48541b SHA512 95cc909ecb5b2bbfae10a44650dfd1aabf2f2461e82f4c77137696a57c41361cded3e3c0697ab5cc9e63fb72645fe442f5fc32ca0a53370b5f43b396595c4d94 WHIRLPOOL f0324fd98b6f14e4001786620ccd56cf81e87dc68397d74fa214025da8cf605fe3f24d3f809aeef8d692287d898b57725769e77ce6f5d52ac24978bf8cd4671b
+DIST ast-base.2014-06-06.tgz 9605517 SHA256 c08c895f1412d80dc85227d9b9c77dbd55bedb586965972ebe14f6b0e5ac92db SHA512 265cd4763006471e4deb1ee79c6d668f7e56f2a721589054faa7b6fb103d65d963f9101c073f1b748be63d3195ef6dfbda2a3753d06de1d2517f8ed04cad3ff1 WHIRLPOOL 994f416cd9ffd19f3a14f5f6b27be265263541654f793143d896a91c86533928daf44b5154e1bcb01e8456ef3a0e0492f209dc8ca41cf77a110b45cbc3d4a19b
+DIST ast-base.2014-06-25.tgz 9609090 SHA256 58588b07b076f05dbbd5f4f095d5753309a8356ba1e5475262ce77d6bff42dae SHA512 3006dd187c6042798ffd6da5aad8d6340bf4fbad687338b2b9797556136966b65d90295eb267dba198a83ea5b651a9a339d9ff48179f3d7e25b3de76c41bf737 WHIRLPOOL b07c4809e729359d0ed613310f49fa391c199a225e4a3c589f9015af54d1159e199135ee4eadebd9d09f21f3131103550c1c17badc3a643943e3828df79d98d2
diff --git a/app-shells/ksh/files/ksh-prefix.patch b/app-shells/ksh/files/ksh-prefix.patch
new file mode 100644
index 00000000000..c97cbe333ca
--- /dev/null
+++ b/app-shells/ksh/files/ksh-prefix.patch
@@ -0,0 +1,42 @@
+--- a/src/cmd/ksh93/data/msg.c
++++ b/src/cmd/ksh93/data/msg.c
+@@ -180,7 +180,7 @@
+ const char e_sptbnl[] = " \t\n";
+ const char e_tolower[] = "tolower";
+ const char e_toupper[] = "toupper";
+-const char e_defpath[] = "/bin:/usr/bin:";
++const char e_defpath[] = "@GENTOO_PORTAGE_EPREFIX@/bin:@GENTOO_PORTAGE_EPREFIX@/usr/bin:";
+ const char e_defedit[] = _pth_ed;
+ const char e_unknown [] = "<command unknown>";
+ const char e_devnull[] = "/dev/null";
+@@ -188,24 +188,24 @@
+ const char e_supprompt[] = "# ";
+ const char e_stdprompt[] = "$ ";
+ const char e_profile[] = "$HOME/.profile";
+-const char e_sysprofile[] = "/etc/profile";
+-const char e_suidprofile[] = "/etc/suid_profile";
++const char e_sysprofile[] = "@GENTOO_PORTAGE_EPREFIX@/etc/profile";
++const char e_suidprofile[] = "@GENTOO_PORTAGE_EPREFIX@/etc/suid_profile";
+ #if SHOPT_SYSRC
+-const char e_sysrc[] = "/etc/ksh.kshrc";
++const char e_sysrc[] = "@GENTOO_PORTAGE_EPREFIX@/etc/ksh.kshrc";
+ #endif
+ #if SHOPT_BASH
+ #if SHOPT_SYSRC
+-const char e_bash_sysrc[] = "/etc/bash.bashrc";
++const char e_bash_sysrc[] = "@GENTOO_PORTAGE_EPREFIX@/etc/bash/bashrc";
+ #endif
+ const char e_bash_rc[] = "$HOME/.bashrc";
+ const char e_bash_login[] = "$HOME/.bash_login";
+ const char e_bash_logout[] = "$HOME/.bash_logout";
+ const char e_bash_profile[] = "$HOME/.bash_profile";
+ #endif
+-const char e_crondir[] = "/usr/spool/cron/atjobs";
++const char e_crondir[] = "@GENTOO_PORTAGE_EPREFIX@/usr/spool/cron/atjobs";
+ const char e_prohibited[] = "login setuid/setgid shells prohibited";
+ #if SHOPT_SUID_EXEC
+- const char e_suidexec[] = "/etc/suid_exec";
++ const char e_suidexec[] = "@GENTOO_PORTAGE_EPREFIX@/etc/suid_exec";
+ #endif /* SHOPT_SUID_EXEC */
+ const char hist_fname[] = "/.sh_history";
+ const char e_dot[] = ".";
diff --git a/app-shells/ksh/ksh-93.20110208.ebuild b/app-shells/ksh/ksh-93.20110208.ebuild
new file mode 100644
index 00000000000..35b4c3735f6
--- /dev/null
+++ b/app-shells/ksh/ksh-93.20110208.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit toolchain-funcs versionator
+
+DESCRIPTION="The Original Korn Shell, 1993 revision (ksh93)"
+HOMEPAGE="http://www.kornshell.com/"
+
+INIT_RELEASE="2012-01-01"
+ksh_release() {
+ local v="$(get_version_component_range 2)"
+ echo "${v:0:4}-${v:4:2}-${v:6:2}"
+}
+
+SRC_URI="http://dev.gentoo.org/~floppym/distfiles/INIT.${INIT_RELEASE}.tgz
+ http://dev.gentoo.org/~floppym/distfiles/ast-base.$(ksh_release).tgz"
+
+LICENSE="CPL-1.0 EPL-1.0"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ia64 ppc ~ppc64 s390 sparc x86"
+IUSE=""
+
+RDEPEND="!app-shells/pdksh"
+
+S=${WORKDIR}
+
+src_prepare() {
+ # Bug 238906.
+ sed -i -e 's,cd /tmp,cd "${TMPDIR:-/tmp}",' \
+ bin/package src/cmd/INIT/package.sh || die
+}
+
+src_compile() {
+ tc-export AR CC LD NM
+ export CCFLAGS="${CFLAGS}"
+ sh bin/package only make ast-ksh SHELL=/bin/sh SHOPT_SYSRC=1 || die
+}
+
+src_install() {
+ dodoc lib/package/ast-base.README
+ dohtml lib/package/ast-base.html
+
+ local myhost="$(sh bin/package host)"
+ cd "arch/${myhost}" || die
+ into /
+ dobin bin/ksh
+ dosym ksh /bin/rksh
+ newman man/man1/sh.1 ksh.1
+}
diff --git a/app-shells/ksh/ksh-93.20120229.ebuild b/app-shells/ksh/ksh-93.20120229.ebuild
new file mode 100644
index 00000000000..22f4edc9bd2
--- /dev/null
+++ b/app-shells/ksh/ksh-93.20120229.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit toolchain-funcs versionator prefix eutils
+
+DESCRIPTION="The Original Korn Shell, 1993 revision (ksh93)"
+HOMEPAGE="http://www.kornshell.com/"
+
+ksh_release() {
+ local v="$(get_version_component_range 2)"
+ echo "${v:0:4}-${v:4:2}-${v:6:2}"
+}
+
+SRC_URI="mirror://gentoo/INIT.$(ksh_release).tgz
+ http://dev.gentoo.org/~floppym/distfiles/INIT.$(ksh_release).tgz
+ mirror://gentoo/ast-base.$(ksh_release).tgz
+ http://dev.gentoo.org/~floppym/distfiles/ast-base.$(ksh_release).tgz"
+
+LICENSE="CPL-1.0 EPL-1.0"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ia64 ppc ~ppc64 s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+RDEPEND="!app-shells/pdksh"
+
+S=${WORKDIR}
+
+src_prepare() {
+ # Bug 238906.
+ sed -i -e 's,cd /tmp,cd "${TMPDIR:-/tmp}",' \
+ bin/package src/cmd/INIT/package.sh || die
+
+ epatch "${FILESDIR}"/${PN}-prefix.patch
+ eprefixify src/cmd/ksh93/data/msg.c
+}
+
+src_compile() {
+ tc-export AR CC LD NM
+ export CCFLAGS="${CFLAGS}"
+ sh bin/package only make ast-ksh SHELL="${EPREFIX}"/bin/sh SHOPT_SYSRC=1 || die
+}
+
+src_install() {
+ dodoc lib/package/ast-base.README
+ dohtml lib/package/ast-base.html
+
+ local myhost="$(sh bin/package host)"
+ cd "arch/${myhost}" || die
+ into /
+ dobin bin/ksh
+ dosym ksh /bin/rksh
+ newman man/man1/sh.1 ksh.1
+}
diff --git a/app-shells/ksh/ksh-93.20140606.ebuild b/app-shells/ksh/ksh-93.20140606.ebuild
new file mode 100644
index 00000000000..c5d9b789744
--- /dev/null
+++ b/app-shells/ksh/ksh-93.20140606.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit toolchain-funcs prefix eutils
+
+DESCRIPTION="The Original Korn Shell, 1993 revision (ksh93)"
+HOMEPAGE="http://www.kornshell.com/"
+
+KSH_PV=${PV:3:4}-${PV:7:2}-${PV:9:2}
+
+SRC_URI="http://dev.gentoo.org/~floppym/distfiles/INIT.${KSH_PV}.tgz
+ http://dev.gentoo.org/~floppym/distfiles/ast-base.${KSH_PV}.tgz"
+
+LICENSE="CPL-1.0 EPL-1.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+RDEPEND="!app-shells/pdksh"
+
+S=${WORKDIR}
+
+src_prepare() {
+ # Bug 238906.
+ sed -i -e 's,cd /tmp,cd "${TMPDIR:-/tmp}",' \
+ bin/package src/cmd/INIT/package.sh || die
+
+ epatch "${FILESDIR}"/${PN}-prefix.patch
+ eprefixify src/cmd/ksh93/data/msg.c
+}
+
+src_compile() {
+ tc-export AR CC LD NM
+ export CCFLAGS="${CFLAGS}"
+ sh bin/package make ast-ksh SHELL=sh SHOPT_SYSRC=1 || die
+}
+
+src_install() {
+ dodoc lib/package/ast-base.README
+ dohtml lib/package/ast-base.html
+
+ local myhost=$(sh bin/package host)
+ cd "arch/${myhost}" || die
+ into /
+ dobin bin/ksh
+ dosym ksh /bin/rksh
+ newman man/man1/sh.1 ksh.1
+}
diff --git a/app-shells/ksh/ksh-93.20140625.ebuild b/app-shells/ksh/ksh-93.20140625.ebuild
new file mode 100644
index 00000000000..b9f465b81c4
--- /dev/null
+++ b/app-shells/ksh/ksh-93.20140625.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit toolchain-funcs prefix eutils
+
+DESCRIPTION="The Original Korn Shell, 1993 revision (ksh93)"
+HOMEPAGE="http://www.kornshell.com/"
+
+KSH_PV=${PV:3:4}-${PV:7:2}-${PV:9:2}
+
+SRC_URI="http://dev.gentoo.org/~floppym/distfiles/INIT.${KSH_PV}.tgz
+ http://dev.gentoo.org/~floppym/distfiles/ast-base.${KSH_PV}.tgz"
+
+LICENSE="CPL-1.0 EPL-1.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+RDEPEND="!app-shells/pdksh"
+
+S=${WORKDIR}
+
+src_prepare() {
+ # Bug 238906.
+ sed -i -e 's,cd /tmp,cd "${TMPDIR:-/tmp}",' \
+ bin/package src/cmd/INIT/package.sh || die
+
+ epatch "${FILESDIR}"/${PN}-prefix.patch
+ eprefixify src/cmd/ksh93/data/msg.c
+}
+
+src_compile() {
+ tc-export AR CC LD NM
+ export CCFLAGS="${CFLAGS}"
+ sh bin/package flat only make ast-ksh SHELL=sh SHOPT_SYSRC=1 || die
+}
+
+src_install() {
+ dodoc lib/package/ast-base.README
+ dohtml lib/package/ast-base.html
+
+ local myhost=$(sh bin/package host)
+ into /
+ dobin bin/ksh
+ dosym ksh /bin/rksh
+ newman man/man1/sh.1 ksh.1
+}
diff --git a/app-shells/ksh/metadata.xml b/app-shells/ksh/metadata.xml
new file mode 100644
index 00000000000..0970fab1ede
--- /dev/null
+++ b/app-shells/ksh/metadata.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>floppym@gentoo.org</email>
+ <name>Mike Gilbert</name>
+ </maintainer>
+ <longdescription lang="en">
+ The KornShell language was designed and developed by David G. Korn at
+ AT&amp;T Bell Laboratories. It is an interactive command language that
+ provides access to the UNIX system and to many other systems, on the
+ many different computers and workstations on which it is implemented.
+
+ ksh has the functionality of other scripting languages such as awk,
+ icon, perl, rexx, and tcl. For this and many other reasons, ksh is a
+ much better scripting language than any of the other popular shells.
+ The code size for ksh is larger than the Bourne shell or C shell
+ programs. The revised version is even larger.
+
+ In spite of its increased size, ksh provides better performance. You
+ can write programs to run faster with ksh than with either the Bourne
+ shell or the C shell, sometimes an order of magnitude faster. ksh has
+ evolved and matured with extensive user feedback. It has been used by
+ many thousands of people at AT&amp;T since 1982, and at many other
+ companies and universities.
+ </longdescription>
+</pkgmetadata>
diff --git a/app-shells/localshell/Manifest b/app-shells/localshell/Manifest
new file mode 100644
index 00000000000..3a724eaec67
--- /dev/null
+++ b/app-shells/localshell/Manifest
@@ -0,0 +1,4 @@
+DIST localshell-1.1.tar.bz2 96494 SHA256 9b81327a0831ac3be94c23f2b4be4a38674ace69f202f8f093c34a2b589b7fc3 SHA512 bee199e832006b5e98ef52a32d9883b9c9b1ac7e9886d2e38d694c01bc0b64eaaaeaf28ef61518e56beabf4f63cfcf429de3d9ba194f17dfc03b289951853d04 WHIRLPOOL 17fec4d8c289d13057c212f0bf0fd2e4c3319771b89bb1065457a30e4381d487178e83aba7dd86ba323eca97af1cd203ec396a4a791d8b6bc91ab26d984fdd4a
+DIST localshell-1.2.tar.bz2 96626 SHA256 0be22511c4ec6934b30e99cbc5ce9dff27f4e09c527b6046f0569d870c38e746 SHA512 765f690f9e120273f0ced1528551f36c944628630d3707d6785d4fa258bc134f3bfc9d74c9d5e772f14ac5675964f0aadad63469c8f3e9d7d70206f0a1a1de39 WHIRLPOOL c9ce10c0d125f18bbd78606a466196d0395a8d571a0b950a4dc4e7c52895d6521a452ff0c60d59c2796776a8de1c988842c5404a1935d9f424b2a34e1654fd2e
+DIST localshell-1.3.1.tar.bz2 104746 SHA256 185e21e5a53c8db69b1810fd9c5dea2e1e790bb31f61273360a36467a5e61624 SHA512 6e4248846232ac602b1bfd3b5a537a455186056474852b758b5755ac80a81acc3616cd465674acc08e0d5767a98b0279fbea3ff11ea3e77236a4157914145ea0 WHIRLPOOL 9724e68bd1ba77aa91447a6cccbb68c4a04b7e01623b67c869f2458fffc1a5bbd92f545e684ad059de12d4a079ec570b83c3c3a8d653a3844453cdf10707f82b
+DIST localshell-1.3.4.tar.bz2 113170 SHA256 666b56b7d17e099d121c3d3dfeefc2c713e7471c6b6926f28acd4284486cd811 SHA512 3a302b7d1b00e6ac8025a2145b3d12b916a60a9bad811d63c78c6eaac1b9a832f8796ab4429c677423287f70d6f6b31283aa2c90d3634ebe4bed52e1e240390d WHIRLPOOL 7aa67206e11d4ab1088cc42cfa36899a2dafad2e97dfc611f3901556da2b51fee76ebabe69bf749bdfa64406e0a6e06f68c754a0e06011adb2cec8bbb78ad85c
diff --git a/app-shells/localshell/files/localshell-1.2+gcc-4.3.patch b/app-shells/localshell/files/localshell-1.2+gcc-4.3.patch
new file mode 100644
index 00000000000..9bd2aeecd70
--- /dev/null
+++ b/app-shells/localshell/files/localshell-1.2+gcc-4.3.patch
@@ -0,0 +1,45 @@
+diff -aur localshell-1.2.old/src/common.cxx localshell-1.2/src/common.cxx
+--- localshell-1.2.old/src/common.cxx 2008-12-12 20:03:48.000000000 +0100
++++ localshell-1.2/src/common.cxx 2008-12-12 20:15:31.000000000 +0100
+@@ -5,6 +5,7 @@
+ #include "structures.hh"
+ #include "common.hh"
+ #include <fstream>
++#include <cstring>
+ using namespace std;
+
+ bool match_user(uid_t uid, gid_t gid) {
+diff -aur localshell-1.2.old/src/config.cxx localshell-1.2/src/config.cxx
+--- localshell-1.2.old/src/config.cxx 2008-12-12 20:03:48.000000000 +0100
++++ localshell-1.2/src/config.cxx 2008-12-12 20:15:07.000000000 +0100
+@@ -10,6 +10,8 @@
+ #include <fstream>
+ #include <map>
+ #include <vector>
++#include <cstring>
++#include <cstdlib>
+ using namespace std;
+
+ int load_config( const char *cfg_filename, configuration &conf) {
+diff -aur localshell-1.2.old/src/config.hh localshell-1.2/src/config.hh
+--- localshell-1.2.old/src/config.hh 2008-12-12 20:03:48.000000000 +0100
++++ localshell-1.2/src/config.hh 2008-12-12 20:14:00.000000000 +0100
+@@ -2,6 +2,7 @@
+ #ifndef _CONFIG_HH_
+ #define _CONFIG_HH_
+ #include "structures.hh"
++#include <fstream>
+
+ int load_config( const char *cfg_filename, configuration &conf);
+ int parse_config(fstream &fs, configuration &conf);
+diff -aur localshell-1.2.old/src/localshell.cxx localshell-1.2/src/localshell.cxx
+--- localshell-1.2.old/src/localshell.cxx 2008-12-12 20:03:48.000000000 +0100
++++ localshell-1.2/src/localshell.cxx 2008-12-12 20:04:14.000000000 +0100
+@@ -10,6 +10,7 @@
+
+ #include <map>
+ #include <vector>
++#include <cstring>
+ using namespace std;
+
+ int main(int argc, char** argv) {
diff --git a/app-shells/localshell/files/localshell-1.3.1-glibc-2.10.patch b/app-shells/localshell/files/localshell-1.3.1-glibc-2.10.patch
new file mode 100644
index 00000000000..7bdd8f9a8d1
--- /dev/null
+++ b/app-shells/localshell/files/localshell-1.3.1-glibc-2.10.patch
@@ -0,0 +1,12 @@
+diff -ur localshell-1.3.1.orig/src/config.cxx localshell-1.3.1/src/config.cxx
+--- localshell-1.3.1.orig/src/config.cxx 2009-01-09 03:40:11.000000000 +0200
++++ localshell-1.3.1/src/config.cxx 2009-08-09 18:15:17.000000000 +0300
+@@ -121,7 +121,7 @@
+ // PRIORITY,SHELL,ALLOWED
+ long priority = atol(argvalue);
+
+- char* shell = strstr(argvalue,",");
++ char* shell = const_cast<char*> (strstr(argvalue,","));
+ if(NULL == shell || '\0' == shell[1] ) {
+ fprintf(stderr,"%s: badly formatted entry (shell):%s\n",PACKAGE,argvalue);
+ return EINVAL;
diff --git a/app-shells/localshell/localshell-1.1.ebuild b/app-shells/localshell/localshell-1.1.ebuild
new file mode 100644
index 00000000000..e1dd2559456
--- /dev/null
+++ b/app-shells/localshell/localshell-1.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Localshell allows per-user/group local control of shell execution"
+HOMEPAGE="http://oss.orbis-terrarum.net/localshell/"
+SRC_URI="${HOMEPAGE}/${P}.tar.bz2"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~ppc ~x86"
+IUSE=""
+DEPEND=""
+#RDEPEND=""
+
+src_compile() {
+ # this is a shell, it needs to be in /bin
+ econf --bindir=/bin --sysconfdir=/etc || die "econf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die "emake install failed"
+}
+
+pkg_postinst() {
+ elog "Remember to add /bin/localshell to /etc/shells and create"
+ elog "/etc/localshell.conf based on the included configuration examples"
+}
diff --git a/app-shells/localshell/localshell-1.2.ebuild b/app-shells/localshell/localshell-1.2.ebuild
new file mode 100644
index 00000000000..8f8f48572a6
--- /dev/null
+++ b/app-shells/localshell/localshell-1.2.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit base
+
+DESCRIPTION="Localshell allows per-user/group local control of shell execution"
+HOMEPAGE="http://oss.orbis-terrarum.net/localshell/"
+SRC_URI="${HOMEPAGE}/${P}.tar.bz2"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+DEPEND=""
+#RDEPEND=""
+
+PATCHES=( "${FILESDIR}/${P}+gcc-4.3.patch" )
+
+src_compile() {
+ # this is a shell, it needs to be in /bin
+ econf --bindir=/bin --sysconfdir=/etc || die "econf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die "emake install failed"
+}
+
+pkg_postinst() {
+ elog "Remember to add /bin/localshell to /etc/shells and create"
+ elog "/etc/localshell.conf based on the included configuration examples"
+}
diff --git a/app-shells/localshell/localshell-1.3.1.ebuild b/app-shells/localshell/localshell-1.3.1.ebuild
new file mode 100644
index 00000000000..a07cae39b99
--- /dev/null
+++ b/app-shells/localshell/localshell-1.3.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit base eutils
+
+DESCRIPTION="Localshell allows per-user/group local control of shell execution"
+HOMEPAGE="http://oss.orbis-terrarum.net/localshell/"
+SRC_URI="${HOMEPAGE}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-glibc-2.10.patch
+}
+
+src_compile() {
+ # this is a shell, it needs to be in /bin
+ econf --bindir=/bin --sysconfdir=/etc || die "econf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die "emake install failed"
+ rm -f "${D}"/usr/share/doc/${PF}/{COPYING,INSTALL}
+}
+
+pkg_postinst() {
+ elog "Remember to add /bin/localshell to /etc/shells and create"
+ elog "/etc/localshell.conf based on the included configuration examples"
+}
diff --git a/app-shells/localshell/localshell-1.3.4.ebuild b/app-shells/localshell/localshell-1.3.4.ebuild
new file mode 100644
index 00000000000..4bae51acc60
--- /dev/null
+++ b/app-shells/localshell/localshell-1.3.4.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit base eutils
+
+DESCRIPTION="Localshell allows per-user/group local control of shell execution"
+HOMEPAGE="http://git.orbis-terrarum.net/?p=infrastructure/localshellc.git;a=summary"
+SRC_URI="${HOMEPAGE}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+
+src_configure() {
+ # this is a shell, it needs to be in /bin
+ econf --bindir=/bin --sysconfdir=/etc
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die "emake install failed"
+ rm -f "${D}"/usr/share/doc/${PF}/{COPYING,INSTALL}
+}
+
+pkg_postinst() {
+ elog "Remember to add /bin/localshell to /etc/shells and create"
+ elog "/etc/localshell.conf based on the included configuration examples"
+}
diff --git a/app-shells/localshell/metadata.xml b/app-shells/localshell/metadata.xml
new file mode 100644
index 00000000000..c6d862855eb
--- /dev/null
+++ b/app-shells/localshell/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>robbat2@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/app-shells/metadata.xml b/app-shells/metadata.xml
new file mode 100644
index 00000000000..f70a0494ef8
--- /dev/null
+++ b/app-shells/metadata.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<catmetadata>
+ <longdescription lang="en">
+ The app-shells category contains shells and their extensions.
+ </longdescription>
+ <longdescription lang="de">
+ Die Kategorie app-shells enthält Kommandozeileninterpreter (Shells)
+ sowie deren Erweiterungen.
+ </longdescription>
+ <longdescription lang="es">
+ La categoría app-shells contiene shells y sus extensiones.
+ </longdescription>
+ <longdescription lang="nl">
+ De app-shells categorie bevat opdrachtverwerkers (shells) en hun uitbreidingen.
+ </longdescription>
+ <longdescription lang="vi">
+ Nhóm app-shells chứa các loại shell và các phần mở
+ rộng của shell.
+ </longdescription>
+ <longdescription lang="it">
+ La categoria app-shells contiene shells e loro estensioni.
+ </longdescription>
+ <longdescription lang="pt">
+ A categoria app-shells contém shells e suas extensões.
+ </longdescription>
+ <longdescription lang="pl">
+ Kategoria app-shells zawiera interpretery poleceń (powłoki) oraz ich
+ rozszerzenia.
+ </longdescription>
+</catmetadata>
+
diff --git a/app-shells/mksh/Manifest b/app-shells/mksh/Manifest
new file mode 100644
index 00000000000..87de785af50
--- /dev/null
+++ b/app-shells/mksh/Manifest
@@ -0,0 +1,4 @@
+DIST mksh-R50d.tgz 374014 SHA256 a2268826a1463959ff7b7979fbf9176f1298400ecc24ae13d6337eee5c63f982 SHA512 1bb545d00e3ce5783541c88e1fea47cbd01e2103c60be7d6f5b8bf02d30576d543c4e9f6786b8d14785554c11ca1123364297a2cce0c5c3a5901b6e717594bd8 WHIRLPOOL 899b3feed7610328971b17195701dedf732507c52cd35c69bc2f3778243b344f7c8546871b7b728d122c99aa38c9b525aedeb8f5be8cd90ee2c74b32cb2ce64b
+DIST mksh-R50e.tgz 376013 SHA256 ad3c148769d08cf934a96be2837599ba9db355f38a8f49c7bc8876b80d2e08da SHA512 70d904eb4dfdaf28ee5858d1abec296d69e428e3a81e5802640bc4b95a4c77e08ad8f301b29063f329081428e4b9583f0203e9b509263e8e7b9a705ac63acde5 WHIRLPOOL 1b6d6e0c4413eac44f033945fc2fbe2891623821c1f1a5ceea0084dc834d8754f2582ffac72567138f337e7fdf069f19a79644fc3987fd6cb971c74bde5c209f
+DIST mksh-R50f.tgz 377797 SHA256 74e051ce92ece9555d91505b956572f64668fc88c5ccabee742099e7f29a2bcb SHA512 ca0b5d986727afc8b295b4a81c84e0048f1650c4ea3c45dcc05cabcc474bca4ab4719a063b708f3ddee08d65f35651652c0938b4279f6d706182d46ea5566cc1 WHIRLPOOL a5845cf4fa89b91f076e6eb7af5a176e98dd766a9dc3840acb832f3305c1b7b4f5e01871684a33b0491e34f841a5f6d75f34fba78f99be4852634f337b2054b4
+DIST mksh-R51.tgz 382169 SHA256 9feeaa5ff33d8199c0123675dec29785943ffc67152d58d431802bc20765dadf SHA512 dea2dea283959c0564cb6e9dbb9eecf004365cd01d83f1a8bbaff319c8ebefc4eb5e85898e207c7ce0577af525be0563e7c6b5f4b3449a2439e93f3f8bfd43ea WHIRLPOOL e626b4ffe5f637486a75a4008e51ddd3dd4c9c739dcb6b1502ee0b04f9ade20e55856497dacb5e7228d5b16af015e55fd33753b1d092c8aa7adcd5dd5e30681a
diff --git a/app-shells/mksh/metadata.xml b/app-shells/mksh/metadata.xml
new file mode 100644
index 00000000000..8cb548491f4
--- /dev/null
+++ b/app-shells/mksh/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer><email>hanno@gentoo.org</email></maintainer>
+</pkgmetadata>
diff --git a/app-shells/mksh/mksh-50d-r1.ebuild b/app-shells/mksh/mksh-50d-r1.ebuild
new file mode 100644
index 00000000000..f400822beee
--- /dev/null
+++ b/app-shells/mksh/mksh-50d-r1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="MirBSD KSH Shell"
+HOMEPAGE="http://mirbsd.de/mksh"
+SRC_URI="http://www.mirbsd.org/MirOS/dist/mir/mksh/${PN}-R${PV}.tgz"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+IUSE="static"
+DEPEND="static? ( dev-libs/klibc )"
+RDEPEND=""
+S="${WORKDIR}/${PN}"
+
+src_compile() {
+ tc-export CC
+ # we want to build static with klibc
+ if use static ; then
+ unset CC
+ export CC="/usr/bin/klcc"
+ export LDSTATIC="-static"
+ fi
+ export CPPFLAGS="${CPPFLAGS} -DMKSH_DEFAULT_PROFILEDIR=\\\"${EPREFIX}/etc\\\""
+ # we can't assume lto existing/enabled, so we add a fallback
+ sh Build.sh -r -c lto || sh Rebuild.sh || die
+}
+
+src_install() {
+ exeinto /bin
+ doexe mksh
+ doman mksh.1
+ dodoc dot.mkshrc
+}
+
+src_test() {
+ ./test.sh || die
+}
+
+pkg_postinst() {
+ ebegin "Updating /etc/shells"
+ ( grep -v "^/bin/mksh$" "${ROOT}"etc/shells; echo "/bin/mksh" ) > "${T}"/shells
+ mv -f "${T}"/shells "${ROOT}"etc/shells
+ eend $?
+}
diff --git a/app-shells/mksh/mksh-50d.ebuild b/app-shells/mksh/mksh-50d.ebuild
new file mode 100644
index 00000000000..016d79f5904
--- /dev/null
+++ b/app-shells/mksh/mksh-50d.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="MirBSD KSH Shell"
+HOMEPAGE="http://mirbsd.de/mksh"
+SRC_URI="http://www.mirbsd.org/MirOS/dist/mir/mksh/${PN}-R${PV}.tgz"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux"
+IUSE="static"
+DEPEND="static? ( dev-libs/klibc )"
+RDEPEND=""
+S="${WORKDIR}/${PN}"
+
+src_compile() {
+ tc-export CC
+ # we want to build static with klibc
+ if use static ; then
+ unset CC
+ export CC="/usr/bin/klcc"
+ export LDSTATIC="-static"
+ fi
+ export CPPFLAGS="${CPPFLAGS} -DMKSH_DEFAULT_PROFILEDIR=\\\"${EPREFIX}/etc\\\""
+ # we can't assume lto existing/enabled, so we add a fallback
+ sh Build.sh -r -c lto || sh Rebuild.sh || die
+}
+
+src_install() {
+ exeinto /bin
+ doexe mksh
+ doman mksh.1
+ dodoc dot.mkshrc
+}
+
+src_test() {
+ ./test.sh || die
+}
diff --git a/app-shells/mksh/mksh-50e.ebuild b/app-shells/mksh/mksh-50e.ebuild
new file mode 100644
index 00000000000..f400822beee
--- /dev/null
+++ b/app-shells/mksh/mksh-50e.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="MirBSD KSH Shell"
+HOMEPAGE="http://mirbsd.de/mksh"
+SRC_URI="http://www.mirbsd.org/MirOS/dist/mir/mksh/${PN}-R${PV}.tgz"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+IUSE="static"
+DEPEND="static? ( dev-libs/klibc )"
+RDEPEND=""
+S="${WORKDIR}/${PN}"
+
+src_compile() {
+ tc-export CC
+ # we want to build static with klibc
+ if use static ; then
+ unset CC
+ export CC="/usr/bin/klcc"
+ export LDSTATIC="-static"
+ fi
+ export CPPFLAGS="${CPPFLAGS} -DMKSH_DEFAULT_PROFILEDIR=\\\"${EPREFIX}/etc\\\""
+ # we can't assume lto existing/enabled, so we add a fallback
+ sh Build.sh -r -c lto || sh Rebuild.sh || die
+}
+
+src_install() {
+ exeinto /bin
+ doexe mksh
+ doman mksh.1
+ dodoc dot.mkshrc
+}
+
+src_test() {
+ ./test.sh || die
+}
+
+pkg_postinst() {
+ ebegin "Updating /etc/shells"
+ ( grep -v "^/bin/mksh$" "${ROOT}"etc/shells; echo "/bin/mksh" ) > "${T}"/shells
+ mv -f "${T}"/shells "${ROOT}"etc/shells
+ eend $?
+}
diff --git a/app-shells/mksh/mksh-50f.ebuild b/app-shells/mksh/mksh-50f.ebuild
new file mode 100644
index 00000000000..f400822beee
--- /dev/null
+++ b/app-shells/mksh/mksh-50f.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="MirBSD KSH Shell"
+HOMEPAGE="http://mirbsd.de/mksh"
+SRC_URI="http://www.mirbsd.org/MirOS/dist/mir/mksh/${PN}-R${PV}.tgz"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+IUSE="static"
+DEPEND="static? ( dev-libs/klibc )"
+RDEPEND=""
+S="${WORKDIR}/${PN}"
+
+src_compile() {
+ tc-export CC
+ # we want to build static with klibc
+ if use static ; then
+ unset CC
+ export CC="/usr/bin/klcc"
+ export LDSTATIC="-static"
+ fi
+ export CPPFLAGS="${CPPFLAGS} -DMKSH_DEFAULT_PROFILEDIR=\\\"${EPREFIX}/etc\\\""
+ # we can't assume lto existing/enabled, so we add a fallback
+ sh Build.sh -r -c lto || sh Rebuild.sh || die
+}
+
+src_install() {
+ exeinto /bin
+ doexe mksh
+ doman mksh.1
+ dodoc dot.mkshrc
+}
+
+src_test() {
+ ./test.sh || die
+}
+
+pkg_postinst() {
+ ebegin "Updating /etc/shells"
+ ( grep -v "^/bin/mksh$" "${ROOT}"etc/shells; echo "/bin/mksh" ) > "${T}"/shells
+ mv -f "${T}"/shells "${ROOT}"etc/shells
+ eend $?
+}
diff --git a/app-shells/mksh/mksh-51.ebuild b/app-shells/mksh/mksh-51.ebuild
new file mode 100644
index 00000000000..f400822beee
--- /dev/null
+++ b/app-shells/mksh/mksh-51.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="MirBSD KSH Shell"
+HOMEPAGE="http://mirbsd.de/mksh"
+SRC_URI="http://www.mirbsd.org/MirOS/dist/mir/mksh/${PN}-R${PV}.tgz"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+IUSE="static"
+DEPEND="static? ( dev-libs/klibc )"
+RDEPEND=""
+S="${WORKDIR}/${PN}"
+
+src_compile() {
+ tc-export CC
+ # we want to build static with klibc
+ if use static ; then
+ unset CC
+ export CC="/usr/bin/klcc"
+ export LDSTATIC="-static"
+ fi
+ export CPPFLAGS="${CPPFLAGS} -DMKSH_DEFAULT_PROFILEDIR=\\\"${EPREFIX}/etc\\\""
+ # we can't assume lto existing/enabled, so we add a fallback
+ sh Build.sh -r -c lto || sh Rebuild.sh || die
+}
+
+src_install() {
+ exeinto /bin
+ doexe mksh
+ doman mksh.1
+ dodoc dot.mkshrc
+}
+
+src_test() {
+ ./test.sh || die
+}
+
+pkg_postinst() {
+ ebegin "Updating /etc/shells"
+ ( grep -v "^/bin/mksh$" "${ROOT}"etc/shells; echo "/bin/mksh" ) > "${T}"/shells
+ mv -f "${T}"/shells "${ROOT}"etc/shells
+ eend $?
+}
diff --git a/app-shells/mksh/mksh-9999.ebuild b/app-shells/mksh/mksh-9999.ebuild
new file mode 100644
index 00000000000..0802b50eb30
--- /dev/null
+++ b/app-shells/mksh/mksh-9999.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils toolchain-funcs
+
+if [[ $PV = 9999 ]]; then
+ inherit cvs
+ ECVS_SERVER="anoncvs.mirbsd.org:/cvs"
+ ECVS_MODULE="mksh"
+ ECVS_USER="_anoncvs"
+ ECVS_AUTH="ext"
+ KEYWORDS=""
+ DEPEND="static? ( dev-libs/klibc )"
+else
+ inherit unpacker
+ DEPEND="app-arch/cpio
+ static? ( dev-libs/klibc )"
+ SRC_URI="http://www.mirbsd.org/MirOS/dist/mir/mksh/${PN}-R${PV}.cpio.gz"
+ KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux"
+fi
+
+DESCRIPTION="MirBSD Korn Shell"
+HOMEPAGE="http://mirbsd.de/mksh"
+LICENSE="BSD"
+SLOT="0"
+IUSE="static"
+RDEPEND=""
+S="${WORKDIR}/${PN}"
+
+src_compile() {
+ tc-export CC
+ # we want to build static with klibc
+ if use static; then unset CC; export CC="/usr/bin/klcc"; export LDSTATIC="-static"; fi
+ export CPPFLAGS="${CPPFLAGS} -DMKSH_DEFAULT_PROFILEDIR=\\\"${EPREFIX}/etc\\\""
+ sh Build.sh -r -c lto || sh Rebuild.sh || die
+}
+
+src_install() {
+ exeinto /bin
+ doexe mksh
+ doman mksh.1
+ dodoc dot.mkshrc
+}
+
+src_test() {
+ ./test.sh || die
+}
+
+pkg_postinst() {
+ ebegin "Updating /etc/shells"
+ ( grep -v "^/bin/mksh$" "${ROOT}"etc/shells; echo "/bin/mksh" ) > "${T}"/shells
+ mv -f "${T}"/shells "${ROOT}"etc/shells
+ eend $?
+}
diff --git a/app-shells/mpibash/Manifest b/app-shells/mpibash/Manifest
new file mode 100644
index 00000000000..4d8ea88158d
--- /dev/null
+++ b/app-shells/mpibash/Manifest
@@ -0,0 +1 @@
+DIST mpibash-1.2.tar.gz 347083 SHA256 5c2faaa74464111205dbae4799bd89c2425810ec3708d004237b42d620c8be57 SHA512 db755dd2c6212a8d7dfd6cbff17d5dffcbc3b6a0286abdad4d2e21790453d2356e88c566abe4648da138d6964098fad581b8fd5beae1335f5787de92f4659104 WHIRLPOOL 94fcf50d89250a6478a2ed56a0c1769dd678869884e1e80066ebdb479dd0c6d64048ade7829020fdad050b1e77a2315ab7e325a97aa472291d3e9a4888c915e3
diff --git a/app-shells/mpibash/metadata.xml b/app-shells/mpibash/metadata.xml
new file mode 100644
index 00000000000..519354940f1
--- /dev/null
+++ b/app-shells/mpibash/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <maintainer>
+ <email>ottxor@gentoo.org</email>
+ <name>Christoph Junghans</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">losalamos/MPI-Bash</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/mpibash/mpibash-1.2.ebuild b/app-shells/mpibash/mpibash-1.2.ebuild
new file mode 100644
index 00000000000..c36ec39e71c
--- /dev/null
+++ b/app-shells/mpibash/mpibash-1.2.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools-utils multilib
+
+if [[ ${PV} = 9999 ]]; then
+ EGIT_REPO_URI="git://github.com/losalamos/MPI-Bash.git http://github.com/losalamos/MPI-Bash.git"
+ inherit git-r3
+ KEYWORDS=""
+ AUTOTOOLS_AUTORECONF=1
+else
+ SRC_URI="https://github.com/losalamos/MPI-Bash/releases/download/v${PV}/${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+DESCRIPTION="Parallel scripting right from the Bourne-Again Shell (Bash)"
+HOMEPAGE="https://github.com/losalamos/MPI-Bash"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="examples"
+
+DEPEND="virtual/mpi
+ >=app-shells/bash-4.2[plugins]
+ sys-cluster/libcircle"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ local myeconfargs=(
+ --with-bashdir="${EPREFIX}"/usr/include/bash-plugins
+ --with-plugindir="${EPREFIX}"/usr/$(get_libdir)/bash
+ )
+ autotools-utils_src_configure
+}
+
+src_install() {
+ autotools-utils_src_install
+ sed -i '/^export LD_LIBRARY_PATH/d' "${ED}/usr/bin/${PN}" || die
+ use examples || rm -r "${ED}/usr/share/doc/${PF}/examples" || die
+}
diff --git a/app-shells/mpibash/mpibash-9999.ebuild b/app-shells/mpibash/mpibash-9999.ebuild
new file mode 100644
index 00000000000..c36ec39e71c
--- /dev/null
+++ b/app-shells/mpibash/mpibash-9999.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools-utils multilib
+
+if [[ ${PV} = 9999 ]]; then
+ EGIT_REPO_URI="git://github.com/losalamos/MPI-Bash.git http://github.com/losalamos/MPI-Bash.git"
+ inherit git-r3
+ KEYWORDS=""
+ AUTOTOOLS_AUTORECONF=1
+else
+ SRC_URI="https://github.com/losalamos/MPI-Bash/releases/download/v${PV}/${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+DESCRIPTION="Parallel scripting right from the Bourne-Again Shell (Bash)"
+HOMEPAGE="https://github.com/losalamos/MPI-Bash"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="examples"
+
+DEPEND="virtual/mpi
+ >=app-shells/bash-4.2[plugins]
+ sys-cluster/libcircle"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ local myeconfargs=(
+ --with-bashdir="${EPREFIX}"/usr/include/bash-plugins
+ --with-plugindir="${EPREFIX}"/usr/$(get_libdir)/bash
+ )
+ autotools-utils_src_configure
+}
+
+src_install() {
+ autotools-utils_src_install
+ sed -i '/^export LD_LIBRARY_PATH/d' "${ED}/usr/bin/${PN}" || die
+ use examples || rm -r "${ED}/usr/share/doc/${PF}/examples" || die
+}
diff --git a/app-shells/pdmenu/Manifest b/app-shells/pdmenu/Manifest
new file mode 100644
index 00000000000..27b5f3a3450
--- /dev/null
+++ b/app-shells/pdmenu/Manifest
@@ -0,0 +1,2 @@
+DIST pdmenu_1.3.2.tar.gz 160083 SHA256 7a7b68d50851a4f0f42467d9c5ee74bdb42591e35687f97ad3d2c915f9607d90 SHA512 9359dcf0d058349b502f0c39509d3c51658d80062f2c65c52010255ba97ffd1a3e5bf5cf4d6feffff6865ff1a26440a7523a447e9e4a2a0760cafc6a3109e945 WHIRLPOOL f92187058f4d057149c26c26b2ddb1c215c63690e4412d167b82da0ba77c81df81c9f0cdcc171eec9a4029ba188db38592dcc5ade53fefd9fc084febb7533ed6
+DIST pdmenu_1.3.4.tar.gz 161002 SHA256 302aa81b8868133ff5a0f3e3e897f71d425bc628c0d7439addb623f12c277bea SHA512 2540b3040a799f4682de1014f8da750501000cef7080ea24b066a7e44971e33452a25e3885849bc47a156727641c4acb8d1268d3c16a2aab2cb37d510f50f3ad WHIRLPOOL ab5a0566b470d8db84b1da6308961b696d7a9490d8f30471c731d1537bbe0132a2d9c3a610ead61f55e5c8656c1d0021f5de40a4ae526a69895104dab48e0c86
diff --git a/app-shells/pdmenu/files/pdmenu-impl-dec.patch b/app-shells/pdmenu/files/pdmenu-impl-dec.patch
new file mode 100644
index 00000000000..c0cd7ce3ac9
--- /dev/null
+++ b/app-shells/pdmenu/files/pdmenu-impl-dec.patch
@@ -0,0 +1,16 @@
+ src/actions.c | 2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
+
+diff --git a/src/actions.c b/src/actions.c
+index d42a63a..1f5a0d1 100644
+--- a/src/actions.c
++++ b/src/actions.c
+@@ -30,6 +30,8 @@
+ #include <libintl.h>
+ #define _(String) gettext (String)
+
++#include <ctype.h>
++
+ /* Handle a control c by either exiting pdmenu or doing nothing. */
+ void Handle_Ctrl_C() {
+ if (Q_Exits) {
diff --git a/app-shells/pdmenu/metadata.xml b/app-shells/pdmenu/metadata.xml
new file mode 100644
index 00000000000..91f4e72fb54
--- /dev/null
+++ b/app-shells/pdmenu/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-shells/pdmenu/pdmenu-1.3.2-r1.ebuild b/app-shells/pdmenu/pdmenu-1.3.2-r1.ebuild
new file mode 100644
index 00000000000..11b22e7db24
--- /dev/null
+++ b/app-shells/pdmenu/pdmenu-1.3.2-r1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils
+
+DESCRIPTION="A simple console menu program"
+HOMEPAGE="http://joeyh.name/code/pdmenu/"
+SRC_URI="mirror://debian/pool/main/p/pdmenu/pdmenu_${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~mips x86"
+IUSE="nls gpm examples"
+
+DEPEND="
+ sys-libs/slang
+ gpm? ( sys-libs/gpm )
+ nls? ( sys-devel/gettext )"
+
+S=${WORKDIR}/${PN}
+
+RESTRICT="test"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-impl-dec.patch
+ sed \
+ -e 's:\(-o pdmenu\):$(LDFLAGS) \1:g' \
+ -i Makefile || die
+}
+
+src_configure() {
+ econf \
+ $(use_with gpm) \
+ $(use_enable nls)
+}
+
+src_install() {
+ dobin pdmenu
+
+ dodoc doc/ANNOUNCE doc/BUGS doc/TODO
+
+ use examples && dodoc -r examples
+
+ mv doc/pdmenu.man doc/pdmenu.1
+ mv doc/pdmenurc.man doc/pdmenurc.5
+ doman doc/pdmenu.1 doc/pdmenurc.5
+
+}
+
+pkg_postinst() {
+ ewarn "Note this part from man page: Security warning! Any exec command"
+ ewarn "that uses the 'edit' flag will be a security hole. The user need"
+ ewarn "only to enter text with a ';' in it, and they can run an"
+ ewarn "arbitrary command after the semicolon!"
+}
diff --git a/app-shells/pdmenu/pdmenu-1.3.4.ebuild b/app-shells/pdmenu/pdmenu-1.3.4.ebuild
new file mode 100644
index 00000000000..3c3c68479b1
--- /dev/null
+++ b/app-shells/pdmenu/pdmenu-1.3.4.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils
+
+DESCRIPTION="A simple console menu program"
+HOMEPAGE="http://joeyh.name/code/pdmenu/"
+SRC_URI="mirror://debian/pool/main/p/pdmenu/pdmenu_${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~mips ~x86"
+IUSE="nls gpm examples"
+
+DEPEND="
+ sys-libs/slang
+ gpm? ( sys-libs/gpm )
+ nls? ( sys-devel/gettext )"
+
+S=${WORKDIR}/${PN}
+
+RESTRICT="test"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-impl-dec.patch
+ sed \
+ -e 's:\(-o pdmenu\):$(LDFLAGS) \1:g' \
+ -i Makefile || die
+}
+
+src_configure() {
+ econf \
+ $(use_with gpm) \
+ $(use_enable nls)
+}
+
+src_install() {
+ dobin pdmenu
+
+ dodoc doc/ANNOUNCE doc/BUGS doc/TODO
+
+ use examples && dodoc -r examples
+
+ mv doc/pdmenu.man doc/pdmenu.1 || die
+ mv doc/pdmenurc.man doc/pdmenurc.5 || die
+ doman doc/pdmenu.1 doc/pdmenurc.5
+
+}
+
+pkg_postinst() {
+ ewarn "Note this part from man page: Security warning! Any exec command"
+ ewarn "that uses the 'edit' flag will be a security hole. The user need"
+ ewarn "only to enter text with a ';' in it, and they can run an"
+ ewarn "arbitrary command after the semicolon!"
+}
diff --git a/app-shells/pdsh/Manifest b/app-shells/pdsh/Manifest
new file mode 100644
index 00000000000..bf8b4e88c49
--- /dev/null
+++ b/app-shells/pdsh/Manifest
@@ -0,0 +1,2 @@
+DIST pdsh-2.18.tar.bz2 453729 SHA256 8c94acb17b4af8a9f553db180b4d5745c9c98844a5dc070e2ce80590e8e8a539 SHA512 20cd9be5fc38add69f61620f528dd952296615ef099d6288be2ce908ab04cc7a9585387d93936462a1fb577aa6495789ae201f838131623d8f4f01bf904f7b5a WHIRLPOOL c751b207bcf937b0d1fc48e86136b3fb212db58070f92d05bcaf548694ed62ee9d704870f7d1195477b1e36d59b3edb4e0dbbd696bb71761ad686bece827c528
+DIST pdsh-2.26.tar.bz2 490732 SHA256 ada2f35509064bf9cd0fd5ca39a351108cdd6f5155b05f39f1711a271298469a SHA512 3f15b3bb4fc2cff27a3b5d68de3e6cb74bb4001288a787763358a0641d0cc77c840b2c6641213ef31bc9d9d69cfe9531b25d7a9375630a5b008b1bcffbe95c0a WHIRLPOOL 44fb75cab5b2b2ea7d65482ceccb44b36440fd56b07b464fa4d0c347f584c5dc7a22ae73bb8149b50a24171c957cd624e4aca7138953e329f17d1bf75774753c
diff --git a/app-shells/pdsh/files/pdsh-2.18-unbundle-libtool.patch b/app-shells/pdsh/files/pdsh-2.18-unbundle-libtool.patch
new file mode 100644
index 00000000000..e73fb12d2e7
--- /dev/null
+++ b/app-shells/pdsh/files/pdsh-2.18-unbundle-libtool.patch
@@ -0,0 +1,56 @@
+From d055c4e9e2d414c9d51f7a6f2cf51cedfc79260f Mon Sep 17 00:00:00 2001
+From: Justin Bronder <jsbronder@gmail.com>
+Date: Tue, 6 Apr 2010 11:48:28 -0400
+Subject: [PATCH] unbundle libtool
+
+Bundled libltdl is vulnerable, CVE-2009-3736.
+Patch grabbed from Debian:
+http://ftp.de.debian.org/debian/pool/main/p/pdsh/pdsh_2.18-6.debian.tar.gz
+---
+ configure.ac | 6 ++++--
+ src/pdsh/Makefile.am | 5 ++---
+ 2 files changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 2680344..196356b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -38,8 +38,10 @@ AC_DEBUG
+ # Libtool and ltld.[ch] support
+ #
+ AC_LIBTOOL_DLOPEN
+-AC_PROG_LIBTOOL
+-AC_LIB_LTDL
++LT_INIT
++AC_SUBST(LT_CURRENT)
++AC_SUBST(LT_REVISION)
++AC_SUBST(LT_AGE)
+
+ AM_CONDITIONAL(WITH_GNU_LD, test "$with_gnu_ld" = "yes")
+
+diff --git a/src/pdsh/Makefile.am b/src/pdsh/Makefile.am
+index dfc48a3..beac854 100644
+--- a/src/pdsh/Makefile.am
++++ b/src/pdsh/Makefile.am
+@@ -14,8 +14,7 @@ if WITH_STATIC_MODULES
+ MODULE_LIBS = $(top_builddir)/src/modules/libmods.la
+ else
+ MODULE_FLAGS = -export-dynamic $(AIX_PDSH_LDFLAGS)
+-LTDL_FILES = ltdl.h ltdl.c
+-LTDL_LDADD = $(LIBADD_DL)
++LTDL_LDADD = $(LIBADD_DL) -lltdl
+ endif
+
+ pdsh_LDADD = $(READLINE_LIBS) $(LTDL_LDADD)
+@@ -25,7 +24,7 @@ pdsh_LDFLAGS = $(MODULE_LIBS) $(MODULE_FLAGS) \
+ pdsh_inst_LDADD = $(pdsh_LDADD)
+ pdsh_inst_LDFLAGS = $(pdsh_LDFLAGS)
+
+-pdsh_SOURCES = $(PDSH_SOURCES) $(LTDL_FILES)
++pdsh_SOURCES = $(PDSH_SOURCES)
+ pdsh_inst_SOURCES = $(pdsh_SOURCES)
+ nodist_pdsh_SOURCES = testconfig.c
+ nodist_pdsh_inst_SOURCES = config.c
+--
+1.6.6.2
+
diff --git a/app-shells/pdsh/metadata.xml b/app-shells/pdsh/metadata.xml
new file mode 100644
index 00000000000..a2891d92847
--- /dev/null
+++ b/app-shells/pdsh/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>cluster</herd>
+ <longdescription>
+Pdsh is a high-performance, parallel remote shell utility. It has built-in,
+thread-safe clients for Berkeley and Kerberos V4 rsh, and can call SSH
+externally (though with reduced performance). Pdsh uses a "sliding window"
+parallel algorithm to conserve socket resources on the initiating node and
+to allow progress to continue while timeouts occur on some connections.
+Pdsh is similar to DSH, part of the IBM PSSP software offering, but offers
+improved performance and handling of error conditions. It runs on a variety
+of platforms (including as a replacement for DSH on AIX/PSSP), but is
+primarily developed on Linux.
+</longdescription>
+ <use>
+ <flag name="rsh">This allows the use of rsh (remote shell) and rcp
+ (remote copy) for authoring websites. sftp is a much more secure protocol
+ and is preferred.</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">pdsh</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/pdsh/pdsh-2.18-r1.ebuild b/app-shells/pdsh/pdsh-2.18-r1.ebuild
new file mode 100644
index 00000000000..eae30968aa8
--- /dev/null
+++ b/app-shells/pdsh/pdsh-2.18-r1.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils autotools
+
+DESCRIPTION="A high-performance, parallel remote shell utility"
+HOMEPAGE="https://computing.llnl.gov/linux/pdsh.html"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="crypt readline rsh"
+RDEPEND="crypt? ( net-misc/openssh )
+ rsh? ( net-misc/netkit-rsh )
+ readline? ( sys-libs/readline )"
+DEPEND="${RDEPEND}"
+
+# Feel free to debug the test suite. Running the tests
+# by hand instead of using pdsh.exp seems to print out
+# what is expected, so the error is most likely in the
+# testsuite itself.
+# You'll also need dev-util/dejagnu
+RESTRICT="test"
+
+pkg_setup() {
+ local m
+ local valid_modules=":xcpu:ssh:exec:qshell:genders:nodeupdown:mrsh:mqshell:dshgroups:netgroup:"
+
+ PDSH_MODULE_LIST="${PDSH_MODULE_LIST:-netgroup}"
+ MODULE_CONFIG=""
+ for m in ${PDSH_MODULE_LIST}; do
+ if [[ "${valid_modules}" == *:${m}:* ]]; then
+ MODULE_CONFIG="${MODULE_CONFIG} --with-${m}"
+ fi
+ done
+
+ elog "Building ${PF} with the following modules:"
+ elog " ${PDSH_MODULE_LIST}"
+ elog "This list can be changed in /etc/make.conf by setting"
+ elog "PDSH_MODULE_LIST=\"module1 module2...\""
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/pdsh-2.18-unbundle-libtool.patch
+ eautoreconf
+}
+
+src_configure() {
+ econf ${MODULE_CONFIG} \
+ --with-machines \
+ $(use_with crypt ssh) \
+ $(use_with rsh) \
+ $(use_with readline) \
+ || die "configure failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+}
diff --git a/app-shells/pdsh/pdsh-2.26.ebuild b/app-shells/pdsh/pdsh-2.26.ebuild
new file mode 100644
index 00000000000..91ba56e29b6
--- /dev/null
+++ b/app-shells/pdsh/pdsh-2.26.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+DESCRIPTION="A high-performance, parallel remote shell utility"
+HOMEPAGE="https://computing.llnl.gov/linux/pdsh.html"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="crypt readline rsh static-libs test"
+
+RDEPEND="crypt? ( net-misc/openssh )
+ rsh? ( net-misc/netkit-rsh )
+ readline? ( sys-libs/readline )"
+DEPEND="${RDEPEND}
+ test? ( dev-util/dejagnu )"
+
+pkg_setup() {
+ local m
+ local valid_modules=":xcpu:ssh:exec:qshell:genders:nodeupdown:mrsh:mqshell:dshgroups:netgroup:"
+
+ PDSH_MODULE_LIST="${PDSH_MODULE_LIST:-netgroup}"
+ MODULE_CONFIG=""
+ for m in ${PDSH_MODULE_LIST}; do
+ if [[ "${valid_modules}" == *:${m}:* ]]; then
+ MODULE_CONFIG="${MODULE_CONFIG} --with-${m}"
+ fi
+ done
+
+ elog "Building ${PF} with the following modules:"
+ elog " ${PDSH_MODULE_LIST}"
+ elog "This list can be changed in /etc/make.conf by setting"
+ elog "PDSH_MODULE_LIST=\"module1 module2...\""
+}
+
+src_configure() {
+ econf ${MODULE_CONFIG} \
+ --with-machines \
+ --enable-shared \
+ $(use_with crypt ssh) \
+ $(use_with rsh) \
+ $(use_with readline) \
+ $(use_enable static-libs static)
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+}
diff --git a/app-shells/posh/Manifest b/app-shells/posh/Manifest
new file mode 100644
index 00000000000..c36180875b4
--- /dev/null
+++ b/app-shells/posh/Manifest
@@ -0,0 +1,3 @@
+DIST posh_0.10.2.tar.gz 469338 SHA256 6ee7e8e2d181953efbcd991cc0e66c98c7d2a0511f1697889e239a93d625f0a1 SHA512 4abde6415eaf199f5a7998e8a8fc6ed0dd07fb2ec95724bc01ba18f01f0d9b1a0af04d6ea59e302407f9a32f7ef7555e24f48005f795390bda3ecd01e55b5878 WHIRLPOOL 208a9e97bdf3846abe2285eb21c40be0f004d4e2a72785cbb22f12830f681268a303ba0d6f3baf54a7a9f6a3933ead2cfda80e7b3fefeb9a6e7f03d39d7ee80f
+DIST posh_0.11.tar.gz 469798 SHA256 0d9b54db168e6fc7f93676d188e460988017868ffac5987b76d4fb18c2008f6f SHA512 2d4319600f4356e0b661403648c62078e87fbac0ac418a4985ebfcf6277bd26a8dd8462f61676194cd547f3c9aa31e1713fc1b562d63466511dbf8845d7a06aa WHIRLPOOL f546f9ff07daba992d9ac897ac77fdbfbca92a393640b1226c01c271cdbbb57a4d0015c5d5a463a6b1505ec2cd168f8ed2bca8a75be9189de1c27e295558500e
+DIST posh_0.12.tar.gz 469680 SHA256 9206b67005cf357404b3f3021c2d7c7bbd50756050512dececb9ed836435b048 SHA512 bb98d2fa009b5ccd666103378dd30da5649baf830d4e3124575f813b98b13275bde46e03bb737c75b37c82f655b3f17e9a5decd29b75d20678e78a4d7e3abf00 WHIRLPOOL ffd03e1537aa8e68545c532fb8c27fc9702ab16157efce7ef5c83b6f70fbe1a807e4759b85525036ae0c26f56b595ccf95d9cffb8a96b4ef8e5a8ec4b50c60e6
diff --git a/app-shells/posh/files/posh-glibc-2.16.patch b/app-shells/posh/files/posh-glibc-2.16.patch
new file mode 100644
index 00000000000..8c29def10f7
--- /dev/null
+++ b/app-shells/posh/files/posh-glibc-2.16.patch
@@ -0,0 +1,19 @@
+Description: explicitly include sys/resource.h, for eglibc 2.16
+ sys/resource.h is no longer included by sys/wait.h
+ http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=d94a4670800de6e8f088b8630ad5142866127980
+Author: Stefano Rivera <stefanor@ubuntu.com>
+Last-Updated: 2012-11-07
+
+--- a/ksh_wait.h
++++ b/ksh_wait.h
+@@ -5,6 +5,10 @@
+ # include <sys/wait.h>
+ #endif
+
++#ifdef HAVE_SYS_RESOURCE_H
++# include <sys/resource.h>
++#endif
++
+ #ifndef POSIX_SYS_WAIT
+ /* Get rid of system macros (which probably use union wait) */
+ # undef WIFCORED
diff --git a/app-shells/posh/metadata.xml b/app-shells/posh/metadata.xml
new file mode 100644
index 00000000000..1df89af114a
--- /dev/null
+++ b/app-shells/posh/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>mgorny@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-shells/posh/posh-0.10.2.ebuild b/app-shells/posh/posh-0.10.2.ebuild
new file mode 100644
index 00000000000..954515077cd
--- /dev/null
+++ b/app-shells/posh/posh-0.10.2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+inherit autotools-utils
+
+DESCRIPTION="Reimplementation of Bourne shell based on pdksh"
+HOMEPAGE="http://packages.debian.org/posh"
+SRC_URI="mirror://debian/pool/main/p/posh/${P/-/_}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+RESTRICT=test
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-glibc-2.16.patch
+)
+
+src_configure() {
+ myeconfargs=(
+ --exec-prefix=/
+ )
+ autotools-utils_src_configure
+}
diff --git a/app-shells/posh/posh-0.11.ebuild b/app-shells/posh/posh-0.11.ebuild
new file mode 100644
index 00000000000..954515077cd
--- /dev/null
+++ b/app-shells/posh/posh-0.11.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+inherit autotools-utils
+
+DESCRIPTION="Reimplementation of Bourne shell based on pdksh"
+HOMEPAGE="http://packages.debian.org/posh"
+SRC_URI="mirror://debian/pool/main/p/posh/${P/-/_}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+RESTRICT=test
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-glibc-2.16.patch
+)
+
+src_configure() {
+ myeconfargs=(
+ --exec-prefix=/
+ )
+ autotools-utils_src_configure
+}
diff --git a/app-shells/posh/posh-0.12.ebuild b/app-shells/posh/posh-0.12.ebuild
new file mode 100644
index 00000000000..34d2e996fc6
--- /dev/null
+++ b/app-shells/posh/posh-0.12.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools-utils
+
+DESCRIPTION="Reimplementation of Bourne shell based on pdksh"
+HOMEPAGE="http://packages.debian.org/posh"
+SRC_URI="mirror://debian/pool/main/p/posh/${P/-/_}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+RESTRICT=test
+
+#PATCHES=(
+# "${FILESDIR}"/${PN}-glibc-2.16.patch
+#)
+
+src_configure() {
+ myeconfargs=(
+ --exec-prefix=/
+ )
+ autotools-utils_src_configure
+}
diff --git a/app-shells/psh/Manifest b/app-shells/psh/Manifest
new file mode 100644
index 00000000000..609c5dcba32
--- /dev/null
+++ b/app-shells/psh/Manifest
@@ -0,0 +1 @@
+DIST psh-1.8.1.tar.gz 120036 SHA256 9c6d276f98a3e62086bda76e1eddc0eaba6b003b903c94261bd53e80700ef88f SHA512 20ac6d6d39ff0820eee6314e73c02f18b9362ef3dde6e2c6cd68094d1ebc435d26bf3528e858042b95372916821077e5a4e5d4b376aac68caf6d8fc629a61c07 WHIRLPOOL 10d2005aa0a551823d82e475bb10d7619dfde21fc39dbee37989e08c4f8fd59b0a44ba3ea70157e55db80388ff4af099afe073c91bf0f3e95065e62f97539c95
diff --git a/app-shells/psh/metadata.xml b/app-shells/psh/metadata.xml
new file mode 100644
index 00000000000..d9cd2cad66c
--- /dev/null
+++ b/app-shells/psh/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+<email>maintainer-needed@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/app-shells/psh/psh-1.8.1-r1.ebuild b/app-shells/psh/psh-1.8.1-r1.ebuild
new file mode 100644
index 00000000000..8731c596166
--- /dev/null
+++ b/app-shells/psh/psh-1.8.1-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit perl-module
+
+DESCRIPTION="Combines the interactive nature of a Unix shell with the power of Perl"
+HOMEPAGE="http://www.focusresearch.com/gregor/sw/psh/"
+SRC_URI="http://www.focusresearch.com/gregor/download/${P}.tar.gz"
+
+LICENSE="|| ( Artistic GPL-2 )"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+# Package warrants USE doc & examples
+IUSE="readline"
+
+DEPEND=""
+RDEPEND="readline? (
+ dev-perl/Term-ReadLine-Gnu
+ dev-perl/TermReadKey )"
+
+SRC_TEST="do parallel"
+myinst="SITEPREFIX=${D}/usr"
+
+src_install() {
+ perl-module_src_install
+ dodoc examples/complete-examples doc/*
+}
diff --git a/app-shells/push/Manifest b/app-shells/push/Manifest
new file mode 100644
index 00000000000..9f977a2aef9
--- /dev/null
+++ b/app-shells/push/Manifest
@@ -0,0 +1,2 @@
+DIST push-1.5.tar.gz 1971 SHA256 7c9068a619bcc49e3e13f819e23e1c05464729df0529753557f23f65e922fdad SHA512 77f4afd1a8226b0b4104008fcea2a61e5c9a7930b08266e069c387c806ef86e8d5641d70ece6dfd02557c956fc916134551d10777e5730973657d767370f8a26 WHIRLPOOL e1d71d7d9369bf23fe9046a34f7c9cd4f7ff79b4db3e13a9cef089113e31f7db2ecb6ff13e899e1db7726359b68260776723f73201d3db0472d267b8db7515b2
+DIST push-1.6.tar.gz 1955 SHA256 713dea172ede55971ff82da932782503c2aa6703eba73c1ac317ec4c8eb22e80 SHA512 4623f51249138bacb7251fb5d5d1ae8dd070de7ce628e42b6eed90a4b6ffd36d28eb58b116f5b1833bc1affa8db539da9b94d104ffe03c6bd1e294b56c393c86 WHIRLPOOL 787f65542e92fd10c411969d03ec17b45a90b35e9c8e17b9fb3e732fb1d97813f04c3a03cc329a469a5bea2a194f879f4c600e2e534dd8c778f7f712d4c171b1
diff --git a/app-shells/push/metadata.xml b/app-shells/push/metadata.xml
new file mode 100644
index 00000000000..904fe4e422c
--- /dev/null
+++ b/app-shells/push/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ <description>Upstream developer, assign bugs</description>
+ </maintainer>
+ <maintainer>
+ <email>axs@gentoo.org</email>
+ <description>Proxy committer, CC bugs</description>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/push</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/push/push-1.5-r1.ebuild b/app-shells/push/push-1.5-r1.ebuild
new file mode 100644
index 00000000000..ddf8f3624dc
--- /dev/null
+++ b/app-shells/push/push-1.5-r1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+inherit vcs-snapshot
+
+DESCRIPTION="A POSIX shell function to treat a variable like an array, quoting args"
+HOMEPAGE="https://github.com/vaeth/push/"
+SRC_URI="http://github.com/vaeth/${PN}/tarball/${PV} -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris"
+IUSE=""
+
+src_install() {
+ insinto /usr/bin
+ doins push.sh
+ dodoc README
+}
diff --git a/app-shells/push/push-1.5.ebuild b/app-shells/push/push-1.5.ebuild
new file mode 100644
index 00000000000..9cf5f1f1f8e
--- /dev/null
+++ b/app-shells/push/push-1.5.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+inherit vcs-snapshot
+
+DESCRIPTION="A POSIX shell function to treat a variable like an array, quoting args"
+HOMEPAGE="https://github.com/vaeth/push/"
+SRC_URI="http://github.com/vaeth/${PN}/tarball/release-${PV} -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris"
+IUSE=""
+
+src_install() {
+ insinto /usr/bin
+ doins push.sh
+ dodoc README
+}
diff --git a/app-shells/push/push-1.6.ebuild b/app-shells/push/push-1.6.ebuild
new file mode 100644
index 00000000000..d2bb450174c
--- /dev/null
+++ b/app-shells/push/push-1.6.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+inherit vcs-snapshot
+
+DESCRIPTION="A POSIX shell function to treat a variable like an array, quoting args"
+HOMEPAGE="https://github.com/vaeth/push/"
+SRC_URI="http://github.com/vaeth/${PN}/tarball/${PV} -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris"
+IUSE=""
+
+src_install() {
+ insinto /usr/bin
+ doins push.sh
+ dodoc README
+}
diff --git a/app-shells/rc/Manifest b/app-shells/rc/Manifest
new file mode 100644
index 00000000000..c0c4190614a
--- /dev/null
+++ b/app-shells/rc/Manifest
@@ -0,0 +1 @@
+DIST rc-1.7.2.tbz 153807 SHA256 d4b552b6652a2f85400b61b970c9034b17fcb59b74a0f242bbea12959e8939c7 SHA512 760ee04f2c0fbffc1dddebce35b34183e19e67c2f15fa6c8da83c0305a68114f4aa6af67d33f05c51bcc232a1f7178319eeabd3538fbdf2546742f200457928b WHIRLPOOL c84235fa60cd681e0fefa2f83ac6b5a7d24f3b30f53205ab88cfa94e3e2585e1f8c91062f4c018318d6bb19214e45fc4d418438baeb8d10eb2987518bdce1446
diff --git a/app-shells/rc/metadata.xml b/app-shells/rc/metadata.xml
new file mode 100644
index 00000000000..bee9f9ae6f0
--- /dev/null
+++ b/app-shells/rc/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>base-system</herd>
+</pkgmetadata>
diff --git a/app-shells/rc/rc-1.7.2.ebuild b/app-shells/rc/rc-1.7.2.ebuild
new file mode 100644
index 00000000000..52b96b3a81a
--- /dev/null
+++ b/app-shells/rc/rc-1.7.2.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=2
+
+DESCRIPTION="A reimplementation of the Plan 9 shell"
+HOMEPAGE="http://rc-shell.slackmatic.org/"
+SRC_URI="ftp://rc.quanstro.net/pub/${P}.tbz"
+
+LICENSE="rc"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="libedit readline"
+
+RDEPEND="readline? ( sys-libs/readline )
+ libedit? ( dev-libs/libedit )"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ local myconf="--with-history"
+ use readline && myconf="--with-readline"
+ use libedit && myconf="--with-editline"
+
+ econf \
+ --disable-dependency-tracking \
+ ${myconf}
+}
+
+src_install() {
+ into /
+ newbin rc rcsh || die
+ newman rc.1 rcsh.1
+ dodoc AUTHORS ChangeLog NEWS README
+}
+
+pkg_postinst() {
+ ebegin "Updating /etc/shells"
+ ( grep -v "^/bin/rcsh$" "${ROOT}"etc/shells; echo "/bin/rcsh" ) > "${T}"/shells
+ mv -f "${T}"/shells "${ROOT}"etc/shells
+ eend $?
+}
diff --git a/app-shells/rrs/Manifest b/app-shells/rrs/Manifest
new file mode 100644
index 00000000000..e58ab31d806
--- /dev/null
+++ b/app-shells/rrs/Manifest
@@ -0,0 +1 @@
+DIST rrs-1.70.tar.gz 49579 SHA256 ffd9098cf93da5bda65150fe241ec51eb0eb0e37edca038e6a2216bc12546e85 SHA512 58a3d34bd80f2ddaa62112819d83ab2175daf1b9e66605d0b629a15d1fc6b43b482e1a4a763b99a07d85bbb0fa6df339d0dfcc203e3a3da3d5cfdabbd14a4bfa WHIRLPOOL 1825e41907f018dfbbd6678da39695bf34007cdbbd9b47a86b79f32bac9cbd2ae242d147d2fe568153cf52610daf3d039a49c001fba737d2fd0c080c03f5f074
diff --git a/app-shells/rrs/files/rrs-1.70-asneeded.patch b/app-shells/rrs/files/rrs-1.70-asneeded.patch
new file mode 100644
index 00000000000..9ed9ee16fbe
--- /dev/null
+++ b/app-shells/rrs/files/rrs-1.70-asneeded.patch
@@ -0,0 +1,38 @@
+--- Makefile.orig 2004-05-30 02:14:14.000000000 +0200
++++ Makefile 2009-01-03 15:02:19.253460887 +0100
+@@ -8,8 +8,8 @@
+ # if your system doesn't have GNU's getopt_long(), add -DWITHOUT_GNU_GETOPT
+ CFLAGS=-I/usr/local/include -Wall -O2
+ # openpty() is in libutil on most Unix-like operating systems
+-LDFLAGS=-L/usr/local/lib -s -lstdc++ -lm -lutil -lssl -lcrypto
+-LDFLAGSNOSSL=-s -lstdc++ -lm -lutil
++LDFLAGS=-L/usr/local/lib -lstdc++ -lm -lutil -lssl -lcrypto
++LDFLAGSNOSSL=-lstdc++ -lm -lutil
+
+ PREFIX=/usr/local
+ BINDIR=bin
+@@ -36,9 +36,9 @@
+ generic-nossl: clean compile-generic-nossl
+
+ qnx: clean
+- $(MAKE) LDFLAGS="-L/usr/local/lib -s -lsocket -lssl -lcrypto" compile-qnx
++ $(MAKE) LDFLAGS="-L/usr/local/lib -lsocket -lssl -lcrypto" compile-qnx
+ qnx-nossl: clean
+- $(MAKE) LDFLAGSNOSSL="-s -lsocket" compile-qnx-nossl
++ $(MAKE) LDFLAGSNOSSL="-lsocket" compile-qnx-nossl
+
+ distclean: clean
+
+@@ -47,10 +47,10 @@
+
+ ## generic
+ compile-generic:
+- $(CC) $(CFLAGS) $(LDFLAGS) $(LDEXTRA) -o $(out) rrs.c md5.c sha1.c farm9crypt.cc twofish2.cc
++ $(CC) $(CFLAGS) $(LDEXTRA) -o $(out) rrs.c md5.c sha1.c farm9crypt.cc twofish2.cc $(LDFLAGS)
+
+ compile-generic-nossl:
+- $(CC) -DWITHOUT_SSL $(CFLAGS) $$CFLAGS $(LDFLAGSNOSSL) $(LDEXTRA) -o $(out) rrs.c md5.c sha1.c farm9crypt.cc twofish2.cc
++ $(CC) -DWITHOUT_SSL $(CFLAGS) $$CFLAGS $(LDEXTRA) -o $(out) rrs.c md5.c sha1.c farm9crypt.cc twofish2.cc $(LDFLAGSNOSSL)
+
+ ## qnx
+ compile-qnx:
diff --git a/app-shells/rrs/metadata.xml b/app-shells/rrs/metadata.xml
new file mode 100644
index 00000000000..c8670aa8b9f
--- /dev/null
+++ b/app-shells/rrs/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>pinkbyte@gentoo.org</email>
+ <name>Sergey Popov</name>
+ </maintainer>
+ <longdescription/>
+ <upstream>
+ <remote-id type="freecode">rrs</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/rrs/rrs-1.70-r1.ebuild b/app-shells/rrs/rrs-1.70-r1.ebuild
new file mode 100644
index 00000000000..ff48014bf0f
--- /dev/null
+++ b/app-shells/rrs/rrs-1.70-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="Reverse Remote Shell"
+HOMEPAGE="http://freecode.com/projects/rrs"
+SRC_URI="http://www.cycom.se/uploads/36/19/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="ssl"
+
+DEPEND="ssl? ( dev-libs/openssl )"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/"${P}"-asneeded.patch
+ sed -i -e "s/-s //g" Makefile || die
+}
+
+src_compile() {
+ local target=""
+ use ssl || target="-nossl"
+
+ emake generic${target} CFLAGS="${CFLAGS}" LDEXTRA="${LDFLAGS}" CC="$(tc-getCC)"
+}
+
+src_install() {
+ dobin rrs
+ dodoc CHANGES README
+ doman rrs.1
+}
diff --git a/app-shells/rrs/rrs-1.70.ebuild b/app-shells/rrs/rrs-1.70.ebuild
new file mode 100644
index 00000000000..dd118c129ce
--- /dev/null
+++ b/app-shells/rrs/rrs-1.70.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="Reverse Remote Shell"
+HOMEPAGE="http://freecode.com/projects/rrs"
+SRC_URI="http://www.cycom.se/uploads/36/19/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="ssl"
+
+DEPEND="ssl? ( dev-libs/openssl )"
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-asneeded.patch
+}
+
+src_compile() {
+ local target=""
+ use ssl || target="-nossl"
+
+ sed -i -e "s/-s //g" Makefile || die
+ emake generic${target} CFLAGS="${CFLAGS}" LDEXTRA="${LDFLAGS}" \
+ CC="$(tc-getCC)" || die "emake failed"
+}
+
+src_install() {
+ dobin rrs || die
+ dodoc CHANGES README
+ doman rrs.1
+}
diff --git a/app-shells/rssh/Manifest b/app-shells/rssh/Manifest
new file mode 100644
index 00000000000..70a1bb8ad2e
--- /dev/null
+++ b/app-shells/rssh/Manifest
@@ -0,0 +1,2 @@
+DIST rssh-2.3.4.tar.gz 113315 SHA256 f30c6a760918a0ed39cf9e49a49a76cb309d7ef1c25a66e77a41e2b1d0b40cd9 SHA512 c1a77abdf4abe5f936fb1c9c008fc81fabf7b624d69ed31fe2ae5619dfa4a79f1d4a4f2daa5291a36d40353fa2168e74e5ba61294230d702fcdc88ae0d520487 WHIRLPOOL a2fa86922780bdc5f34536aa5840a76902841024b0bc35220098e9d40e087c28578c37417c92ffca5035898c47f50d5de5d18609a3087ceb25eb532bd6b26092
+DIST rssh_2.3.4-3.debian.tar.xz 27364 SHA256 077b304c423349f2771207b0da20b0aef4a8e5baa9c51dcacd37fe2134bee70b SHA512 963d51c0a806090f8008b1f83ca3a0bc271f789e1388c4f4de993e61d705458be4163ba74ebb4fccea454b6ab08239b0a7c2b067bfe7ab222033b9785cb79a90 WHIRLPOOL 127f922d7595c3f3dc68be7b87f2b4043fa433c1e115232b6bac35cc924b280f161c976ab59cca92da846653ea4b5d5c3e33592e4f72593ec8dd07bd6c891c34
diff --git a/app-shells/rssh/files/rssh-2.3.4_p3-autotools.patch b/app-shells/rssh/files/rssh-2.3.4_p3-autotools.patch
new file mode 100644
index 00000000000..8030eda525f
--- /dev/null
+++ b/app-shells/rssh/files/rssh-2.3.4_p3-autotools.patch
@@ -0,0 +1,33 @@
+diff -Naur rssh-2.3.4.orig/configure.ac rssh-2.3.4/configure.ac
+--- rssh-2.3.4.orig/configure.ac 2013-11-15 16:11:21.301056547 -0700
++++ rssh-2.3.4/configure.ac 2013-11-15 16:11:51.471424233 -0700
+@@ -13,12 +13,6 @@
+ AC_PROG_MAKE_SET
+ AC_CHECK_TOOL([STRIP],[strip])
+
+-if test yes = "$GCC" ; then
+- defcflags="-O2 -Wall -Wshadow"
+-else
+- echo "Using default flags"
+-fi
+-
+ # Checks for libraries.
+
+ # Checks for header files.
+diff -Naur rssh-2.3.4.orig/Makefile.am rssh-2.3.4/Makefile.am
+--- rssh-2.3.4.orig/Makefile.am 2013-11-15 16:11:21.301056547 -0700
++++ rssh-2.3.4/Makefile.am 2013-11-15 16:12:28.581876494 -0700
+@@ -15,7 +15,7 @@
+ base=`echo @PACKAGE_STRING@|tr " " "-"`
+
+ install-exec-hook:
+- chmod u+s $(libexecdir)/rssh_chroot_helper
++ chmod u+s $(DESTDIR)/$(libexecdir)/rssh_chroot_helper
+
+ rpm: dist
+ rpmbuild -ta --sign $(base).tar.gz
+@@ -24,3 +24,4 @@
+ gpg -ba --default-key ddm@pizzashack.org $(base).tar.gz
+ mv $(base).tar.gz.asc $(base).tar.gz.sig
+
++AM_CPPFLAGS += -I. -I$(srcdir)
diff --git a/app-shells/rssh/metadata.xml b/app-shells/rssh/metadata.xml
new file mode 100644
index 00000000000..5144fb2554b
--- /dev/null
+++ b/app-shells/rssh/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>opensource@andmarios.com</email>
+ <name>Marios Andreopoulos</name>
+ </maintainer>
+ <maintainer>
+ <email>ottxor@gentoo.org</email>
+ <name>Christoph Junghans</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">rssh</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/rssh/rssh-2.3.4.ebuild b/app-shells/rssh/rssh-2.3.4.ebuild
new file mode 100644
index 00000000000..b85c7cc6e51
--- /dev/null
+++ b/app-shells/rssh/rssh-2.3.4.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit eutils multilib
+
+DESCRIPTION="Restricted shell for SSHd"
+HOMEPAGE="http://rssh.sourceforge.net/"
+SRC_URI="mirror://sourceforge/rssh/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm ppc x86"
+IUSE="static"
+
+RDEPEND="virtual/ssh"
+
+src_prepare() {
+ epatch_user
+
+ sed -i 's:chmod u+s $(:chmod u+s $(DESTDIR)$(:' Makefile.in || die
+ # respect CFLAGS, bug #450458
+ sed -i -e '/$(CC) -c/s/$(CPPFLAGS)/$(CFLAGS)/' Makefile.in || die
+}
+
+src_configure() {
+ econf \
+ --libexecdir="/usr/$(get_libdir)/misc" \
+ --with-scp=/usr/bin/scp \
+ --with-sftp-server="/usr/$(get_libdir)/misc/sftp-server" \
+ $(use_enable static)
+}
+
+src_install() {
+ emake install DESTDIR="${D}"
+ dodoc AUTHORS ChangeLog CHROOT INSTALL README TODO
+}
diff --git a/app-shells/rssh/rssh-2.3.4_p3.ebuild b/app-shells/rssh/rssh-2.3.4_p3.ebuild
new file mode 100644
index 00000000000..a595f7cbb5d
--- /dev/null
+++ b/app-shells/rssh/rssh-2.3.4_p3.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools-utils multilib
+
+DESCRIPTION="Restricted shell for SSHd"
+HOMEPAGE="http://rssh.sourceforge.net/"
+MY_P="${P/%_p*}"
+SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz
+ mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${PV/_p/-}.debian.tar.xz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~x86"
+IUSE="static subversion"
+
+RDEPEND="virtual/ssh"
+
+S="${WORKDIR}/${MY_P}"
+DOCS=( AUTHORS ChangeLog CHROOT INSTALL README TODO )
+
+src_prepare() {
+ epatch "${WORKDIR}"/debian/patches/fixes/*.diff "${FILESDIR}/${P}"-autotools.patch
+ use subversion && epatch "${WORKDIR}"/debian/patches/features/subversion.diff
+ AUTOTOOLS_AUTORECONF=1 autotools-utils_src_prepare #due to debian patches
+}
+
+src_configure() {
+ local myeconfargs=(
+ --libexecdir="/usr/$(get_libdir)/misc"
+ --with-scp=/usr/bin/scp
+ --with-sftp-server="/usr/$(get_libdir)/misc/sftp-server"
+ $(use_enable static)
+ )
+ autotools-utils_src_configure
+}
+
+src_install() {
+ autotools-utils_src_install
+ if use subversion && [[ -f "${EROOT}"/etc/rssh.conf ]]; then
+ awk -f conf_convert "${EROOT}"/etc/rssh.conf > "${T}/rssh.conf" || die
+ insinto /etc
+ doins "${T}/rssh.conf"
+ fi
+}
diff --git a/app-shells/rust-zshcomp/Manifest b/app-shells/rust-zshcomp/Manifest
new file mode 100644
index 00000000000..da452e83c5f
--- /dev/null
+++ b/app-shells/rust-zshcomp/Manifest
@@ -0,0 +1 @@
+DIST rust-zshcomp-1_beta20150411.tar.gz 4738 SHA256 b1ce0836aa12e9f176c1d710d5975e1b5025d14095b622aa9f417f34b1877538 SHA512 84231fba6abdc1117f05be16b32a641e2a2334873be28185f4b748bdc1cf664f70e3e5a761d9cc25a879bd7df4fb8f8fddb3114be355d8b91e3c2a0f49739f3c WHIRLPOOL 56b2918f2c24eb2753d8f3060582b2d55194832bbf0ba7ae5265ce801dda2049f29e4201197b02c5968e1e6b0f335c1106611a5f3f5cbaa1f3b00953dc2f1a50
diff --git a/app-shells/rust-zshcomp/metadata.xml b/app-shells/rust-zshcomp/metadata.xml
new file mode 100644
index 00000000000..0b7db932cfa
--- /dev/null
+++ b/app-shells/rust-zshcomp/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>jauhien@gentoo.org</email>
+ <name>Jauhien Piatlicki</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-shells/rust-zshcomp/rust-zshcomp-1_beta20150411.ebuild b/app-shells/rust-zshcomp/rust-zshcomp-1_beta20150411.ebuild
new file mode 100644
index 00000000000..f0d416cfc3e
--- /dev/null
+++ b/app-shells/rust-zshcomp/rust-zshcomp-1_beta20150411.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Rust zsh completions"
+HOMEPAGE="http://www.rust-lang.org/"
+SRC_URI="http://dev.gentoo.org/~jauhien/distfiles/${P}.tar.gz"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="app-shells/zsh"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ :
+}
+
+src_install() {
+ insinto /usr/share/zsh/site-functions
+ doins _rust
+}
diff --git a/app-shells/sash/Manifest b/app-shells/sash/Manifest
new file mode 100644
index 00000000000..1064ef43cd2
--- /dev/null
+++ b/app-shells/sash/Manifest
@@ -0,0 +1 @@
+DIST sash-3.8.tar.gz 53049 SHA256 13c4f9a911526949096bf543c21a41149e6b037061193b15ba6b707eea7b6579 SHA512 e544721dbb5d13d2184531a2caa4b90fb29fc360e2b80f64adb2433cbe4e5588171f3567bde03b520fbe7cbd0f3007e0e9c9c41cb16570709b03cedc2dfbe291 WHIRLPOOL a866e254f1beb0b87591875992871b2e223fd72a0386fdff60bf1c6151a29e5d85d0fc72f9af75953a78b5f5b15eb8cc6587b0e2a0c5b6c62b9b08f69d469c5e
diff --git a/app-shells/sash/files/sash-3.7-builtin.patch b/app-shells/sash/files/sash-3.7-builtin.patch
new file mode 100644
index 00000000000..be943063efd
--- /dev/null
+++ b/app-shells/sash/files/sash-3.7-builtin.patch
@@ -0,0 +1,14 @@
+diff -Nrup sash-3.7.orig/sash.c sash-3.7/sash.c
+--- sash-3.7.orig/sash.c 2004-01-14 00:08:03.000000000 -0500
++++ sash-3.7/sash.c 2004-10-31 00:05:59.000000000 -0400
+@@ -739,6 +739,10 @@ tryBuiltIn(const char * cmd)
+ while (*endCmd && !isBlank(*endCmd))
+ endCmd++;
+
++ /* FIXME: command line will segv with -c 12000bytes -solar */
++ if ((endCmd - cmd) >= sizeof(cmdName))
++ return FALSE;
++
+ memcpy(cmdName, cmd, endCmd - cmd);
+
+ cmdName[endCmd - cmd] = '\0';
diff --git a/app-shells/sash/metadata.xml b/app-shells/sash/metadata.xml
new file mode 100644
index 00000000000..91f4e72fb54
--- /dev/null
+++ b/app-shells/sash/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-shells/sash/sash-3.8.ebuild b/app-shells/sash/sash-3.8.ebuild
new file mode 100644
index 00000000000..a9b1fab6545
--- /dev/null
+++ b/app-shells/sash/sash-3.8.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils toolchain-funcs flag-o-matic
+
+DESCRIPTION="A small (static) UNIX Shell"
+HOMEPAGE="http://www.canb.auug.org.au/~dbell/"
+SRC_URI="http://www.canb.auug.org.au/~dbell/programs/${P}.tar.gz"
+
+LICENSE="freedist"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86"
+IUSE="static"
+
+DEPEND="
+ static? ( sys-libs/zlib[static-libs] )
+ !static? ( >=sys-libs/zlib-1.2.3 )"
+RDEPEND="!static? ( ${DEPEND} )"
+
+src_prepare() {
+ epatch "${FILESDIR}"/sash-3.7-builtin.patch
+
+ sed \
+ -e "s:-O3:${CFLAGS}:" \
+ -e '/strip/d' \
+ -i Makefile || die
+ sed \
+ -e 's:linux/ext2_fs.h:ext2fs/ext2_fs.h:g' \
+ -i cmd_chattr.c || die
+}
+
+src_compile() {
+ use static && append-ldflags -static
+
+ emake LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)"
+}
+
+src_install() {
+ into /
+ dobin sash
+ doman sash.1
+ dodoc README
+}
diff --git a/app-shells/scsh-install-lib/Manifest b/app-shells/scsh-install-lib/Manifest
new file mode 100644
index 00000000000..ad2ca31c175
--- /dev/null
+++ b/app-shells/scsh-install-lib/Manifest
@@ -0,0 +1 @@
+DIST scsh-install-lib-1.3.0.tar.gz 142852 SHA256 7e536cf11ac309b0ddab797a53211d5dcea55cf47835cfb15626577411ec14ef SHA512 ec9069e7ceb6fe316c8b0d1baf1903f2ce1fa2f3f79dc1bf8356b8064c0596e92c8bbc889c7d27b6456a2a0c49dde984536a05987baccc05f4724992cf90ca98 WHIRLPOOL 391952c84839e304c0cad8b0b109a75223029b1301206696615e5c0a9ed34151bacce4c264f41f76b7ff84a6c75555a4daaaa0a6efcde08f317aaaf8a7869d29
diff --git a/app-shells/scsh-install-lib/metadata.xml b/app-shells/scsh-install-lib/metadata.xml
new file mode 100644
index 00000000000..41e25959213
--- /dev/null
+++ b/app-shells/scsh-install-lib/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>scheme</herd>
+<use>
+ <flag name='scsh'>Use a non-FHS directory layout</flag>
+</use>
+</pkgmetadata>
diff --git a/app-shells/scsh-install-lib/scsh-install-lib-1.3.0.ebuild b/app-shells/scsh-install-lib/scsh-install-lib-1.3.0.ebuild
new file mode 100644
index 00000000000..d2a96a89a16
--- /dev/null
+++ b/app-shells/scsh-install-lib/scsh-install-lib-1.3.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit scsh
+
+DESCRIPTION="Installation tool for the Scheme Untergrund Library"
+HOMEPAGE="http://lamp.epfl.ch/~schinz/scsh_packages/"
+SRC_URI="http://lamp.epfl.ch/~schinz/scsh_packages/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~x86"
+IUSE=""
+
+DEPEND=">=app-shells/scsh-0.6.6"
+
+src_install() {
+ dodir $SCSH_MODULES_PATH
+ ./install.scm ${SCSH_LAYOUT_CONF} \
+ --bindir /usr/bin \
+ --force \
+ || die "./install.scm failed"
+}
diff --git a/app-shells/scsh/Manifest b/app-shells/scsh/Manifest
new file mode 100644
index 00000000000..49647b5ee76
--- /dev/null
+++ b/app-shells/scsh/Manifest
@@ -0,0 +1 @@
+DIST scsh-0.6.7.tar.gz 4367439 SHA256 c4a9f7df2a0bb7a7aa3dafc918aa9e9a566d4ad33a55f0192889de172d1ddb7f SHA512 d769b3d70afe813a3d25ef1b77d8dbc549b379ca41b0748cd90791408a36b33ed3ce08937bfd925bab411785aa671761d79bbf2edd9caf0c3ea6c44d90f4b6ea WHIRLPOOL f3d990385b1635d44104f275909803cd08795dd309c183826437be0ab796ca13afca874a6c716d5248facb64d4daae088bd5e558b2da5c6c70432069dc034381
diff --git a/app-shells/scsh/files/0.6.6-Makefile.in-doc-dir-gentoo.patch b/app-shells/scsh/files/0.6.6-Makefile.in-doc-dir-gentoo.patch
new file mode 100644
index 00000000000..28f0f17c014
--- /dev/null
+++ b/app-shells/scsh/files/0.6.6-Makefile.in-doc-dir-gentoo.patch
@@ -0,0 +1,93 @@
+--- Makefile.in.orig 2004-09-24 01:43:55.743685848 +0200
++++ Makefile.in 2004-09-24 01:43:55.745685544 +0200
+@@ -33,7 +33,7 @@
+ host = @host@
+ ### End of `configure' section###
+
+-htmldir = $(libdir)/scsh/doc/scsh-manual/html
++htmldir = /usr/share/doc/scsh-0.6.6/scsh-manual/html
+
+ # HP 9000 series, if you don't have gcc
+ # CC = cc
+@@ -358,38 +358,38 @@
+ done
+
+ inst-doc:
+- for f in $(srcdir)/doc/*.txt $(srcdir)/doc/*.ps; do \
+- $(INSTALL_DATA) $$f $(DESTDIR)$(LIB)/doc/; \
++ for f in $(srcdir)/doc/*.txt $(srcdir)/doc/*.ps; do \
++ $(INSTALL_DATA) $$f $(DESTDIR)/usr/share/doc/scsh-0.6.6/; \
+ done && \
+ for f in $(srcdir)/doc/src/*.tex \
+ $(srcdir)/doc/src/*.dvi \
+ $(srcdir)/doc/src/*.ps; \
+- do $(INSTALL_DATA) $$f $(DESTDIR)$(LIB)/doc/s48-manual/; \
++ do $(INSTALL_DATA) $$f $(DESTDIR)/usr/share/doc/scsh-0.6.6/s48-manual/;\
+ done && \
+ for f in $(srcdir)/doc/src/manual/*.html; \
+- do $(INSTALL_DATA) $$f $(DESTDIR)$(LIB)/doc/s48-manual/html/; \
++ do $(INSTALL_DATA) $$f $(DESTDIR)/usr/share/doc/scsh-0.6.6/s48-manual/html/;\
+ done && \
+ for f in $(srcdir)/doc/scsh-manual/*.tex \
+ $(srcdir)/doc/scsh-manual/*.sty \
+ $(srcdir)/doc/scsh-manual/*.dvi \
+ $(srcdir)/doc/scsh-manual/*.ps \
+ $(srcdir)/doc/scsh-manual/*.pdf; \
+- do $(INSTALL_DATA) $$f $(DESTDIR)$(LIB)/doc/scsh-manual/; \
++ do $(INSTALL_DATA) $$f $(DESTDIR)/usr/share/doc/scsh-0.6.6/scsh-manual/;\
+ done && \
+ for f in $(srcdir)/doc/scsh-manual/html/*.html \
+ $(srcdir)/doc/scsh-manual/html/*.gif \
+ $(srcdir)/doc/scsh-manual/html/*.css; \
+- do $(INSTALL_DATA) $$f $(DESTDIR)$(htmldir)/; \
++ do $(INSTALL_DATA) $$f $(DESTDIR)$(htmldir)/; \
+ done && \
+ for f in $(srcdir)/doc/scsh-paper/*.tex \
+ $(srcdir)/doc/scsh-paper/*.sty \
+ $(srcdir)/doc/scsh-paper/*.dvi \
+ $(srcdir)/doc/scsh-paper/*.ps; \
+- do $(INSTALL_DATA) $$f $(DESTDIR)$(LIB)/doc/scsh-paper/; \
++ do $(INSTALL_DATA) $$f $(DESTDIR)/usr/share/doc/scsh-0.6.6/scsh-paper/; \
+ done && \
+ for f in $(srcdir)/doc/scsh-paper/html/*.html \
+ $(srcdir)/doc/scsh-paper/html/*.css; \
+- do $(INSTALL_DATA) $$f $(DESTDIR)$(LIB)/doc/scsh-paper/html; \
++ do $(INSTALL_DATA) $$f $(DESTDIR)/usr/share/doc/scsh-0.6.6/scsh-paper/html/;\
+ done
+
+
+@@ -412,19 +412,21 @@
+ chmod +x $@
+
+ dirs:
+- for dir in $(libdir) $(bindir) $(incdir) $(LIB) $(mandir) $(htmldir); do\
+- { mkdir -p $(DESTDIR)$$dir && [ -w $(DESTDIR)$$dir ]; } || { \
+- echo "$(DESTDIR)$$dir not a writable directory" >&2; \
+- exit 1; \
+- } \
+- done && \
+- for dir in \
+- rts env big opt misc link srfi scsh doc/scsh-manual \
+- doc/s48-manual/html doc/scsh-paper/html cig; do \
+- { mkdir -p $(DESTDIR)$(LIB)/$$dir && [ -w $(DESTDIR)$(LIB)/$$dir ]; } || { \
+- echo "$(DESTDIR)$(LIB)/$$dir not a writable directory" >&2; \
+- exit 1; \
+- }; \
++ for dir in $(libdir) $(bindir) $(incdir) $(LIB) $(mandir) $(htmldir); \
++ do \
++ { mkdir -p $(DESTDIR)$$dir && [ -w $(DESTDIR)$$dir ]; } \
++ || { echo "$(DESTDIR)$$dir not a writable directory" >&2; exit 1; }; \
++ done && \
++ for dir in rts env big opt misc link srfi scsh; \
++ do \
++ { mkdir -p $(DESTDIR)$(LIB)/$$dir && [ -w $(DESTDIR)$(LIB)/$$dir ];} \
++ || { echo "$(DESTDIR)$(LIB)/$$dir not a writable directory" >&2; exit 1;};\
++ done && \
++ for dir in \
++ scsh-manual/html s48-manual/html scsh-paper/html cig; do \
++ { mkdir -p $(DESTDIR)/usr/share/doc/scsh-0.6.6/$$dir; } \
++ || { echo "mkdir -p $(DESTDIR)/usr/share/doc/scsh-0.6.6/$$dir failed" >&2;\
++ exit 1;}; \
+ done
+
+ configure: configure.in
diff --git a/app-shells/scsh/files/0.6.7-Makefile.in-LDFLAGS.patch b/app-shells/scsh/files/0.6.7-Makefile.in-LDFLAGS.patch
new file mode 100644
index 00000000000..b1c6480885d
--- /dev/null
+++ b/app-shells/scsh/files/0.6.7-Makefile.in-LDFLAGS.patch
@@ -0,0 +1,11 @@
+--- Makefile.in.orig 2010-08-11 16:55:09.246939884 +0200
++++ Makefile.in 2010-08-11 16:55:31.309819842 +0200
+@@ -853,7 +853,7 @@
+ cig/libcig.c: cig/libcig.scm
+
+ scsh/scsh: scsh/scsh-tramp.c
+- $(CC) -o $@ $(CPPFLAGS) $(CFLAGS) \
++ $(CC) -o $@ $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) \
+ -DVM=\"$(LIB)/$(VM)\" \
+ -DIMAGE=\"$(LIB)/scsh.image\" \
+ $(srcdir)/scsh/scsh-tramp.c
diff --git a/app-shells/scsh/files/0.6.7-Makefile.in-doc-dir-gentoo.patch b/app-shells/scsh/files/0.6.7-Makefile.in-doc-dir-gentoo.patch
new file mode 100644
index 00000000000..6ec949bb115
--- /dev/null
+++ b/app-shells/scsh/files/0.6.7-Makefile.in-doc-dir-gentoo.patch
@@ -0,0 +1,93 @@
+--- Makefile.in.orig 2004-09-24 01:43:55.743685848 +0200
++++ Makefile.in 2004-09-24 01:43:55.745685544 +0200
+@@ -33,7 +33,7 @@
+ host = @host@
+ ### End of `configure' section###
+
+-htmldir = $(libdir)/scsh/doc/scsh-manual/html
++htmldir = /usr/share/doc/scsh-0.6.7/scsh-manual/html
+
+ # HP 9000 series, if you don't have gcc
+ # CC = cc
+@@ -358,38 +358,38 @@
+ done
+
+ inst-doc:
+- for f in $(srcdir)/doc/*.txt $(srcdir)/doc/*.ps; do \
+- $(INSTALL_DATA) $$f $(DESTDIR)$(LIB)/doc/; \
++ for f in $(srcdir)/doc/*.txt $(srcdir)/doc/*.ps; do \
++ $(INSTALL_DATA) $$f $(DESTDIR)/usr/share/doc/scsh-0.6.7/; \
+ done && \
+ for f in $(srcdir)/doc/src/*.tex \
+ $(srcdir)/doc/src/*.dvi \
+ $(srcdir)/doc/src/*.ps; \
+- do $(INSTALL_DATA) $$f $(DESTDIR)$(LIB)/doc/s48-manual/; \
++ do $(INSTALL_DATA) $$f $(DESTDIR)/usr/share/doc/scsh-0.6.7/s48-manual/;\
+ done && \
+ for f in $(srcdir)/doc/src/manual/*.html; \
+- do $(INSTALL_DATA) $$f $(DESTDIR)$(LIB)/doc/s48-manual/html/; \
++ do $(INSTALL_DATA) $$f $(DESTDIR)/usr/share/doc/scsh-0.6.7/s48-manual/html/;\
+ done && \
+ for f in $(srcdir)/doc/scsh-manual/*.tex \
+ $(srcdir)/doc/scsh-manual/*.sty \
+ $(srcdir)/doc/scsh-manual/*.dvi \
+ $(srcdir)/doc/scsh-manual/*.ps \
+ $(srcdir)/doc/scsh-manual/*.pdf; \
+- do $(INSTALL_DATA) $$f $(DESTDIR)$(LIB)/doc/scsh-manual/; \
++ do $(INSTALL_DATA) $$f $(DESTDIR)/usr/share/doc/scsh-0.6.7/scsh-manual/;\
+ done && \
+ for f in $(srcdir)/doc/scsh-manual/html/*.html \
+ $(srcdir)/doc/scsh-manual/html/*.gif \
+ $(srcdir)/doc/scsh-manual/html/*.css; \
+- do $(INSTALL_DATA) $$f $(DESTDIR)$(htmldir)/; \
++ do $(INSTALL_DATA) $$f $(DESTDIR)$(htmldir)/; \
+ done && \
+ for f in $(srcdir)/doc/scsh-paper/*.tex \
+ $(srcdir)/doc/scsh-paper/*.sty \
+ $(srcdir)/doc/scsh-paper/*.dvi \
+ $(srcdir)/doc/scsh-paper/*.ps; \
+- do $(INSTALL_DATA) $$f $(DESTDIR)$(LIB)/doc/scsh-paper/; \
++ do $(INSTALL_DATA) $$f $(DESTDIR)/usr/share/doc/scsh-0.6.7/scsh-paper/; \
+ done && \
+ for f in $(srcdir)/doc/scsh-paper/html/*.html \
+ $(srcdir)/doc/scsh-paper/html/*.css; \
+- do $(INSTALL_DATA) $$f $(DESTDIR)$(LIB)/doc/scsh-paper/html; \
++ do $(INSTALL_DATA) $$f $(DESTDIR)/usr/share/doc/scsh-0.6.7/scsh-paper/html/;\
+ done
+
+
+@@ -412,19 +412,21 @@
+ chmod +x $@
+
+ dirs:
+- for dir in $(libdir) $(bindir) $(incdir) $(LIB) $(mandir) $(htmldir); do\
+- { mkdir -p $(DESTDIR)$$dir && [ -w $(DESTDIR)$$dir ]; } || { \
+- echo "$(DESTDIR)$$dir not a writable directory" >&2; \
+- exit 1; \
+- } \
+- done && \
+- for dir in \
+- rts env big opt misc link srfi scsh doc/scsh-manual \
+- doc/s48-manual/html doc/scsh-paper/html cig; do \
+- { mkdir -p $(DESTDIR)$(LIB)/$$dir && [ -w $(DESTDIR)$(LIB)/$$dir ]; } || { \
+- echo "$(DESTDIR)$(LIB)/$$dir not a writable directory" >&2; \
+- exit 1; \
+- }; \
++ for dir in $(libdir) $(bindir) $(incdir) $(LIB) $(mandir) $(htmldir); \
++ do \
++ { mkdir -p $(DESTDIR)$$dir && [ -w $(DESTDIR)$$dir ]; } \
++ || { echo "$(DESTDIR)$$dir not a writable directory" >&2; exit 1; }; \
++ done && \
++ for dir in rts env big opt misc link srfi scsh; \
++ do \
++ { mkdir -p $(DESTDIR)$(LIB)/$$dir && [ -w $(DESTDIR)$(LIB)/$$dir ];} \
++ || { echo "$(DESTDIR)$(LIB)/$$dir not a writable directory" >&2; exit 1;};\
++ done && \
++ for dir in \
++ scsh-manual/html s48-manual/html scsh-paper/html cig; do \
++ { mkdir -p $(DESTDIR)/usr/share/doc/scsh-0.6.7/$$dir; } \
++ || { echo "mkdir -p $(DESTDIR)/usr/share/doc/scsh-0.6.7/$$dir failed" >&2;\
++ exit 1;}; \
+ done
+
+ configure: configure.in
diff --git a/app-shells/scsh/files/0.6.7-Missing-includes.patch b/app-shells/scsh/files/0.6.7-Missing-includes.patch
new file mode 100644
index 00000000000..33bb5529d25
--- /dev/null
+++ b/app-shells/scsh/files/0.6.7-Missing-includes.patch
@@ -0,0 +1,22 @@
+diff -r 3dd93fcbca44 c/unix/dynamo.c
+--- a/c/unix/dynamo.c Wed Aug 11 17:02:46 2010 +0200
++++ b/c/unix/dynamo.c Wed Aug 11 17:04:34 2010 +0200
+@@ -5,6 +5,7 @@
+
+ #include <stdlib.h>
+ #include <unistd.h>
++#include <string.h>
+ #include "sysdep.h"
+ #include "scheme48.h"
+
+diff -r 3dd93fcbca44 c/unix/socket.c
+--- a/c/unix/socket.c Wed Aug 11 17:02:46 2010 +0200
++++ b/c/unix/socket.c Wed Aug 11 17:04:34 2010 +0200
+@@ -8,6 +8,7 @@
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <sys/param.h>
++#include <malloc.h>
+ #include <errno.h>
+ #include <fcntl.h>
+ #include <netdb.h>
diff --git a/app-shells/scsh/metadata.xml b/app-shells/scsh/metadata.xml
new file mode 100644
index 00000000000..6b82e4519c9
--- /dev/null
+++ b/app-shells/scsh/metadata.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>scheme</herd>
+<longdescription>
+Scsh has two main components: a process notation for running programs
+and setting up pipelines and redirections, and a complete syscall
+library for low-level access to the operating system, i.e. to POSIX,
+the least common denominator of more or less all Unices, plus widely
+supported extensions such as symbolic links and BSD sockets.
+
+Moreover, scsh provides an awk facility for pattern-directed
+computation over streams of records, a rich facility for matching
+regular-expression patterns in strings, event-based interrupt
+handling, user-level threads, a futuristic module system, and an
+interactive environment.
+
+Scsh comes with extensive documentation describing these and other
+features.
+</longdescription>
+<!--
+<use>
+ <flag name='scsh'>Use a non-FHS directory layout</flag>
+</use>
+-->
+</pkgmetadata>
diff --git a/app-shells/scsh/scsh-0.6.7-r1.ebuild b/app-shells/scsh/scsh-0.6.7-r1.ebuild
new file mode 100644
index 00000000000..8c9ae2d811f
--- /dev/null
+++ b/app-shells/scsh/scsh-0.6.7-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils multilib
+
+MY_PV="${PV%*.*}"
+
+DESCRIPTION="Unix shell embedded in Scheme"
+HOMEPAGE="http://www.scsh.net/"
+SRC_URI="ftp://ftp.scsh.net/pub/scsh/${MY_PV}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86"
+IUSE=""
+
+DEPEND="!dev-scheme/scheme48"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PV}-Makefile.in-doc-dir-gentoo.patch"
+ epatch "${FILESDIR}/${PV}-Makefile.in-LDFLAGS.patch"
+ epatch "${FILESDIR}/${PV}-Missing-includes.patch"
+}
+
+src_configure() {
+ use amd64 && multilib_toolchain_setup x86
+ SCSH_LIB_DIRS="/usr/$(get_libdir)/${PN}"
+ econf \
+ --libdir=/usr/$(get_libdir) \
+ --includedir=/usr/include \
+ --with-lib-dirs-list=${SCSH_LIB_DIRS}
+}
+
+src_install() {
+ emake -j1 DESTDIR="${D}" install || die "make install failed."
+
+ local ENVD="${T}/50scsh"
+ echo "SCSH_LIB_DIRS=\"${SCSH_LIB_DIRS}\"" > "${ENVD}"
+ doenvd "${ENVD}"
+}
diff --git a/app-shells/scsh/scsh-0.6.7.ebuild b/app-shells/scsh/scsh-0.6.7.ebuild
new file mode 100644
index 00000000000..a15f5ff282a
--- /dev/null
+++ b/app-shells/scsh/scsh-0.6.7.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils multilib
+
+MY_PV="${PV%*.*}"
+
+DESCRIPTION="Unix shell embedded in Scheme"
+HOMEPAGE="http://www.scsh.net/"
+SRC_URI="ftp://ftp.scsh.net/pub/scsh/${MY_PV}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ppc sparc x86"
+IUSE=""
+
+DEPEND="!dev-scheme/scheme48"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PV}-Makefile.in-doc-dir-gentoo.patch"
+}
+
+src_configure() {
+ use amd64 && multilib_toolchain_setup x86
+ SCSH_LIB_DIRS="/usr/$(get_libdir)/${PN}"
+ econf \
+ --libdir=/usr/$(get_libdir) \
+ --includedir=/usr/include \
+ --with-lib-dirs-list=${SCSH_LIB_DIRS}
+}
+
+src_install() {
+ emake -j1 DESTDIR="${D}" install || die "make install failed."
+
+ local ENVD="${T}/50scsh"
+ echo "SCSH_LIB_DIRS=\"${SCSH_LIB_DIRS}\"" > "${ENVD}"
+ doenvd "${ENVD}"
+}
diff --git a/app-shells/shish/Manifest b/app-shells/shish/Manifest
new file mode 100644
index 00000000000..9f851e6ff0c
--- /dev/null
+++ b/app-shells/shish/Manifest
@@ -0,0 +1 @@
+DIST shish-0.7-pre3.tar.bz2 189207 SHA256 6f50054485675f710b80bbee7e847c14c51ff495d1308ab69e647eb01d53bab1 SHA512 b8269394a3b2a06d1ab48224b81c041ffa4b0a08d6849fc8081fad38aad34e179c12198a1b8e94703cf17e029f88068af87ffd2ef4051ff8e24886fa96b39c98 WHIRLPOOL b9d398b0ab513a3edc8cb7b7b1ccadd3dcb699eed20919f3db356e16b9cf07cba70eeb508c27b8432b4277ab1191bc7f8e2e635cf5127b2433d03930d9497659
diff --git a/app-shells/shish/metadata.xml b/app-shells/shish/metadata.xml
new file mode 100644
index 00000000000..b5686075799
--- /dev/null
+++ b/app-shells/shish/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+</maintainer>
+<use>
+ <flag name='diet'>Use <pkg>dev-libs/dietlibc</pkg></flag>
+</use>
+</pkgmetadata>
diff --git a/app-shells/shish/shish-0.7_pre3-r1.ebuild b/app-shells/shish/shish-0.7_pre3-r1.ebuild
new file mode 100644
index 00000000000..89e2c582668
--- /dev/null
+++ b/app-shells/shish/shish-0.7_pre3-r1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit toolchain-funcs
+
+MY_PV="${PV/_/-}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="The diet shell"
+HOMEPAGE="http://www.blah.ch/shish/"
+SRC_URI="http://www.blah.ch/${PN}/pkg/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86"
+IUSE="debug diet"
+
+DEPEND="diet? ( dev-libs/dietlibc )"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+DOCS=( AUTHORS BUGS ChangeLog README TODO )
+
+pkg_setup() {
+ use diet && export CC="diet $(tc-getCC) -nostdinc"
+}
+
+src_prepare() {
+ # Respect CFLAGS, bug #439974
+ sed -i \
+ -e '/CFLAGS="$CFLAGS/d' \
+ -e '/-fexpensive-optimizations -fomit-frame-pointer/d' \
+ configure || die 'sed on configure failed'
+}
+
+src_configure() {
+ econf \
+ $(use_enable debug) \
+ --disable-quiet # bug 439974
+}
+
+src_compile() {
+ # parallel make is b0rked
+ emake -j1
+}
+
+src_install() {
+ default
+ doman doc/man/shish.1
+}
+
+pkg_postinst() {
+ einfo "Updating ${ROOT}etc/shells"
+ ( grep -v "^/bin/shish$" "${ROOT}"etc/shells; echo "/bin/shish" ) > "${T}"/shells
+ mv -f "${T}"/shells "${ROOT}"etc/shells
+}
diff --git a/app-shells/smrsh/Manifest b/app-shells/smrsh/Manifest
new file mode 100644
index 00000000000..18e05be9962
--- /dev/null
+++ b/app-shells/smrsh/Manifest
@@ -0,0 +1,5 @@
+DIST sendmail.8.14.5.tar.gz 2092508 SHA256 fb65a86a0f87f12aefb933ee8990540f7a680a594f7fedfdd28918f3934bfb88 SHA512 178addd247f1c7c8ca90d70b9240db4cad4e55f0710d5df0fe979e5473a182d2035150c352836576a28bb2b9660b0d5ebfcd95269a156ac0d2c3dba3edb60452 WHIRLPOOL 2e073759a44d535629d9cce91da4a7082e085defeb9491a4470a8a8c8b18e1545129527c0138a74edb405a9c9724e5a597ee99c7852a423696c495ad8fef783f
+DIST sendmail.8.14.6.tar.gz 2104299 SHA256 4ecbaeb2fec8829cd2852acbd8aca66a1383c1237e8401b2fa5377ee3b6d80cd SHA512 012fc396723a97ea5ad95e8b3ea6a3a40aeb97b85ed8af20ae9486729abe149e85cef4a8a16f763ae3d772a41547066434f97b25055e37590a768efa0c9c3757 WHIRLPOOL 271a09a49ab27e99365f171c617738b35a05949aeea8e6941caad712d75c0a3881da6e5528f0ca2900853a224d54db51800d1797ca80cfe7c9716a1283ff2a4d
+DIST sendmail.8.14.7.tar.gz 2112670 SHA256 fa4ff9e67d1e5a42f353eedb207e08b38c0ac31030f7165866de2c520f508710 SHA512 872fef1be984ae8aecdf4299459de50fea86a3b3758e0aac01ea4307fa936a03e66d3ef8d1352cd21afe588b53b04a1cea6e099ba64a5edab5a31e25fb8e0bd3 WHIRLPOOL 82d7b85a130900bd18e43df182850c1fd589caa21e90c055592ebd89e9da6a6dfa35b2baed87b56ca7772b24bb8567266cfad7352167068aad405e3fcfe9202e
+DIST sendmail.8.14.8.tar.gz 2114959 SHA256 02eb69125fc19890fa922496a5230ebb32faedc8da670d8500a8ff37e4fcb0fe SHA512 16cda9ff2af325e661d2be0008bed27e170cfe75aeab2b0a56e5579046309509bed4415494dbfb831cc723ab3ffab03dcef2748c16bb0b8f7fe9b4891467b425 WHIRLPOOL 5916e9667ee0df144d8b8c84e2c0a0a38a197b90e53c4ca02fe13d6e44e9bbf8987fcb036c42a1d43f7ab75a7cd8b68f746d5b90af727ca3788a047bd40eac0a
+DIST sendmail.8.14.9.tar.gz 2114293 SHA256 f5a497151abd8f341cca0736c3f9bd703d574d93146b2989689dff6d7a445d75 SHA512 a541fe687e9967fb87f2f6c6263ecc698aac42c6a52e81e7ee556f0c3d719b9c996dfccf10cc2e0e5c6d03dd8d3ce79b856b78ca049dd47665e38c77763fa424 WHIRLPOOL c1b290d66d9397bbe8041cd17cfc1fbc205c9d5439d89ee59c339e3febe605d964e7a50482101edec8f0b9cd6df38138e489869a5404dbfc2b7ba57dbeef1c55
diff --git a/app-shells/smrsh/files/site.config.m4 b/app-shells/smrsh/files/site.config.m4
new file mode 100644
index 00000000000..3ce1c7248c8
--- /dev/null
+++ b/app-shells/smrsh/files/site.config.m4
@@ -0,0 +1,13 @@
+define(`confCCOPTS', `@@confCCOPTS@@')
+define(`confSTDIO_TYPE', `portable')
+define(`confENVDEF', `-DXDEBUG=0')
+define(`confLDOPTS', `-s')
+define(`confMANOWN', `root')
+define(`confMANGRP', `root')
+define(`confMANMODE', `644')
+define(`confMAN1SRC', `1')
+define(`confMAN5SRC', `5')
+define(`confMAN8SRC', `8')
+define(`confLDOPTS_SO', `-shared -Wl')
+APPENDDEF(`conf_smrsh_ENVDEF', `-DSMRSH_PATH=\"/bin:/usr/bin\"')
+APPENDDEF(`conf_smrsh_ENVDEF', `-DSMRSH_CMDDIR=\"/var/lib/smrsh\"')
diff --git a/app-shells/smrsh/files/smrsh-8.14.5-site.config.m4 b/app-shells/smrsh/files/smrsh-8.14.5-site.config.m4
new file mode 100644
index 00000000000..24ef462ba2e
--- /dev/null
+++ b/app-shells/smrsh/files/smrsh-8.14.5-site.config.m4
@@ -0,0 +1,14 @@
+define(`confCCOPTS', `@@confCCOPTS@@')
+define(`confSTDIO_TYPE', `portable')
+define(`confENVDEF', `-DXDEBUG=0')
+define(`confLDOPTS', `@@confLDOPTS@@')
+define(`confMANOWN', `root')
+define(`confMANGRP', `root')
+define(`confMANMODE', `644')
+define(`confMAN1SRC', `1')
+define(`confMAN5SRC', `5')
+define(`confMAN8SRC', `8')
+define(`confLDOPTS_SO', `@@confLDOPTS@@')
+define(`confCC', `@@confCC@@')
+APPENDDEF(`conf_smrsh_ENVDEF', `-DSMRSH_PATH=\"/bin:/usr/bin\"')
+APPENDDEF(`conf_smrsh_ENVDEF', `-DSMRSH_CMDDIR=\"/var/lib/smrsh\"')
diff --git a/app-shells/smrsh/metadata.xml b/app-shells/smrsh/metadata.xml
new file mode 100644
index 00000000000..51f94e3fbe0
--- /dev/null
+++ b/app-shells/smrsh/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>net-mail</herd>
+</pkgmetadata>
diff --git a/app-shells/smrsh/smrsh-8.14.5.ebuild b/app-shells/smrsh/smrsh-8.14.5.ebuild
new file mode 100644
index 00000000000..da34e28154c
--- /dev/null
+++ b/app-shells/smrsh/smrsh-8.14.5.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit toolchain-funcs
+
+DESCRIPTION="Sendmail restricted shell, for use with MTAs other than Sendmail"
+HOMEPAGE="http://www.sendmail.org/"
+SRC_URI="ftp://ftp.sendmail.org/pub/sendmail/sendmail.${PV}.tar.gz"
+
+LICENSE="Sendmail"
+SLOT="0"
+KEYWORDS="~amd64 x86"
+IUSE=""
+
+DEPEND="sys-devel/m4
+ >=sys-apps/sed-4"
+RDEPEND="${DEPEND}
+ !mail-mta/sendmail"
+
+S="${WORKDIR}/sendmail-${PV}"
+
+src_prepare() {
+ cd "${S}/${PN}"
+ sed -e "s:/usr/libexec:/usr/sbin:g" \
+ -e "s:/usr/adm/sm.bin:/var/lib/smrsh:g" \
+ -i README -i smrsh.8 || die "sed failed"
+
+ sed -e "s:@@confCCOPTS@@:${CFLAGS}:" \
+ -e "s:@@confLDOPTS@@:${LDFLAGS}:" \
+ -e "s:@@confCC@@:$(tc-getCC):" "${FILESDIR}/${P}-site.config.m4" \
+ > "${S}/devtools/Site/site.config.m4" || die "sed failed"
+}
+
+src_compile() {
+ cd "${S}/${PN}"
+ /bin/sh Build
+}
+
+src_install() {
+ dosbin "${S}/obj.$(uname -s).$(uname -r).$(arch)/${PN}/${PN}" || die
+
+ cd "${S}/${PN}"
+ doman smrsh.8 || die
+ dodoc README || die
+
+ keepdir /var/lib/smrsh
+}
+
+pkg_postinst() {
+ elog "smrsh is compiled to look for programs in /var/lib/smrsh."
+ echo
+}
diff --git a/app-shells/smrsh/smrsh-8.14.6.ebuild b/app-shells/smrsh/smrsh-8.14.6.ebuild
new file mode 100644
index 00000000000..c54a0d87717
--- /dev/null
+++ b/app-shells/smrsh/smrsh-8.14.6.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit toolchain-funcs
+
+DESCRIPTION="Sendmail restricted shell, for use with MTAs other than Sendmail"
+HOMEPAGE="http://www.sendmail.org/"
+SRC_URI="ftp://ftp.sendmail.org/pub/sendmail/sendmail.${PV}.tar.gz"
+
+LICENSE="Sendmail"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="sys-devel/m4
+ >=sys-apps/sed-4"
+RDEPEND="${DEPEND}
+ !mail-mta/sendmail"
+
+S="${WORKDIR}/sendmail-${PV}"
+
+src_prepare() {
+ cd "${S}/${PN}"
+ sed -e "s:/usr/libexec:/usr/sbin:g" \
+ -e "s:/usr/adm/sm.bin:/var/lib/smrsh:g" \
+ -i README -i smrsh.8 || die "sed failed"
+
+ sed -e "s:@@confCCOPTS@@:${CFLAGS}:" \
+ -e "s:@@confLDOPTS@@:${LDFLAGS}:" \
+ -e "s:@@confCC@@:$(tc-getCC):" "${FILESDIR}/${PN}-8.14.5-site.config.m4" \
+ > "${S}/devtools/Site/site.config.m4" || die "sed failed"
+}
+
+src_compile() {
+ cd "${S}/${PN}"
+ /bin/sh Build
+}
+
+src_install() {
+ dosbin "${S}/obj.$(uname -s).$(uname -r).$(arch)/${PN}/${PN}" || die
+
+ cd "${S}/${PN}"
+ doman smrsh.8 || die
+ dodoc README || die
+
+ keepdir /var/lib/smrsh
+}
+
+pkg_postinst() {
+ elog "smrsh is compiled to look for programs in /var/lib/smrsh."
+ echo
+}
diff --git a/app-shells/smrsh/smrsh-8.14.7.ebuild b/app-shells/smrsh/smrsh-8.14.7.ebuild
new file mode 100644
index 00000000000..a5f18bd2d01
--- /dev/null
+++ b/app-shells/smrsh/smrsh-8.14.7.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit toolchain-funcs
+
+DESCRIPTION="Sendmail restricted shell, for use with MTAs other than Sendmail"
+HOMEPAGE="http://www.sendmail.org/"
+SRC_URI="ftp://ftp.sendmail.org/pub/sendmail/sendmail.${PV}.tar.gz"
+
+LICENSE="Sendmail"
+SLOT="0"
+KEYWORDS="~amd64 x86"
+IUSE=""
+
+DEPEND="sys-devel/m4
+ >=sys-apps/sed-4"
+RDEPEND="${DEPEND}
+ !mail-mta/sendmail"
+
+S="${WORKDIR}/sendmail-${PV}"
+
+src_prepare() {
+ cd "${S}/${PN}"
+ sed -e "s:/usr/libexec:/usr/sbin:g" \
+ -e "s:/usr/adm/sm.bin:/var/lib/smrsh:g" \
+ -i README -i smrsh.8 || die "sed failed"
+
+ sed -e "s:@@confCCOPTS@@:${CFLAGS}:" \
+ -e "s:@@confLDOPTS@@:${LDFLAGS}:" \
+ -e "s:@@confCC@@:$(tc-getCC):" "${FILESDIR}/${PN}-8.14.5-site.config.m4" \
+ > "${S}/devtools/Site/site.config.m4" || die "sed failed"
+}
+
+src_compile() {
+ cd "${S}/${PN}"
+ /bin/sh Build
+}
+
+src_install() {
+ dosbin "${S}/obj.$(uname -s).$(uname -r).$(arch)/${PN}/${PN}" || die
+
+ cd "${S}/${PN}"
+ doman smrsh.8 || die
+ dodoc README || die
+
+ keepdir /var/lib/smrsh
+}
+
+pkg_postinst() {
+ elog "smrsh is compiled to look for programs in /var/lib/smrsh."
+ echo
+}
diff --git a/app-shells/smrsh/smrsh-8.14.8.ebuild b/app-shells/smrsh/smrsh-8.14.8.ebuild
new file mode 100644
index 00000000000..13edae9dcf8
--- /dev/null
+++ b/app-shells/smrsh/smrsh-8.14.8.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit toolchain-funcs
+
+DESCRIPTION="Sendmail restricted shell, for use with MTAs other than Sendmail"
+HOMEPAGE="http://www.sendmail.org/"
+SRC_URI="ftp://ftp.sendmail.org/pub/sendmail/sendmail.${PV}.tar.gz"
+
+LICENSE="Sendmail"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="sys-devel/m4
+ >=sys-apps/sed-4"
+RDEPEND="${DEPEND}
+ !mail-mta/sendmail"
+
+S="${WORKDIR}/sendmail-${PV}"
+
+src_prepare() {
+ cd "${S}/${PN}"
+ sed -e "s:/usr/libexec:/usr/sbin:g" \
+ -e "s:/usr/adm/sm.bin:/var/lib/smrsh:g" \
+ -i README -i smrsh.8 || die "sed failed"
+
+ sed -e "s:@@confCCOPTS@@:${CFLAGS}:" \
+ -e "s:@@confLDOPTS@@:${LDFLAGS}:" \
+ -e "s:@@confCC@@:$(tc-getCC):" "${FILESDIR}/${PN}-8.14.5-site.config.m4" \
+ > "${S}/devtools/Site/site.config.m4" || die "sed failed"
+}
+
+src_compile() {
+ cd "${S}/${PN}"
+ /bin/sh Build
+}
+
+src_install() {
+ dosbin "${S}/obj.$(uname -s).$(uname -r).$(arch)/${PN}/${PN}" || die
+
+ cd "${S}/${PN}"
+ doman smrsh.8 || die
+ dodoc README || die
+
+ keepdir /var/lib/smrsh
+}
+
+pkg_postinst() {
+ elog "smrsh is compiled to look for programs in /var/lib/smrsh."
+ echo
+}
diff --git a/app-shells/smrsh/smrsh-8.14.9.ebuild b/app-shells/smrsh/smrsh-8.14.9.ebuild
new file mode 100644
index 00000000000..13edae9dcf8
--- /dev/null
+++ b/app-shells/smrsh/smrsh-8.14.9.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit toolchain-funcs
+
+DESCRIPTION="Sendmail restricted shell, for use with MTAs other than Sendmail"
+HOMEPAGE="http://www.sendmail.org/"
+SRC_URI="ftp://ftp.sendmail.org/pub/sendmail/sendmail.${PV}.tar.gz"
+
+LICENSE="Sendmail"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="sys-devel/m4
+ >=sys-apps/sed-4"
+RDEPEND="${DEPEND}
+ !mail-mta/sendmail"
+
+S="${WORKDIR}/sendmail-${PV}"
+
+src_prepare() {
+ cd "${S}/${PN}"
+ sed -e "s:/usr/libexec:/usr/sbin:g" \
+ -e "s:/usr/adm/sm.bin:/var/lib/smrsh:g" \
+ -i README -i smrsh.8 || die "sed failed"
+
+ sed -e "s:@@confCCOPTS@@:${CFLAGS}:" \
+ -e "s:@@confLDOPTS@@:${LDFLAGS}:" \
+ -e "s:@@confCC@@:$(tc-getCC):" "${FILESDIR}/${PN}-8.14.5-site.config.m4" \
+ > "${S}/devtools/Site/site.config.m4" || die "sed failed"
+}
+
+src_compile() {
+ cd "${S}/${PN}"
+ /bin/sh Build
+}
+
+src_install() {
+ dosbin "${S}/obj.$(uname -s).$(uname -r).$(arch)/${PN}/${PN}" || die
+
+ cd "${S}/${PN}"
+ doman smrsh.8 || die
+ dodoc README || die
+
+ keepdir /var/lib/smrsh
+}
+
+pkg_postinst() {
+ elog "smrsh is compiled to look for programs in /var/lib/smrsh."
+ echo
+}
diff --git a/app-shells/soapbox/Manifest b/app-shells/soapbox/Manifest
new file mode 100644
index 00000000000..0ddb50b4755
--- /dev/null
+++ b/app-shells/soapbox/Manifest
@@ -0,0 +1 @@
+DIST soapbox-0.3.1.tar.bz2 19947 SHA256 fdea8f2e9dc2bff885cfebf60ff95e23fd89442fdbc2cd3b10443c2b21b1f33c SHA512 c74420e6ea7e088347c897c275095fce5ecd093af9eb7f95ece4959d174fcc79e600704b6116ba9f36534fc8139dee70393db33ab22cd8f870cd77c449e2f430 WHIRLPOOL 4d33aac3682d9a483aae0ba43f6847a6e445fb7d915f9c3af9792222f7baeec12df07fb89aa7ba09120c7e9ad538cfbc10771d4d269ca1883ecaff862e2165d2
diff --git a/app-shells/soapbox/metadata.xml b/app-shells/soapbox/metadata.xml
new file mode 100644
index 00000000000..d9cd2cad66c
--- /dev/null
+++ b/app-shells/soapbox/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+<email>maintainer-needed@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/app-shells/soapbox/soapbox-0.3.1-r1.ebuild b/app-shells/soapbox/soapbox-0.3.1-r1.ebuild
new file mode 100644
index 00000000000..e136766df09
--- /dev/null
+++ b/app-shells/soapbox/soapbox-0.3.1-r1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit multilib toolchain-funcs
+
+DESCRIPTION="A preload (sandbox) library to restrict filesystem writes"
+HOMEPAGE="http://dag.wieers.com/home-made/soapbox/"
+SRC_URI="http://dag.wieers.com/home-made/soapbox/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ sed -i soapbox.sh \
+ -e "s|0.3.0|${PV}|g" \
+ -e "s:/lib:/usr/$(get_libdir):" \
+ || die "sed soapbox.sh"
+ sed -i Makefile \
+ -e 's|$(CFLAGS)|& $(LDFLAGS)|g' \
+ || die "sed Makefile"
+}
+
+src_compile() {
+ emake \
+ CC="$(tc-getCC)" \
+ LD="$(tc-getCC)" \
+ CFLAGS="${CFLAGS} -fPIC" \
+ LDFLAGS="${LDFLAGS}" \
+ || die "emake failed"
+}
+
+src_install() {
+ dolib.so libsoapbox.so || die "soapsox.so"
+ newbin soapbox.sh soapbox || die "soapbox"
+ dodoc AUTHORS BUGS ChangeLog README THANKS TODO
+}
diff --git a/app-shells/squirrelsh/Manifest b/app-shells/squirrelsh/Manifest
new file mode 100644
index 00000000000..6d76b7891f5
--- /dev/null
+++ b/app-shells/squirrelsh/Manifest
@@ -0,0 +1,3 @@
+DIST squirrelsh-1.2.3-src.tar.bz2 613935 SHA256 9fda1b90e157655839690383cf8856b69526df1a6e2345c4339f7b31dfe3efc6 SHA512 94de35e982736d5cc20fa1811a2d3dc89317e1850d862c4539030d152bd83028046256173c207efb9a52f195a75cae2ff1de33b0ab749dffd085f874c60779f4 WHIRLPOOL 1b83e2fc8948b9c799849c7f070cd97fa30a1954eda16ade32e5cba8c3b7824660faed515c4febd0c8c2240570a350e68f376cd8419279a3136946d00a03b729
+DIST squirrelsh-1.2.6-src.tar.bz2 651733 SHA256 ba8ce82853b3bf1610408242ed47f52e36471b95e42cbf75474c37478439ca3a SHA512 428f9640ab22b47245de9806950bd681cac6e5798df47f4820fe6c3897a0615203879dafc3a1feee86a83ba9249a85378f5074f7d6fc28533e418867dddfb492 WHIRLPOOL f5e07feb6b412ab69cbf543df7df1ec5e03cdc14b996e89d003bd4e8d6dcfd93a771893c886b09fc6c2fd5085fb4e92b4db4d9616cc73dc8414e862442966388
+DIST squirrelsh-1.2.7-src.tar.bz2 673462 SHA256 8c4745caf052b754d447dceee5a0bb529b13e9b02a6c48d004636f192a835b60 SHA512 7db82cad969ba209cae6b2d1c4cf76ba10acbf79c051f4340556ae81dc98d36dfb6f1f6993e9198e5a5254eaaab3fbaca3d01fc547c2f303572060b2093af78a WHIRLPOOL 148e324de890cfa82835f0c44ad286c5b3814a0b778816ee24b24d4ceae5e1ab5724d6c9d6205c602a63445f723ee452e0190d092b21a0bc5673911f1e52c274
diff --git a/app-shells/squirrelsh/files/squirrelsh-fix-in_LDFLAGS.patch b/app-shells/squirrelsh/files/squirrelsh-fix-in_LDFLAGS.patch
new file mode 100644
index 00000000000..71319c0cc7f
--- /dev/null
+++ b/app-shells/squirrelsh/files/squirrelsh-fix-in_LDFLAGS.patch
@@ -0,0 +1,12 @@
+diff -Naur squirrelsh-1.2.6.orig//configure squirrelsh-1.2.6/configure
+--- squirrelsh-1.2.6.orig//configure 2012-03-12 21:45:25.000000000 -0400
++++ squirrelsh-1.2.6/configure 2012-03-12 21:50:36.000000000 -0400
+@@ -1138,7 +1138,7 @@
+ in_INSTALL_EXE="$installer -c -m 0755 \"\$(target)\" \"$bindir/\$(target_name)\""
+
+ if [ "$with_pcre" = "local" ] || [ "$with_squirrel" = "local" ]; then
+- in_LDFLAGS="-L\"$source_dir/lib\""
++ in_LDFLAGS="$in_LDFLAGS -L\"$source_dir/lib\""
+ fi
+
+ if [ -n "$pkgconfig" ]; then
diff --git a/app-shells/squirrelsh/files/squirrelsh-no-docs.patch b/app-shells/squirrelsh/files/squirrelsh-no-docs.patch
new file mode 100644
index 00000000000..2ed4d0160bf
--- /dev/null
+++ b/app-shells/squirrelsh/files/squirrelsh-no-docs.patch
@@ -0,0 +1,25 @@
+diff -Naur squirrelsh-1.2.6.orig//Makefile.in squirrelsh-1.2.6/Makefile.in
+--- squirrelsh-1.2.6.orig//Makefile.in 2011-12-16 13:25:08.000000000 -0500
++++ squirrelsh-1.2.6/Makefile.in 2012-03-12 21:58:50.000000000 -0400
+@@ -19,14 +19,6 @@
+ @MAKE_PCRE@
+ @MAKE_SQUIRREL@
+ @MAKE_SHELL@
+- @INSTALL@ -d -m 0755 "@DOCDIR@"
+- @INSTALL@ -c -m 0644 COPYING "@DOCDIR@"
+- @INSTALL@ -c -m 0644 COPYING-squirrel "@DOCDIR@"
+- @INSTALL@ -c -m 0644 COPYING-zlib "@DOCDIR@"
+- @INSTALL@ -c -m 0644 HISTORY "@DOCDIR@"
+- @INSTALL@ -c -m 0644 README "@DOCDIR@"
+- @INSTALL@ -c -m 0644 doc/squirrel3.pdf "@DOCDIR@"
+- @INSTALL@ -c -m 0644 doc/squirrelsh.pdf "@DOCDIR@"
+ @INSTALL@ -d -m 0755 "@MANDIR@"
+ @INSTALL@ -c -m 0644 doc/squirrelsh.1 "@MANDIR@"
+ @INSTALL_MIME@
+@@ -35,6 +27,5 @@
+ @MAKE_PCRE@
+ @MAKE_SQUIRREL@
+ @MAKE_SHELL@
+- @RMDIR@ "@DOCDIR@"
+ @RM@ "@MANDIR@/squirrelsh.1"
+ @UNINSTALL_MIME@
diff --git a/app-shells/squirrelsh/files/squirrelsh-no-strip.patch b/app-shells/squirrelsh/files/squirrelsh-no-strip.patch
new file mode 100644
index 00000000000..cf0286c5c56
--- /dev/null
+++ b/app-shells/squirrelsh/files/squirrelsh-no-strip.patch
@@ -0,0 +1,19 @@
+diff -Naur squirrelsh-1.2.6.orig//configure squirrelsh-1.2.6/configure
+--- squirrelsh-1.2.6.orig//configure 2012-03-12 20:19:01.000000000 -0400
++++ squirrelsh-1.2.6/configure 2012-03-12 20:32:25.000000000 -0400
+@@ -1163,7 +1163,6 @@
+ [ -z "$CFLAGS" ] && in_CFLAGS="$in_CFLAGS -fomit-frame-pointer"
+ [ -z "$CXXFLAGS" ] && in_CXXFLAGS="$in_CXXFLAGS -fomit-frame-pointer"
+ in_DEFINES="-DNDEBUG"
+- [ -z "$LDFLAGS" ] && in_LDFLAGS="$in_LDFLAGS -s"
+ fi
+
+ if [ "$with_pcre" = "local" ] && [ "$with_libraries" = "static" ]; then
+@@ -1233,7 +1232,6 @@
+ in_CXXFLAGS_LIB="$in_CXXFLAGS -fPIC"
+ in_MAKE_LIB="$linker -shared $in_LDFLAGS -o \"\$(target)\" \$(objects)"
+ in_INSTALL_LIB="$installer -c -m 0755 \"\$(target)\" \"$libdir\""
+- [ "$with_strip" ] && in_INSTALL_LIB="$in_INSTALL_LIB \\&\\& strip --strip-unneeded \"$libdir/\$(target_name)\""
+ in_UNINSTALL_LIB="rm -f \"$libdir/\$(target_name)\""
+ fi
+
diff --git a/app-shells/squirrelsh/files/squirrelsh-remove-forced-abi.patch b/app-shells/squirrelsh/files/squirrelsh-remove-forced-abi.patch
new file mode 100644
index 00000000000..d9a5f0b34fe
--- /dev/null
+++ b/app-shells/squirrelsh/files/squirrelsh-remove-forced-abi.patch
@@ -0,0 +1,21 @@
+diff -Naur squirrelsh-1.2.6.orig//configure squirrelsh-1.2.6/configure
+--- squirrelsh-1.2.6.orig//configure 2012-03-12 22:02:40.000000000 -0400
++++ squirrelsh-1.2.6/configure 2012-03-12 22:05:42.000000000 -0400
+@@ -1172,15 +1172,10 @@
+ # ... CFLAGS, CXXFLAGS, DEFINES, LDFLAGS (machine-dependent)
+ case "$target" in
+ x86)
+- in_CFLAGS="-m32 $in_CFLAGS"
+- in_CXXFLAGS="-m32 $in_CXXFLAGS"
+- in_LDFLAGS="-m32 $in_LDFLAGS";;
++ :;;
+
+ x86_64)
+- in_CFLAGS="-m64 $in_CFLAGS"
+- in_CXXFLAGS="-m64 $in_CXXFLAGS"
+- in_DEFINES="$in_DEFINES -D_SQ64"
+- in_LDFLAGS="-m64 $in_LDFLAGS";;
++ in_DEFINES="$in_DEFINES -D_SQ64";;
+
+ ia64)
+ in_DEFINES="$in_DEFINES -D_SQ64";;
diff --git a/app-shells/squirrelsh/files/squirrelsh-rename-LDFLAGS.patch b/app-shells/squirrelsh/files/squirrelsh-rename-LDFLAGS.patch
new file mode 100644
index 00000000000..0c36d754862
--- /dev/null
+++ b/app-shells/squirrelsh/files/squirrelsh-rename-LDFLAGS.patch
@@ -0,0 +1,140 @@
+diff -Naur squirrelsh-1.2.6.orig//configure squirrelsh-1.2.6/configure
+--- squirrelsh-1.2.6.orig//configure 2010-11-09 13:16:43.000000000 -0500
++++ squirrelsh-1.2.6/configure 2012-03-12 20:19:01.000000000 -0400
+@@ -55,8 +55,8 @@
+ with_ranlib="yes" # yes, no
+ linker="$cpp_compiler"
+
+-if [ -n "$LFLAGS" ]; then
+- linker_flags="$LFLAGS"
++if [ -n "$LDFLAGS" ]; then
++ linker_flags="$LDFLAGS"
+ else
+ linker_flags="-Wl,-O1 -Wl,--as-needed"
+ fi
+@@ -136,7 +136,7 @@
+ CFLAGS C compiler options
+ CXX C++ compiler
+ CXXFLAGS C++ compiler options
+- LFLAGS Linker options
++ LDFLAGS Linker options
+ __SHEOF__
+ closescript
+ }
+@@ -275,7 +275,7 @@
+ return 1
+ }
+
+-# getoutput CPPFLAGS LFLAGS
++# getoutput CPPFLAGS LDFLAGS
+ # Compile C++ code and run the compiled program
+ getoutput ()
+ {
+@@ -824,7 +824,7 @@
+ checkforlinkeroption || msg_fail
+
+ # Check for optional linker options
+-if [ -z "$LFLAGS" ]; then
++if [ -z "$LDFLAGS" ]; then
+ checkforlinkeroption "-pipe" || msg_result "no"
+ checkforlinkeroption "-flto" y || msg_result "no"
+ fi
+@@ -1131,27 +1131,27 @@
+ #------ CREATE MAKEFILES --------------------------------------------------------------------------
+
+ # Define variables for substitution
+-# ... CFLAGS, CXXFLAGS, DEFINES, LFLAGS, INSTALL_EXE (machine-independent)
++# ... CFLAGS, CXXFLAGS, DEFINES, LDFLAGS, INSTALL_EXE (machine-independent)
+ in_CFLAGS="-c $c_compiler_flags"
+ in_CXXFLAGS="-c $cpp_compiler_flags"
+-in_LFLAGS="$linker_flags"
++in_LDFLAGS="$linker_flags"
+ in_INSTALL_EXE="$installer -c -m 0755 \"\$(target)\" \"$bindir/\$(target_name)\""
+
+ if [ "$with_pcre" = "local" ] || [ "$with_squirrel" = "local" ]; then
+- in_LFLAGS="-L\"$source_dir/lib\""
++ in_LDFLAGS="-L\"$source_dir/lib\""
+ fi
+
+ if [ -n "$pkgconfig" ]; then
+ if [ "$with_pcre" = "system" ]; then
+ in_CFLAGS="$in_CFLAGS `$pkgconfig --cflags-only-other libpcre`"
+ in_CXXFLAGS="$in_CXXFLAGS `$pkgconfig --cflags-only-other libpcre`"
+- in_LFLAGS="$in_LFLAGS `$pkgconfig --libs-only-other --libs-only-L libpcre`"
++ in_LDFLAGS="$in_LDFLAGS `$pkgconfig --libs-only-other --libs-only-L libpcre`"
+ fi
+
+ if [ "$with_squirrel" = "system" ]; then
+ in_CFLAGS="$in_CFLAGS `$pkgconfig --cflags-only-other libsquirrel`"
+ in_CXXFLAGS="$in_CXXFLAGS `$pkgconfig --cflags-only-other libsquirrel`"
+- in_LFLAGS="$in_LFLAGS `$pkgconfig --libs-only-other --libs-only-L libsquirrel`"
++ in_LDFLAGS="$in_LDFLAGS `$pkgconfig --libs-only-other --libs-only-L libsquirrel`"
+ fi
+ fi
+
+@@ -1163,25 +1163,25 @@
+ [ -z "$CFLAGS" ] && in_CFLAGS="$in_CFLAGS -fomit-frame-pointer"
+ [ -z "$CXXFLAGS" ] && in_CXXFLAGS="$in_CXXFLAGS -fomit-frame-pointer"
+ in_DEFINES="-DNDEBUG"
+- [ -z "$LFLAGS" ] && in_LFLAGS="$in_LFLAGS -s"
++ [ -z "$LDFLAGS" ] && in_LDFLAGS="$in_LDFLAGS -s"
+ fi
+
+ if [ "$with_pcre" = "local" ] && [ "$with_libraries" = "static" ]; then
+ in_DEFINES="$in_DEFINES -DPCRE_STATIC"
+ fi
+
+-# ... CFLAGS, CXXFLAGS, DEFINES, LFLAGS (machine-dependent)
++# ... CFLAGS, CXXFLAGS, DEFINES, LDFLAGS (machine-dependent)
+ case "$target" in
+ x86)
+ in_CFLAGS="-m32 $in_CFLAGS"
+ in_CXXFLAGS="-m32 $in_CXXFLAGS"
+- in_LFLAGS="-m32 $in_LFLAGS";;
++ in_LDFLAGS="-m32 $in_LDFLAGS";;
+
+ x86_64)
+ in_CFLAGS="-m64 $in_CFLAGS"
+ in_CXXFLAGS="-m64 $in_CXXFLAGS"
+ in_DEFINES="$in_DEFINES -D_SQ64"
+- in_LFLAGS="-m64 $in_LFLAGS";;
++ in_LDFLAGS="-m64 $in_LDFLAGS";;
+
+ ia64)
+ in_DEFINES="$in_DEFINES -D_SQ64";;
+@@ -1223,7 +1223,7 @@
+
+ # Work around Apple's linker behavior ("-L../lib" linker option seems to be ignored)
+ if [ "$platform" = "macosx" ]; then
+- #in_LFLAGS="$in_LFLAGS -search_paths_first"
++ #in_LDFLAGS="$in_LDFLAGS -search_paths_first"
+ [ "$with_pcre" = "local" ] && in_LIBS=`echo "$in_LIBS" | $sed -e "s@-lpcre@../lib/libpcre$lib_suffix@"`
+ [ "$with_squirrel" = "local" ] && in_LIBS=`echo "$in_LIBS" | $sed -e "s@-lsquirrel@../lib/libsquirrel$lib_suffix@"`
+ fi
+@@ -1231,7 +1231,7 @@
+ in_LIB_EXT="$dll_suffix"
+ in_CFLAGS_LIB="$in_CFLAGS -fPIC"
+ in_CXXFLAGS_LIB="$in_CXXFLAGS -fPIC"
+- in_MAKE_LIB="$linker -shared $in_LFLAGS -o \"\$(target)\" \$(objects)"
++ in_MAKE_LIB="$linker -shared $in_LDFLAGS -o \"\$(target)\" \$(objects)"
+ in_INSTALL_LIB="$installer -c -m 0755 \"\$(target)\" \"$libdir\""
+ [ "$with_strip" ] && in_INSTALL_LIB="$in_INSTALL_LIB \\&\\& strip --strip-unneeded \"$libdir/\$(target_name)\""
+ in_UNINSTALL_LIB="rm -f \"$libdir/\$(target_name)\""
+@@ -1274,7 +1274,7 @@
+ s#@LINK@#$linker#
+ s#@EXE_EXT@#$exe_suffix#
+ s#@LIB_EXT@#$in_LIB_EXT#
+-s#@MAKE_EXE@#$linker $in_LFLAGS -o "\$(target)" \$(objects) $in_LIBS#
++s#@MAKE_EXE@#$linker $in_LDFLAGS -o "\$(target)" \$(objects) $in_LIBS#
+ s#@MAKE_LIB@#$in_MAKE_LIB#
+ s#@MAKE_PCRE@#$in_MAKE_PCRE#
+ s#@MAKE_SHELL@#@cd shell \&\& \$(MAKE) \$@#
+@@ -1285,7 +1285,7 @@
+ s#@CXXFLAGS_EXE@#$in_CXXFLAGS_EXE#
+ s#@CFLAGS_LIB@#$in_CFLAGS_LIB#
+ s#@CXXFLAGS_LIB@#$in_CXXFLAGS_LIB#
+-s#@LFLAGS@#$in_LFLAGS#
++s#@LDFLAGS@#$in_LDFLAGS#
+ s#@DEFINES@#$in_DEFINES#
+ s#@INCLUDES@#$in_INCLUDES#
+ s#@LIBS@#$in_LIBS#
diff --git a/app-shells/squirrelsh/metadata.xml b/app-shells/squirrelsh/metadata.xml
new file mode 100644
index 00000000000..836513a7080
--- /dev/null
+++ b/app-shells/squirrelsh/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>blueness@gentoo.org</email>
+ <name>Anthony G. Basile</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">squirrelsh</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/squirrelsh/squirrelsh-1.2.3-r1.ebuild b/app-shells/squirrelsh/squirrelsh-1.2.3-r1.ebuild
new file mode 100644
index 00000000000..4933b9539a6
--- /dev/null
+++ b/app-shells/squirrelsh/squirrelsh-1.2.3-r1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils multilib toolchain-funcs
+
+DESCRIPTION="An advanced, cross-platform object oriented scripting shell based
+on the squirrel scripting language"
+HOMEPAGE="http://squirrelsh.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}-src.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc"
+
+DEPEND="dev-libs/libpcre"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ #Fix pre-stripping
+ sed -i -e '/in_LFLAGS="-s $in_LFLAGS"/d' configure || die "sed failed"
+ #Fix multilib issues
+ sed -i -e "s:prefix/lib:prefix/$(get_libdir):" configure || die "sed failed"
+ #Fix CFLAG madness
+ sed -i -e "s:-O2 -Os -Wall -ffast-math:${CFLAGS}:" \
+ configure || die "sed failed"
+ sed -i -e "s:\$c_compiler_flags -fno-rtti:${CXXFLAGS}:" \
+ configure || die "sed failed"
+ sed -i -e "s:-fomit-frame-pointer::" configure || die "sed failed"
+ sed -i -e "797,817d" configure || die "sed failed"
+ #Fix compiler madness
+ sed -i -e "s:c_compiler=\"gcc\":c_compiler=\"$(tc-getCC)\":" \
+ configure || die "sed failed"
+ sed -i -e "s:cpp_compiler=\"g++\":cpp_compiler=\"$(tc-getCXX)\":" \
+ configure || die "sed failed"
+ #Remove autoinstallation of docs
+ sed -i -e "/@INSTALL@/d" Makefile.in || die "sed failed"
+ #Fix --with-libraries in configure
+ sed -i -e "s:arg_option:arg_value:" configure || die "sed failed"
+}
+
+src_configure() {
+ #Not autotools, custom rolled
+ #Use static to prevent collision with dev-lang/squirrel
+ ./configure --prefix="${D}"/usr \
+ --with-mime=no \
+ --with-libraries=static || die "configure failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "install failed"
+ doman doc/${PN}.1 || die "doman failed"
+ dodoc HISTORY INSTALL README || die "dodoc failed"
+ if use doc ; then
+ dodoc doc/*.pdf || die "dodoc failed"
+ fi
+}
diff --git a/app-shells/squirrelsh/squirrelsh-1.2.6.ebuild b/app-shells/squirrelsh/squirrelsh-1.2.6.ebuild
new file mode 100644
index 00000000000..64e28c10075
--- /dev/null
+++ b/app-shells/squirrelsh/squirrelsh-1.2.6.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils multilib toolchain-funcs
+
+DESCRIPTION="An advanced, cross-platform object oriented scripting shell based
+on the squirrel scripting language"
+HOMEPAGE="http://squirrelsh.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}-src.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE="doc"
+
+RDEPEND="dev-libs/libpcre"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-rename-LDFLAGS.patch
+ epatch "${FILESDIR}"/${PN}-no-strip.patch
+ epatch "${FILESDIR}"/${PN}-fix-in_LDFLAGS.patch
+ epatch "${FILESDIR}"/${PN}-remove-forced-abi.patch
+ epatch "${FILESDIR}"/${PN}-no-docs.patch
+}
+
+src_configure() {
+ #This package uses a custom written configure script
+ ./configure --prefix="${D}"/usr \
+ --with-cc="$(tc-getCC)" \
+ --with-cpp="$(tc-getCXX)" \
+ --with-linker="$(tc-getCXX)" \
+ --libdir=/usr/"$(get_libdir)" \
+ --with-pcre="system" \
+ --with-squirrel="local" \
+ --with-mime=no || die "configure failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ doman doc/${PN}.1
+ dodoc HISTORY INSTALL README
+ use doc && dodoc doc/*.pdf
+}
diff --git a/app-shells/squirrelsh/squirrelsh-1.2.7.ebuild b/app-shells/squirrelsh/squirrelsh-1.2.7.ebuild
new file mode 100644
index 00000000000..a1216397377
--- /dev/null
+++ b/app-shells/squirrelsh/squirrelsh-1.2.7.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils multilib toolchain-funcs
+
+DESCRIPTION="An advanced, cross-platform object oriented scripting shell based
+on the squirrel scripting language"
+HOMEPAGE="http://squirrelsh.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}-src.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE="doc"
+
+RDEPEND="dev-libs/libpcre"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-rename-LDFLAGS.patch
+ epatch "${FILESDIR}"/${PN}-no-strip.patch
+ epatch "${FILESDIR}"/${PN}-fix-in_LDFLAGS.patch
+ epatch "${FILESDIR}"/${PN}-remove-forced-abi.patch
+ epatch "${FILESDIR}"/${PN}-no-docs.patch
+}
+
+src_configure() {
+ #This package uses a custom written configure script
+ ./configure --prefix="${D}"/usr \
+ --with-cc="$(tc-getCC)" \
+ --with-cpp="$(tc-getCXX)" \
+ --with-linker="$(tc-getCXX)" \
+ --libdir=/usr/"$(get_libdir)" \
+ --with-pcre="system" \
+ --with-squirrel="local" \
+ --with-mime=no || die "configure failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ doman doc/${PN}.1
+ dodoc HISTORY INSTALL README
+ use doc && dodoc doc/*.pdf
+}
diff --git a/app-shells/tcsh/Manifest b/app-shells/tcsh/Manifest
new file mode 100644
index 00000000000..32a79a26cd2
--- /dev/null
+++ b/app-shells/tcsh/Manifest
@@ -0,0 +1,5 @@
+DIST tcsh-6.17.00.tar.gz 890084 SHA256 575266122bc2bc351c84a7f858020c0e6b6f95a64ad4de3ce95e340f57e4a9a9 SHA512 7bb1504ea3aed7d67943c9a642b12982621c79325ef223bfed43c01ea6f9aca44cab7c5c949a7fac910fd5140dac154c2ac125362a7a0bb4c1992ef2fdd76fe3 WHIRLPOOL 2f9350c378b4a6aa757bd7168fb38ababe4e89e842ab43335d43b222af73ff27bdeef558ad9c83d54a5b8a22be18e8be86e4da218fa1fdc91e903476104c94cb
+DIST tcsh-6.17.06.tar.gz 919999 SHA256 c9eff6aa782ecec5c6719954b529fadac97c32f3ba4c56fa07c40d425c2d91df SHA512 77105b6d42ae2924acee5cf9caf759fb713292e89a0a651056e2e89839ee2a3d85286e5b54b570eefce8fdee6742745a12276b448bb891b860a89cc11b42592b WHIRLPOOL 625f718b89ffd53a9f07211c4d1b06c2468ee190afebb032dd519cb3acb57515cdbd5392bc1130885702653561ac3e30e3b562ab10fef37b163b8ae02f089f84
+DIST tcsh-6.18.01.tar.gz 926872 SHA256 d81ca27851f3e8545666399b4bcf25433e602a195113b3f7c73886fef84c9fa8 SHA512 2791709f6db19b70652259f7dd5ee5c5d7943e814b3904cac5a3e890ff3b144401ed8552bd4f82ec789378d85c3f785438446c4d97d229c46bd0a08970d34628 WHIRLPOOL 3a77a207fb53e81ccedec821dc20c55cdd60f0ea290b3042e0858dc479a9a208d515c065521118e85dba839f0ff765b435c42118849d5159e12cab52fdbfc001
+DIST tcsh-gentoo-patches-r1.8.tar.bz2 2484 SHA256 77fa4ae60090ad5a6ec50185eec9070757eedb798b1c29327d27fc582cb59f37 SHA512 ab7bf0beb7fcb6fd0d5f18089f6e86ee62b5cc780a1b34cee576199eaac3b08ee84740b53327a37440b58042246a12da253c698655367fde548e121f4e3101b2 WHIRLPOOL 8ec43dd26dcedb6ef12a552c8029a88e9cc7569ba069c90567d75ddd103fe08edaabd8c57418484435bb782410f9b58886e189f347cb50249280aa7fb88afb4f
+DIST tcsh-gentoo-patches-r1.9.tar.bz2 2488 SHA256 6375f48d78b64fd97fc2cb07e8117e41459521a8de3919d174eec321a98af483 SHA512 9903e9c3e2279abcac09a3235f3c5db9f42156c18137eb651ede195ca2b069f0b5bc6105fed33666b69796c4ebf03e4efe63cd9beba1898bac7297a2f74bfd3d WHIRLPOOL a16e642f32095f5403cad38446acc50e1802e874dba66eccfdc2ab7f5108fe77e91f5990585ba4fffb808be92c15a05f70eaf1fb436da040287b04c207c9a105
diff --git a/app-shells/tcsh/files/tcsh-6.14-makefile.patch b/app-shells/tcsh/files/tcsh-6.14-makefile.patch
new file mode 100644
index 00000000000..6d85aa0588f
--- /dev/null
+++ b/app-shells/tcsh/files/tcsh-6.14-makefile.patch
@@ -0,0 +1,16 @@
+* don't strip (portage does that for us)
+* don't try to move away an older tcsh binary; we don't install in / so
+ that only results in an ugly error message
+
+--- tcsh-6.14.00/Makefile.in
++++ tcsh-6.14.00/Makefile.in
+@@ -477,9 +477,7 @@
+
+ install: tcsh$(EXEEXT)
+ -mkdir -p ${DESTBIN}
+- -mv -f ${DESTBIN}/tcsh$(EXEEXT) ${DESTBIN}/tcsh.old
+ cp tcsh$(EXEEXT) ${DESTBIN}/tcsh$(EXEEXT)
+- -strip ${DESTBIN}/tcsh$(EXEEXT)
+ chmod 755 ${DESTBIN}/tcsh$(EXEEXT)
+
+ install.man: tcsh.man
diff --git a/app-shells/tcsh/files/tcsh-6.14-use-ncurses.patch b/app-shells/tcsh/files/tcsh-6.14-use-ncurses.patch
new file mode 100644
index 00000000000..8fc902c19b4
--- /dev/null
+++ b/app-shells/tcsh/files/tcsh-6.14-use-ncurses.patch
@@ -0,0 +1,11 @@
+--- configure.in
++++ configure.in
+@@ -257,7 +257,7 @@
+ dnl Checks for libraries
+ AC_SEARCH_LIBS(crypt, crypt)
+ AC_SEARCH_LIBS(getspnam, sec)
+-AC_SEARCH_LIBS(tgetent, termlib termcap curses ncurses)
++AC_SEARCH_LIBS(tgetent, ncurses)
+ AC_SEARCH_LIBS(gethostbyname, nsl)
+ AC_SEARCH_LIBS(connect, socket)
+ AC_SEARCH_LIBS([iconv], [iconv], [AC_DEFINE([HAVE_ICONV], [1],
diff --git a/app-shells/tcsh/files/tcsh-6.14.00-debian-dircolors.patch b/app-shells/tcsh/files/tcsh-6.14.00-debian-dircolors.patch
new file mode 100644
index 00000000000..194d478c403
--- /dev/null
+++ b/app-shells/tcsh/files/tcsh-6.14.00-debian-dircolors.patch
@@ -0,0 +1,19 @@
+--- tcsh-6.14.00/tw.color.c
++++ tcsh-6.14.00/tw.color.c
+@@ -235,13 +235,10 @@
+ if ((Char)variables[i].variable[0] == (v[0] & CHAR) &&
+ (Char)variables[i].variable[1] == (v[1] & CHAR))
+ break;
+- if (i < nvariables) {
+- v += 3;
++ v += 3;
++ if (i < nvariables)
+ getstring(&c, &v, &variables[i].color, ':');
+- continue;
+- }
+- else
+- stderror(ERR_BADCOLORVAR, v[0], v[1]);
++ continue;
+ }
+ break;
+ }
diff --git a/app-shells/tcsh/files/tcsh-6.15.00-normalize-command-fix.patch b/app-shells/tcsh/files/tcsh-6.15.00-normalize-command-fix.patch
new file mode 100644
index 00000000000..b3b27ef7f14
--- /dev/null
+++ b/app-shells/tcsh/files/tcsh-6.15.00-normalize-command-fix.patch
@@ -0,0 +1,14 @@
+http://bugs.gw.com/view.php?id=53
+
+diff -uNr tcsh-6.15.00.orig/tw.parse.c tcsh-6.15.00/tw.parse.c
+--- tcsh-6.15.00.orig/tw.parse.c 2007-03-01 23:21:42.000000000 +0200
++++ tcsh-6.15.00/tw.parse.c 2007-06-30 20:10:54.000000000 +0300
+@@ -433,7 +433,7 @@
+ Char *p;
+ int found;
+
+- found = !cmd_expand(qline.s + wordp, &p);
++ found = cmd_expand(qline.s + wordp, &p);
+
+ if (!found) {
+ xfree(p);
diff --git a/app-shells/tcsh/files/tcsh-6.18.01-aix.patch b/app-shells/tcsh/files/tcsh-6.18.01-aix.patch
new file mode 100644
index 00000000000..669d2063473
--- /dev/null
+++ b/app-shells/tcsh/files/tcsh-6.18.01-aix.patch
@@ -0,0 +1,14 @@
+Upstream report, without better patch yet:
+http://bugs.gw.com/view.php?id=366
+
+--- tc.who.c.orig 2014-06-26 11:21:43 +0200
++++ tc.who.c 2014-06-26 11:21:58 +0200
+@@ -60,6 +60,8 @@
+ # define TCSH_PATH_UTMP _PATH_UTMPX
+ # elif defined(UTMPX_FILE)
+ # define TCSH_PATH_UTMP UTMPX_FILE
++# elif defined(UTMP_FILE)
++# define TCSH_PATH_UTMP UTMP_FILE
+ # elif __FreeBSD_version >= 900000
+ # /* Why isn't this defined somewhere? */
+ # define TCSH_PATH_UTMP "/var/run/utx.active"
diff --git a/app-shells/tcsh/files/tcsh-6.18.01-gcc5.patch b/app-shells/tcsh/files/tcsh-6.18.01-gcc5.patch
new file mode 100644
index 00000000000..d9501572fe5
--- /dev/null
+++ b/app-shells/tcsh/files/tcsh-6.18.01-gcc5.patch
@@ -0,0 +1,31 @@
+https://bugs.gentoo.org/545176
+http://mx.gw.com/pipermail/tcsh-bugs/2015-May/000945.html
+https://github.com/tcsh-org/tcsh/commit/624d3aebb6e6afadb4f35e894d11b5ebe290cd87
+
+From 624d3aebb6e6afadb4f35e894d11b5ebe290cd87 Mon Sep 17 00:00:00 2001
+From: christos <christos>
+Date: Thu, 28 May 2015 11:47:03 +0000
+Subject: [PATCH] avoid gcc-5 optimization malloc + memset = calloc (Fridolin
+ Pokorny)
+
+---
+ tc.alloc.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+--- a/tc.alloc.c
++++ b/tc.alloc.c
+@@ -348,10 +348,13 @@ calloc(size_t i, size_t j)
+ {
+ #ifndef lint
+ char *cp;
++ volatile size_t k;
+
+ i *= j;
+ cp = xmalloc(i);
+- memset(cp, 0, i);
++ /* Stop gcc 5.x from optimizing malloc+memset = calloc */
++ k = i;
++ memset(cp, 0, k);
+
+ return ((memalign_t) cp);
+ #else
diff --git a/app-shells/tcsh/metadata.xml b/app-shells/tcsh/metadata.xml
new file mode 100644
index 00000000000..bbb6c66303b
--- /dev/null
+++ b/app-shells/tcsh/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>grobian@gentoo.org</email>
+ <name>Fabian Groffen</name>
+ </maintainer>
+ <longdescription>
+ Tcsh is an enhanced, but completely compatible version of the Berkeley
+ UNIX C shell (csh). It is a command language interpreter usable both as
+ an interactive login shell and a shell script command processor. It
+ includes a command-line editor, programmable word completion, spelling
+ correction, a history mechanism, job control and a C-like syntax.
+ </longdescription>
+ <use>
+ <flag name="catalogs">Add support for NLS catalogs</flag>
+ </use>
+</pkgmetadata>
diff --git a/app-shells/tcsh/tcsh-6.17-r1.ebuild b/app-shells/tcsh/tcsh-6.17-r1.ebuild
new file mode 100644
index 00000000000..cb515e8503e
--- /dev/null
+++ b/app-shells/tcsh/tcsh-6.17-r1.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+
+inherit eutils flag-o-matic autotools prefix
+
+CONFVER="1.8"
+
+MY_P="${P}.00"
+DESCRIPTION="Enhanced version of the Berkeley C shell (csh)"
+HOMEPAGE="http://www.tcsh.org/"
+SRC_URI="ftp://ftp.astron.com/pub/tcsh/old/${MY_P}.tar.gz
+ http://www.gentoo.org/~grobian/distfiles/tcsh-gentoo-patches-r${CONFVER}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="catalogs doc"
+RESTRICT="test"
+
+# we need gettext because we run autoconf (AM_ICONV)
+RDEPEND=">=sys-libs/ncurses-5.1
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ doc? ( dev-lang/perl )"
+
+S=${WORKDIR}/${MY_P}
+CONFDIR=${WORKDIR}/tcsh-gentoo-patches-r${CONFVER}
+
+src_prepare() {
+ epatch "${FILESDIR}/${MY_P/17/14}"-debian-dircolors.patch # bug #120792
+ epatch "${FILESDIR}"/${PN}-6.14-makefile.patch # bug #151951
+ epatch "${FILESDIR}"/${PN}-6.14-use-ncurses.patch
+ eautoreconf
+
+ if use catalogs ; then
+ einfo "enabling NLS catalogs support..."
+ sed -i -e "s/#undef NLS_CATALOGS/#define NLS_CATALOGS/" \
+ config_f.h || die
+ eend $?
+ fi
+
+ # unify ECHO behaviour
+ echo "#undef ECHO_STYLE" >> config_f.h
+ echo "#define ECHO_STYLE BOTH_ECHO" >> config_f.h
+
+ eprefixify "${CONFDIR}"/*
+ # activate the right default PATH
+ if [[ -z ${EPREFIX} ]] ; then
+ sed -i \
+ -e 's/^#MAIN//' -e '/^#PREFIX/d' \
+ "${CONFDIR}"/csh.login || die
+ else
+ sed -i \
+ -e 's/^#PREFIX//' -e '/^#MAIN/d' \
+ "${CONFDIR}"/csh.login || die
+ fi
+}
+
+src_configure() {
+ # make tcsh look and live along the lines of the prefix
+ append-flags -D_PATH_DOTCSHRC="'"'"${EPREFIX}/etc/csh.cshrc"'"'"
+ append-flags -D_PATH_DOTLOGIN="'"'"${EPREFIX}/etc/csh.login"'"'"
+ append-flags -D_PATH_DOTLOGOUT="'"'"${EPREFIX}/etc/csh.logout"'"'"
+ append-flags -D_PATH_USRBIN="'"'"${EPREFIX}/usr/bin"'"'"
+ append-flags -D_PATH_BIN="'"'"${EPREFIX}/bin"'"'"
+
+ econf \
+ --prefix="${EPREFIX:-/}" \
+ --datarootdir='${prefix}/usr/share' \
+ || die
+}
+
+src_install() {
+ emake DESTDIR="${D}" install install.man || die
+
+ if use doc ; then
+ perl tcsh.man2html tcsh.man || die
+ dohtml tcsh.html/*.html
+ fi
+
+ insinto /etc
+ doins \
+ "${CONFDIR}"/csh.cshrc \
+ "${CONFDIR}"/csh.login
+
+ dodoc FAQ Fixes NewThings Ported README WishList Y2K
+
+ # bug #119703: add csh -> tcsh symlink
+ dosym /bin/tcsh /bin/csh
+}
diff --git a/app-shells/tcsh/tcsh-6.17.06.ebuild b/app-shells/tcsh/tcsh-6.17.06.ebuild
new file mode 100644
index 00000000000..f0378a86b07
--- /dev/null
+++ b/app-shells/tcsh/tcsh-6.17.06.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+
+inherit eutils flag-o-matic autotools prefix
+
+CONFVER="1.9"
+
+DESCRIPTION="Enhanced version of the Berkeley C shell (csh)"
+HOMEPAGE="http://www.tcsh.org/"
+SRC_URI="ftp://ftp.astron.com/pub/tcsh/beta/${P}.tar.gz
+ http://www.gentoo.org/~grobian/distfiles/tcsh-gentoo-patches-r${CONFVER}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="nls doc"
+RESTRICT="test"
+
+# we need gettext because we run autoconf (AM_ICONV)
+RDEPEND=">=sys-libs/ncurses-5.1
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ doc? ( dev-lang/perl )"
+
+CONFDIR=${WORKDIR}/tcsh-gentoo-patches-r${CONFVER}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-6.14.00-debian-dircolors.patch # bug #120792
+ epatch "${FILESDIR}"/${PN}-6.14-makefile.patch # bug #151951
+ epatch "${FILESDIR}"/${PN}-6.14-use-ncurses.patch
+ eautoreconf
+
+ # fix gencat usage
+ sed -i -e 's/cat \$\^ \$> | \$(GENCAT) \$@/rm -f $@; $(GENCAT) $@ $> $^/' \
+ nls/Makefile.in || die
+
+ # unify ECHO behaviour
+ echo "#undef ECHO_STYLE" >> config_f.h
+ echo "#define ECHO_STYLE BOTH_ECHO" >> config_f.h
+
+ eprefixify "${CONFDIR}"/*
+ # activate the right default PATH
+ if [[ -z ${EPREFIX} ]] ; then
+ sed -i \
+ -e 's/^#MAIN//' -e '/^#PREFIX/d' \
+ "${CONFDIR}"/csh.login || die
+ else
+ sed -i \
+ -e 's/^#PREFIX//' -e '/^#MAIN/d' \
+ "${CONFDIR}"/csh.login || die
+ fi
+}
+
+src_configure() {
+ # make tcsh look and live along the lines of the prefix
+ append-flags -D_PATH_DOTCSHRC="'"'"${EPREFIX}/etc/csh.cshrc"'"'"
+ append-flags -D_PATH_DOTLOGIN="'"'"${EPREFIX}/etc/csh.login"'"'"
+ append-flags -D_PATH_DOTLOGOUT="'"'"${EPREFIX}/etc/csh.logout"'"'"
+ append-flags -D_PATH_USRBIN="'"'"${EPREFIX}/usr/bin"'"'"
+ append-flags -D_PATH_BIN="'"'"${EPREFIX}/bin"'"'"
+
+ econf \
+ --prefix="${EPREFIX:-/}" \
+ --datarootdir='${prefix}/usr/share' \
+ $(use_enable nls) \
+ || die
+}
+
+src_install() {
+ emake DESTDIR="${D}" install install.man || die
+
+ if use doc ; then
+ perl tcsh.man2html tcsh.man || die
+ dohtml tcsh.html/*.html
+ fi
+
+ insinto /etc
+ doins \
+ "${CONFDIR}"/csh.cshrc \
+ "${CONFDIR}"/csh.login
+
+ dodoc FAQ Fixes NewThings Ported README WishList Y2K
+
+ # bug #119703: add csh -> tcsh symlink
+ dosym /bin/tcsh /bin/csh
+}
diff --git a/app-shells/tcsh/tcsh-6.18.01-r2.ebuild b/app-shells/tcsh/tcsh-6.18.01-r2.ebuild
new file mode 100644
index 00000000000..3dc6ead2c59
--- /dev/null
+++ b/app-shells/tcsh/tcsh-6.18.01-r2.ebuild
@@ -0,0 +1,100 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+
+inherit eutils flag-o-matic autotools prefix
+
+CONFVER="1.9"
+
+DESCRIPTION="Enhanced version of the Berkeley C shell (csh)"
+HOMEPAGE="http://www.tcsh.org/"
+SRC_URI="ftp://ftp.astron.com/pub/tcsh/${P}.tar.gz
+ http://www.gentoo.org/~grobian/distfiles/tcsh-gentoo-patches-r${CONFVER}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="nls doc"
+RESTRICT="test"
+
+# we need gettext because we run autoconf (AM_ICONV)
+RDEPEND=">=sys-libs/ncurses-5.1
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ doc? ( dev-lang/perl )"
+
+CONFDIR=${WORKDIR}/tcsh-gentoo-patches-r${CONFVER}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-6.14.00-debian-dircolors.patch # bug #120792
+ epatch "${FILESDIR}"/${PN}-6.14-makefile.patch # bug #151951
+ epatch "${FILESDIR}"/${PN}-6.14-use-ncurses.patch
+ epatch "${FILESDIR}"/${PN}-6.18.01-aix.patch
+
+ # fix dependency on ncurses[tinfo], #459484
+ sed \
+ -e "s:\(ncurses\):\1 tinfo:g" \
+ -i configure.in || die
+
+ eautoreconf
+
+ # fix gencat usage
+ sed -i -e 's/cat \$\^ \$> | \$(GENCAT) \$@/rm -f $@; $(GENCAT) $@ $> $^/' \
+ nls/Makefile.in || die
+
+ # use sysmalloc (for larger alloc sets) on Darwin also
+ sed -i -e 's/__MACHTEN__/__MACH__/' config_f.h || die
+
+ # unify ECHO behaviour
+ echo "#undef ECHO_STYLE" >> config_f.h
+ echo "#define ECHO_STYLE BOTH_ECHO" >> config_f.h
+
+ eprefixify "${CONFDIR}"/*
+ # activate the right default PATH
+ if [[ -z ${EPREFIX} ]] ; then
+ sed -i \
+ -e 's/^#MAIN//' -e '/^#PREFIX/d' \
+ "${CONFDIR}"/csh.login || die
+ else
+ sed -i \
+ -e 's/^#PREFIX//' -e '/^#MAIN/d' \
+ "${CONFDIR}"/csh.login || die
+ fi
+}
+
+src_configure() {
+ # make tcsh look and live along the lines of the prefix
+ append-cppflags -D_PATH_DOTCSHRC="'"'"${EPREFIX}/etc/csh.cshrc"'"'"
+ append-cppflags -D_PATH_DOTLOGIN="'"'"${EPREFIX}/etc/csh.login"'"'"
+ append-cppflags -D_PATH_DOTLOGOUT="'"'"${EPREFIX}/etc/csh.logout"'"'"
+ append-cppflags -D_PATH_USRBIN="'"'"${EPREFIX}/usr/bin"'"'"
+ append-cppflags -D_PATH_BIN="'"'"${EPREFIX}/bin"'"'"
+
+ econf \
+ --prefix="${EPREFIX:-/}" \
+ --datarootdir='${prefix}/usr/share' \
+ $(use_enable nls) \
+ || die
+}
+
+src_install() {
+ emake DESTDIR="${D}" install install.man || die
+
+ if use doc ; then
+ perl tcsh.man2html tcsh.man || die
+ dohtml tcsh.html/*.html
+ fi
+
+ insinto /etc
+ doins \
+ "${CONFDIR}"/csh.cshrc \
+ "${CONFDIR}"/csh.login
+
+ dodoc FAQ Fixes NewThings Ported README WishList Y2K
+
+ # bug #119703: add csh -> tcsh symlink
+ dosym /bin/tcsh /bin/csh
+}
diff --git a/app-shells/tcsh/tcsh-6.18.01-r3.ebuild b/app-shells/tcsh/tcsh-6.18.01-r3.ebuild
new file mode 100644
index 00000000000..31db28723a0
--- /dev/null
+++ b/app-shells/tcsh/tcsh-6.18.01-r3.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+
+inherit eutils flag-o-matic autotools prefix
+
+CONFVER="1.9"
+
+DESCRIPTION="Enhanced version of the Berkeley C shell (csh)"
+HOMEPAGE="http://www.tcsh.org/"
+SRC_URI="ftp://ftp.astron.com/pub/tcsh/${P}.tar.gz
+ http://www.gentoo.org/~grobian/distfiles/tcsh-gentoo-patches-r${CONFVER}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="nls doc"
+RESTRICT="test"
+
+# we need gettext because we run autoconf (AM_ICONV)
+RDEPEND=">=sys-libs/ncurses-5.1
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ doc? ( dev-lang/perl )"
+
+CONFDIR=${WORKDIR}/tcsh-gentoo-patches-r${CONFVER}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-6.14.00-debian-dircolors.patch # bug #120792
+ epatch "${FILESDIR}"/${PN}-6.14-makefile.patch # bug #151951
+ epatch "${FILESDIR}"/${PN}-6.14-use-ncurses.patch
+ epatch "${FILESDIR}"/${PN}-6.18.01-aix.patch
+ epatch "${FILESDIR}"/${PN}-6.18.01-gcc5.patch
+
+ # fix dependency on ncurses[tinfo], #459484
+ sed \
+ -e "s:\(ncurses\):\1 tinfo:g" \
+ -i configure.in || die
+
+ eautoreconf
+
+ # fix gencat usage
+ sed -i -e 's/cat \$\^ \$> | \$(GENCAT) \$@/rm -f $@; $(GENCAT) $@ $> $^/' \
+ nls/Makefile.in || die
+
+ # use sysmalloc (for larger alloc sets) on Darwin also
+ sed -i -e 's/__MACHTEN__/__MACH__/' config_f.h || die
+
+ # unify ECHO behaviour
+ echo "#undef ECHO_STYLE" >> config_f.h
+ echo "#define ECHO_STYLE BOTH_ECHO" >> config_f.h
+
+ eprefixify "${CONFDIR}"/*
+ # activate the right default PATH
+ if [[ -z ${EPREFIX} ]] ; then
+ sed -i \
+ -e 's/^#MAIN//' -e '/^#PREFIX/d' \
+ "${CONFDIR}"/csh.login || die
+ else
+ sed -i \
+ -e 's/^#PREFIX//' -e '/^#MAIN/d' \
+ "${CONFDIR}"/csh.login || die
+ fi
+}
+
+src_configure() {
+ # make tcsh look and live along the lines of the prefix
+ append-cppflags -D_PATH_DOTCSHRC="'"'"${EPREFIX}/etc/csh.cshrc"'"'"
+ append-cppflags -D_PATH_DOTLOGIN="'"'"${EPREFIX}/etc/csh.login"'"'"
+ append-cppflags -D_PATH_DOTLOGOUT="'"'"${EPREFIX}/etc/csh.logout"'"'"
+ append-cppflags -D_PATH_USRBIN="'"'"${EPREFIX}/usr/bin"'"'"
+ append-cppflags -D_PATH_BIN="'"'"${EPREFIX}/bin"'"'"
+
+ econf \
+ --prefix="${EPREFIX:-/}" \
+ --datarootdir='${prefix}/usr/share' \
+ $(use_enable nls) \
+ || die
+}
+
+src_install() {
+ emake DESTDIR="${D}" install install.man || die
+
+ if use doc ; then
+ perl tcsh.man2html tcsh.man || die
+ dohtml tcsh.html/*.html
+ fi
+
+ insinto /etc
+ doins \
+ "${CONFDIR}"/csh.cshrc \
+ "${CONFDIR}"/csh.login
+
+ dodoc FAQ Fixes NewThings Ported README WishList Y2K
+
+ # bug #119703: add csh -> tcsh symlink
+ dosym /bin/tcsh /bin/csh
+}
diff --git a/app-shells/tcsh/tcsh-6.18.01.ebuild b/app-shells/tcsh/tcsh-6.18.01.ebuild
new file mode 100644
index 00000000000..8e010a492da
--- /dev/null
+++ b/app-shells/tcsh/tcsh-6.18.01.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+
+inherit eutils flag-o-matic autotools prefix
+
+CONFVER="1.9"
+
+DESCRIPTION="Enhanced version of the Berkeley C shell (csh)"
+HOMEPAGE="http://www.tcsh.org/"
+SRC_URI="ftp://ftp.astron.com/pub/tcsh/${P}.tar.gz
+ http://www.gentoo.org/~grobian/distfiles/tcsh-gentoo-patches-r${CONFVER}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="nls doc"
+RESTRICT="test"
+
+# we need gettext because we run autoconf (AM_ICONV)
+RDEPEND=">=sys-libs/ncurses-5.1
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ doc? ( dev-lang/perl )"
+
+CONFDIR=${WORKDIR}/tcsh-gentoo-patches-r${CONFVER}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-6.14.00-debian-dircolors.patch # bug #120792
+ epatch "${FILESDIR}"/${PN}-6.14-makefile.patch # bug #151951
+ epatch "${FILESDIR}"/${PN}-6.14-use-ncurses.patch
+ eautoreconf
+
+ # fix gencat usage
+ sed -i -e 's/cat \$\^ \$> | \$(GENCAT) \$@/rm -f $@; $(GENCAT) $@ $> $^/' \
+ nls/Makefile.in || die
+
+ # unify ECHO behaviour
+ echo "#undef ECHO_STYLE" >> config_f.h
+ echo "#define ECHO_STYLE BOTH_ECHO" >> config_f.h
+
+ eprefixify "${CONFDIR}"/*
+ # activate the right default PATH
+ if [[ -z ${EPREFIX} ]] ; then
+ sed -i \
+ -e 's/^#MAIN//' -e '/^#PREFIX/d' \
+ "${CONFDIR}"/csh.login || die
+ else
+ sed -i \
+ -e 's/^#PREFIX//' -e '/^#MAIN/d' \
+ "${CONFDIR}"/csh.login || die
+ fi
+}
+
+src_configure() {
+ # make tcsh look and live along the lines of the prefix
+ append-cppflags -D_PATH_DOTCSHRC="'"'"${EPREFIX}/etc/csh.cshrc"'"'"
+ append-cppflags -D_PATH_DOTLOGIN="'"'"${EPREFIX}/etc/csh.login"'"'"
+ append-cppflags -D_PATH_DOTLOGOUT="'"'"${EPREFIX}/etc/csh.logout"'"'"
+ append-cppflags -D_PATH_USRBIN="'"'"${EPREFIX}/usr/bin"'"'"
+ append-cppflags -D_PATH_BIN="'"'"${EPREFIX}/bin"'"'"
+
+ econf \
+ --prefix="${EPREFIX:-/}" \
+ --datarootdir='${prefix}/usr/share' \
+ $(use_enable nls) \
+ || die
+}
+
+src_install() {
+ emake DESTDIR="${D}" install install.man || die
+
+ if use doc ; then
+ perl tcsh.man2html tcsh.man || die
+ dohtml tcsh.html/*.html
+ fi
+
+ insinto /etc
+ doins \
+ "${CONFDIR}"/csh.cshrc \
+ "${CONFDIR}"/csh.login
+
+ dodoc FAQ Fixes NewThings Ported README WishList Y2K
+
+ # bug #119703: add csh -> tcsh symlink
+ dosym /bin/tcsh /bin/csh
+}
diff --git a/app-shells/zsh-completions/Manifest b/app-shells/zsh-completions/Manifest
new file mode 100644
index 00000000000..eec029ad54b
--- /dev/null
+++ b/app-shells/zsh-completions/Manifest
@@ -0,0 +1 @@
+DIST zsh-completions-0.12.0.tar.gz 193410 SHA256 770d92749b11b22192595b207208508f8bfa319d5d03210a71bc44c8b9cfa0d5 SHA512 3c6b19f10d9598f40cf37ca5c5828e5652b0cad144d48ca681f5a16c1921c308f8cd3d9b8a2dd1c50ddbf167d4bb2e2e5299d1e30591971f4c7d9b28c2250feb WHIRLPOOL 7c5a1cb45d2e045fb0f8eb64deb8d87cab506f11b94996b9ff6cb169fd20672040bdc624de78a58ab5908d2222130de93a179a8e00d5aa75365af0ab0566852a
diff --git a/app-shells/zsh-completions/metadata.xml b/app-shells/zsh-completions/metadata.xml
new file mode 100644
index 00000000000..281af4337b4
--- /dev/null
+++ b/app-shells/zsh-completions/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>radhermit@gentoo.org</email>
+ <name>Tim Harder</name>
+ </maintainer>
+ <maintainer>
+ <email>mrueg@gentoo.org</email>
+ <name>Manuel Rüger</name>
+ <description>CC on bugs</description>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">zsh-users/zsh-completions</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/zsh-completions/zsh-completions-0.12.0-r2.ebuild b/app-shells/zsh-completions/zsh-completions-0.12.0-r2.ebuild
new file mode 100644
index 00000000000..3c772cbf82d
--- /dev/null
+++ b/app-shells/zsh-completions/zsh-completions-0.12.0-r2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+if [[ ${PV} == 9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/zsh-users/zsh-completions.git"
+else
+ SRC_URI="https://github.com/zsh-users/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="Additional completion definitions for Zsh"
+HOMEPAGE="https://github.com/zsh-users/zsh-completions"
+
+LICENSE="BSD"
+SLOT="0"
+
+RDEPEND="app-shells/zsh"
+
+src_prepare() {
+ # File collision with dev-python/pip
+ rm src/_pip || die
+ # File collision with app-emulation/docker
+ rm src/_docker || die
+}
+
+src_install() {
+ insinto /usr/share/zsh/site-functions
+ doins src/_*
+}
+
+pkg_postinst() {
+ elog
+ elog "If you happen to compile your functions, you may need to delete"
+ elog "~/.zcompdump{,.zwc} and recompile to make the new completions available"
+ elog "to your shell."
+ elog
+}
diff --git a/app-shells/zsh-completions/zsh-completions-9999.ebuild b/app-shells/zsh-completions/zsh-completions-9999.ebuild
new file mode 100644
index 00000000000..4f90e67f6b4
--- /dev/null
+++ b/app-shells/zsh-completions/zsh-completions-9999.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+if [[ ${PV} == 9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/zsh-users/zsh-completions.git"
+else
+ SRC_URI="https://github.com/zsh-users/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="Additional completion definitions for Zsh"
+HOMEPAGE="https://github.com/zsh-users/zsh-completions"
+
+LICENSE="BSD"
+SLOT="0"
+
+RDEPEND="app-shells/zsh"
+
+src_install() {
+ insinto /usr/share/zsh/site-functions
+ doins src/_*
+}
+
+pkg_postinst() {
+ elog
+ elog "If you happen to compile your functions, you may need to delete"
+ elog "~/.zcompdump{,.zwc} and recompile to make the new completions available"
+ elog "to your shell."
+ elog
+}
diff --git a/app-shells/zsh/Manifest b/app-shells/zsh/Manifest
new file mode 100644
index 00000000000..a7f03ef4e91
--- /dev/null
+++ b/app-shells/zsh/Manifest
@@ -0,0 +1,6 @@
+DIST zsh-5.0.5-doc.tar.bz2 2940018 SHA256 e4f22bafaa8410bbc2d83f2d748ca4764365752c46f7e1099be54f2a62c492f2 SHA512 341e4a62c7c2367d17c54c5133b7c0a74e6c0becfaddd3c1f5dbe782300bbd74b0fc2066e892776cb52ce11cd0600739bfd5a7dd067eaae8a1d11b1b2aa0c3b0 WHIRLPOOL 48e021bc2caf840d048888faf5cafea5ce698968479e1c8791f33dc36f9b0f60db16ff481e88ce8c903480d905b728eb9ff9dfc8fbcb066d3698cc0cc3a02d8a
+DIST zsh-5.0.5.tar.bz2 3104375 SHA256 6624d2fb6c8fa4e044d2b009f86ed1617fe8583c83acfceba7ec82826cfa8eaf SHA512 34d69bed190cbc476bcdaa4b703fee1caaeae7e011fe7ea595b29bbd31df57bbe4d19b5940618e0c89a0a4b6c476f9ef03ce9829b4fb3735c1aedf309b0225a5 WHIRLPOOL bf02ca194261e15e88a9e26212644aa7be1afcc8e73cd6bb18ffb8e1c1d46a8742fee109d92a3b455c418258df9ae74dece21a05ff0e54e8c370af094512af16
+DIST zsh-5.0.7-doc.tar.bz2 3005587 SHA256 43e8665ba9d9eca8370c64e2d4846e84f9111c628e5792f2aa639a7fb209fcf1 SHA512 5a8bdf00bb646bb844a2d953aed85de802fe2e8fa05a76382d3baeba8a0108fa2d0b137b7d9bf88eeeb77ea06843fe1c56ec1fece1389b502e39a16dd31f208c WHIRLPOOL 0364f134997e4df63e7d6e9b6c81030dcf96ce30bb329b353fccf682ab5e20964d028e6667d836ff1a4c70e27331632cc96c7871ba69afc611c7bbdd09c8508b
+DIST zsh-5.0.7.tar.bz2 3181030 SHA256 544e27de81740286b916d1d77c9f48ad7c26ad7943ed96d278abee67cf6704b3 SHA512 e309863b41c9f92996fb9301d96d1aa43270ef8a04626c946703675b16a0a2ac9fddc959184cd8c639bd061fc2dd21902b21515550f639faacccdabd59e256e5 WHIRLPOOL f7cfbc41a2c990f702fee4ee158db79ebaad794479a62ff0ccd1d466077556e93b5e563575f9fd25dde1cb5e3c3610a14c997155ea76d86293d0a08168a3a418
+DIST zsh-5.0.8-doc.tar.bz2 3204865 SHA256 0ee5088c47fa5ceac6e087c7e00f2ede3f5920a03d32220772342ce980339e40 SHA512 86f75cfa16a2d0acbd75dc11d16a9bd4813ea2f0c6e323ed6fd73e66250420333fe0be2dbd62171a36aa479b5b5b423777f7ca369afb29d0f456fb7ed68926f6 WHIRLPOOL 1b25a455e7617cf624f8656eef2064e35a3c7798aec3d2822522bb89cad11441e1658966c467ecd758fa9e02ffcc235ee036830fd00757a04c3ff8e1b21fc434
+DIST zsh-5.0.8.tar.bz2 3250542 SHA256 8079cf08cb8beff22f84b56bd72bb6e6962ff4718d816f3d83a633b4c9e17d23 SHA512 79e438e32802c030749fd1bfff07fb3e5e7f7864e5106233c6f51ea477aa5a8471449e22f262f03bf69f42e66bf39e3b8a93295a247436ce97c66409b582ceae WHIRLPOOL 3ed95b2763bd3e486104a9f935efc89fd9ff1b3d745c1c3a93181a511c2986246e4f14c6d15fd88dd735c006127523ce423150813147250343871c9e2f40f413
diff --git a/app-shells/zsh/files/prompt_gentoo_setup-1 b/app-shells/zsh/files/prompt_gentoo_setup-1
new file mode 100644
index 00000000000..046e2d87f53
--- /dev/null
+++ b/app-shells/zsh/files/prompt_gentoo_setup-1
@@ -0,0 +1,33 @@
+# gentoo prompt theme
+
+prompt_gentoo_help () {
+ cat <<'EOF'
+This prompt is color-scheme-able. You can invoke it thus:
+
+ prompt gentoo [<promptcolor> [<usercolor> [<rootcolor>]]]
+
+EOF
+}
+
+prompt_gentoo_setup () {
+ local prompt_gentoo_prompt=${1:-'blue'}
+ local prompt_gentoo_user=${2:-'green'}
+ local prompt_gentoo_root=${3:-'red'}
+
+ if [ "$USER" = 'root' ]
+ then
+ local base_prompt="%B%F{$prompt_gentoo_root}%m%k "
+ else
+ local base_prompt="%B%F{$prompt_gentoo_user}%n@%m%k "
+ fi
+ local post_prompt="%b%f%k"
+
+ #setopt noxtrace localoptions
+
+ local path_prompt="%B%F{$prompt_gentoo_prompt}%1~"
+ typeset -g PS1="$base_prompt$path_prompt %# $post_prompt"
+ typeset -g PS2="$base_prompt$path_prompt %_> $post_prompt"
+ typeset -g PS3="$base_prompt$path_prompt ?# $post_prompt"
+}
+
+prompt_gentoo_setup "$@"
diff --git a/app-shells/zsh/files/zprofile-1 b/app-shells/zsh/files/zprofile-1
new file mode 100644
index 00000000000..655c525e690
--- /dev/null
+++ b/app-shells/zsh/files/zprofile-1
@@ -0,0 +1,43 @@
+# @GENTOO_PORTAGE_EPREFIX@/etc/zsh/zprofile
+# $Id$
+
+# Load environment settings from profile.env, which is created by
+# env-update from the files in /etc/env.d
+if [ -e "@GENTOO_PORTAGE_EPREFIX@"/etc/profile.env ] ; then
+ . "@GENTOO_PORTAGE_EPREFIX@"/etc/profile.env
+fi
+
+# You should override these in your ~/.zprofile (or equivalent) for per-user
+# settings. For system defaults, you can add a new file in /etc/profile.d/.
+export EDITOR=${EDITOR:-/bin/nano}
+export PAGER=${PAGER:-/usr/bin/less}
+
+# 077 would be more secure, but 022 is generally quite realistic
+umask 022
+
+# Set up PATH depending on whether we're root or a normal user.
+# There's no real reason to exclude sbin paths from the normal user,
+# but it can make tab-completion easier when they aren't in the
+# user's PATH to pollute the executable namespace.
+#
+# It is intentional in the following line to use || instead of -o.
+# This way the evaluation can be short-circuited and calling whoami is
+# avoided.
+if [ "$EUID" = "0" ] || [ "$USER" = "root" ] ; then
+ @ZSH_NOPREFIX@PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:${ROOTPATH}"
+ @ZSH_PREFIX@PATH="@GENTOO_PORTAGE_EPREFIX@/usr/sbin:@GENTOO_PORTAGE_EPREFIX@/usr/bin:@GENTOO_PORTAGE_EPREFIX@/sbin:@GENTOO_PORTAGE_EPREFIX@/bin:${ROOTPATH}:/usr/sbin:/usr/bin:/sbin:/bin"
+else
+ @ZSH_NOPREFIX@PATH="/usr/local/bin:/usr/bin:/bin:${PATH}"
+ @ZSH_PREFIX@PATH="@GENTOO_PORTAGE_EPREFIX@/usr/bin:@GENTOO_PORTAGE_EPREFIX@/bin:${PATH}:/usr/bin:/bin"
+fi
+export PATH
+unset ROOTPATH
+
+shopts=$-
+setopt nullglob
+for sh in "@GENTOO_PORTAGE_EPREFIX@"/etc/profile.d/*.sh ; do
+ [ -r "$sh" ] && . "$sh"
+done
+unsetopt nullglob
+set -$shopts
+unset sh shopts
diff --git a/app-shells/zsh/files/zsh-5.0.7-fix-cvs-completion.patch b/app-shells/zsh/files/zsh-5.0.7-fix-cvs-completion.patch
new file mode 100644
index 00000000000..5beb7eca64c
--- /dev/null
+++ b/app-shells/zsh/files/zsh-5.0.7-fix-cvs-completion.patch
@@ -0,0 +1,19 @@
+http://www.zsh.org/mla/workers/2014/msg01191.html
+
+diff --git a/Completion/Base/Utility/_call_program b/Completion/Base/Utility/_call_program
+index b657648..010e094 100644
+--- a/Completion/Base/Utility/_call_program
++++ b/Completion/Base/Utility/_call_program
+@@ -2,8 +2,8 @@
+
+ local tmp err_fd=-1
+
+-if (( ${debug_fd:--1} > 2 ))
+-then exec {err_fd}>&2 # debug_fd is saved stderr, 2 is log file
++if (( ${debug_fd:--1} > 2 )) || [[ ! -t 2 ]]
++then exec {err_fd}>&2 # debug_fd is saved stderr, 2 is trace or redirect
+ else exec {err_fd}>/dev/null
+ fi
+
+
+--
diff --git a/app-shells/zsh/files/zsh-5.0.7-pid-ns.patch b/app-shells/zsh/files/zsh-5.0.7-pid-ns.patch
new file mode 100644
index 00000000000..928ce48b461
--- /dev/null
+++ b/app-shells/zsh/files/zsh-5.0.7-pid-ns.patch
@@ -0,0 +1,39 @@
+zsh and pid namespaces don't play very well together. Specifically, when zsh is
+launched inside a new pid namespace, it doesn't take ownership of the process
+group, causing things like SIGINT to be sent to the parent process. Upstream
+bug report here: http://www.zsh.org/mla/workers/2014/msg01769.html.
+
+The first chunk of this diff fixes this problem and has already been applied
+upstream:
+http://sourceforge.net/p/zsh/code/ci/0c4cb0cc1b527f4341f1a39a10f4120aa7c7d594/.
+
+The second chunk is a suggested fix for the warning that zsh prints when
+exiting: http://www.zsh.org/mla/workers/2014/msg01779.html.
+
+diff --git a/Src/jobs.c b/Src/jobs.c
+index a668b07..c6e1bce 100644
+--- a/Src/jobs.c
++++ b/Src/jobs.c
+@@ -2734,7 +2734,7 @@ acquire_pgrp(void)
+ long ttpgrp;
+ sigset_t blockset, oldset;
+
+- if ((mypgrp = GETPGRP()) > 0) {
++ if ((mypgrp = GETPGRP()) >= 0) {
+ long lastpgrp = mypgrp;
+ sigemptyset(&blockset);
+ sigaddset(&blockset, SIGTTIN);
+@@ -2779,8 +2779,11 @@ void
+ release_pgrp(void)
+ {
+ if (origpgrp != mypgrp) {
+- attachtty(origpgrp);
+- setpgrp(0, origpgrp);
++ /* in linux pid namespaces, origpgrp may never have been set */
++ if (origpgrp) {
++ attachtty(origpgrp);
++ setpgrp(0, origpgrp);
++ }
+ mypgrp = origpgrp;
+ }
+ }
diff --git a/app-shells/zsh/files/zsh-init.d-gentoo-r1.diff b/app-shells/zsh/files/zsh-init.d-gentoo-r1.diff
new file mode 100644
index 00000000000..9597a733c90
--- /dev/null
+++ b/app-shells/zsh/files/zsh-init.d-gentoo-r1.diff
@@ -0,0 +1,30 @@
+--- zsh-4.3.11/Completion/Unix/Command/_init_d
++++ zsh-4.3.11/Completion/Unix/Command/_init_d
+@@ -1,6 +1,6 @@
+ #compdef -p */(init|rc[0-9S]#).d/*
+
+-local cmds script
++local cmds script opts
+
+ _compskip=all
+
+@@ -83,10 +83,17 @@
+
+ script=$words[1]
+ [[ $script = */* ]] || script="$(_init_d_fullpath "$script")"
++[[ ! -f $script ]] &&
++ { _message "${words[1]:t} is not an init script" && return }
+
+ cmds=( $(_init_d_get_cmds) ) || return
+
+-(( $#cmds )) || zstyle -a ":completion:${curcontext}:commands" commands cmds ||
+- cmds=(start stop)
++(( $#cmds )) || zstyle -a ":completion:${curcontext}:commands" commands cmds
++opts=(start stop restart pause zap status ineed iuse needsme usesme broken)
++
++# If we didn't get $cmds from a zstyle, then read init script for opts.
++# If script doesn't specify opts, then default to the standard opts.
++(( $#cmds )) || cmds=( ${(eQz)${(M)${(f)"$( <$script)"}:#[[:blank:]]#opts=*}#*=} )
++(( $#cmds )) || cmds=($opts)
+
+ _sub_commands $cmds
diff --git a/app-shells/zsh/metadata.xml b/app-shells/zsh/metadata.xml
new file mode 100644
index 00000000000..d02793c9ff3
--- /dev/null
+++ b/app-shells/zsh/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>radhermit@gentoo.org</email>
+ <name>Tim Harder</name>
+</maintainer>
+<longdescription>
+ Zsh is a shell designed for interactive use, although it is also a
+ powerful scripting language. Many of the useful features of bash, ksh,
+ and tcsh were incorporated into zsh; many original features were
+ added.
+</longdescription>
+</pkgmetadata>
diff --git a/app-shells/zsh/zsh-5.0.5.ebuild b/app-shells/zsh/zsh-5.0.5.ebuild
new file mode 100644
index 00000000000..58e851ad6b0
--- /dev/null
+++ b/app-shells/zsh/zsh-5.0.5.ebuild
@@ -0,0 +1,170 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic multilib prefix
+
+DESCRIPTION="UNIX Shell similar to the Korn shell"
+HOMEPAGE="http://www.zsh.org/"
+SRC_URI="http://www.zsh.org/pub/${P}.tar.bz2
+ doc? ( http://www.zsh.org/pub/${P}-doc.tar.bz2 )"
+
+LICENSE="ZSH gdbm? ( GPL-2 )"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="caps debug doc examples gdbm maildir pcre static unicode"
+
+RDEPEND="
+ >=sys-libs/ncurses-5.1
+ static? ( >=sys-libs/ncurses-5.7-r4[static-libs] )
+ caps? ( sys-libs/libcap )
+ pcre? ( >=dev-libs/libpcre-3.9
+ static? ( >=dev-libs/libpcre-3.9[static-libs] ) )
+ gdbm? ( sys-libs/gdbm )
+"
+DEPEND="sys-apps/groff
+ ${RDEPEND}"
+PDEPEND="
+ examples? ( app-doc/zsh-lovers )
+"
+
+src_prepare() {
+ # fix zshall problem with soelim
+ ln -s Doc man1
+ mv Doc/zshall.1 Doc/zshall.1.soelim
+ soelim Doc/zshall.1.soelim > Doc/zshall.1
+
+ epatch "${FILESDIR}"/${PN}-init.d-gentoo-r1.diff
+
+ cp "${FILESDIR}"/zprofile-1 "${T}"/zprofile || die
+ eprefixify "${T}"/zprofile || die
+ if use prefix ; then
+ sed -i -e 's|@ZSH_PREFIX@||' -e '/@ZSH_NOPREFIX@/d' "${T}"/zprofile || die
+ else
+ sed -i -e 's|@ZSH_NOPREFIX@||' -e '/@ZSH_PREFIX@/d' -e 's|""||' "${T}"/zprofile || die
+ fi
+}
+
+src_configure() {
+ local myconf=
+
+ if use static ; then
+ myconf+=" --disable-dynamic"
+ append-ldflags -static
+ fi
+ if use debug ; then
+ myconf+=" \
+ --enable-zsh-debug \
+ --enable-zsh-mem-debug \
+ --enable-zsh-mem-warning \
+ --enable-zsh-secure-free \
+ --enable-zsh-hash-debug"
+ fi
+
+ if [[ ${CHOST} == *-darwin* ]]; then
+ myconf+=" --enable-libs=-liconv"
+ append-ldflags -Wl,-x
+ fi
+
+ econf \
+ --bindir="${EPREFIX}"/bin \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --enable-etcdir="${EPREFIX}"/etc/zsh \
+ --enable-runhelpdir="${EPREFIX}"/usr/share/zsh/${PV%_*}/help \
+ --enable-fndir="${EPREFIX}"/usr/share/zsh/${PV%_*}/functions \
+ --enable-site-fndir="${EPREFIX}"/usr/share/zsh/site-functions \
+ --enable-function-subdirs \
+ --with-tcsetpgrp \
+ $(use_enable maildir maildir-support) \
+ $(use_enable pcre) \
+ $(use_enable caps cap) \
+ $(use_enable unicode multibyte) \
+ $(use_enable gdbm ) \
+ ${myconf}
+
+ if use static ; then
+ # compile all modules statically, see Bug #27392
+ # removed cap and curses because linking failes
+ sed -i \
+ -e "s,link=no,link=static,g" \
+ -e "/^name=zsh\/cap/s,link=static,link=no," \
+ -e "/^name=zsh\/curses/s,link=static,link=no," \
+ "${S}"/config.modules || die
+ if ! use gdbm ; then
+ sed -i '/^name=zsh\/db\/gdbm/s,link=static,link=no,' \
+ "${S}"/config.modules || die
+ fi
+ fi
+}
+
+src_test() {
+ addpredict /dev/ptmx
+ local i
+ for i in C02cond.ztst V08zpty.ztst X02zlevi.ztst Y01completion.ztst Y02compmatch.ztst Y03arguments.ztst ; do
+ rm "${S}"/Test/${i} || die
+ done
+ emake check
+}
+
+src_install() {
+ emake DESTDIR="${D}" install install.info
+
+ insinto /etc/zsh
+ doins "${T}"/zprofile
+
+ keepdir /usr/share/zsh/site-functions
+ insinto /usr/share/zsh/${PV%_*}/functions/Prompts
+ newins "${FILESDIR}"/prompt_gentoo_setup-1 prompt_gentoo_setup
+
+ # install miscellaneous scripts; bug #54520
+ local i
+ sed -i -e "s:/usr/local/bin/perl:${EPREFIX}/usr/bin/perl:g" \
+ -e "s:/usr/local/bin/zsh:${EPREFIX}/bin/zsh:g" "${S}"/{Util,Misc}/* || die
+ for i in Util Misc ; do
+ insinto /usr/share/zsh/${PV%_*}/${i}
+ doins ${i}/*
+ done
+
+ dodoc ChangeLog* META-FAQ NEWS README config.modules
+
+ if use doc ; then
+ pushd "${WORKDIR}/${PN}-${PV%_*}" >/dev/null
+ dohtml -r Doc/*
+ insinto /usr/share/doc/${PF}
+ doins Doc/zsh.{dvi,pdf}
+ popd >/dev/null
+ fi
+
+ docinto StartupFiles
+ dodoc StartupFiles/z*
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ # should link to http://www.gentoo.org/doc/en/zsh.xml
+ echo
+ elog "If you want to enable Portage completions and Gentoo prompt,"
+ elog "emerge app-shells/gentoo-zsh-completions and add"
+ elog " autoload -U compinit promptinit"
+ elog " compinit"
+ elog " promptinit; prompt gentoo"
+ elog "to your ~/.zshrc"
+ echo
+ elog "Also, if you want to enable cache for the completions, add"
+ elog " zstyle ':completion::complete:*' use-cache 1"
+ elog "to your ~/.zshrc"
+ echo
+ elog "Note that a system zprofile startup file is installed. This will override"
+ elog "PATH and possibly other variables that a user may set in ~/.zshenv."
+ elog "Custom PATH settings and similar overridden variables can be moved to ~/.zprofile"
+ elog "or other user startup files that are sourced after the system zprofile."
+ echo
+ elog "If PATH must be set in ~/.zshenv to affect things like non-login ssh shells,"
+ elog "one method is to use a separate path-setting file that is conditionally sourced"
+ elog "in ~/.zshenv and also sourced from ~/.zprofile. For more information, see the"
+ elog "zshenv example in ${EROOT}/usr/share/doc/${PF}/StartupFiles/."
+ echo
+ fi
+}
diff --git a/app-shells/zsh/zsh-5.0.7-r1.ebuild b/app-shells/zsh/zsh-5.0.7-r1.ebuild
new file mode 100644
index 00000000000..21fdb7879ee
--- /dev/null
+++ b/app-shells/zsh/zsh-5.0.7-r1.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic multilib prefix
+
+DESCRIPTION="UNIX Shell similar to the Korn shell"
+HOMEPAGE="http://www.zsh.org/"
+SRC_URI="http://www.zsh.org/pub/${P}.tar.bz2
+ doc? ( http://www.zsh.org/pub/${P}-doc.tar.bz2 )"
+
+LICENSE="ZSH gdbm? ( GPL-2 )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="caps debug doc examples gdbm maildir pcre static unicode"
+
+RDEPEND="
+ >=sys-libs/ncurses-5.1
+ static? ( >=sys-libs/ncurses-5.7-r4[static-libs] )
+ caps? ( sys-libs/libcap )
+ pcre? ( >=dev-libs/libpcre-3.9
+ static? ( >=dev-libs/libpcre-3.9[static-libs] ) )
+ gdbm? ( sys-libs/gdbm )
+"
+DEPEND="sys-apps/groff
+ ${RDEPEND}"
+PDEPEND="
+ examples? ( app-doc/zsh-lovers )
+"
+
+src_prepare() {
+ # fix zshall problem with soelim
+ ln -s Doc man1
+ mv Doc/zshall.1 Doc/zshall.1.soelim
+ soelim Doc/zshall.1.soelim > Doc/zshall.1
+
+ epatch "${FILESDIR}"/${PN}-init.d-gentoo-r1.diff
+
+ cp "${FILESDIR}"/zprofile-1 "${T}"/zprofile || die
+ eprefixify "${T}"/zprofile || die
+ if use prefix ; then
+ sed -i -e 's|@ZSH_PREFIX@||' -e '/@ZSH_NOPREFIX@/d' "${T}"/zprofile || die
+ else
+ sed -i -e 's|@ZSH_NOPREFIX@||' -e '/@ZSH_PREFIX@/d' -e 's|""||' "${T}"/zprofile || die
+ fi
+
+ # fix cvs completion
+ epatch "${FILESDIR}"/${P}-fix-cvs-completion.patch
+}
+
+src_configure() {
+ local myconf=
+
+ if use static ; then
+ myconf+=" --disable-dynamic"
+ append-ldflags -static
+ fi
+ if use debug ; then
+ myconf+=" \
+ --enable-zsh-debug \
+ --enable-zsh-mem-debug \
+ --enable-zsh-mem-warning \
+ --enable-zsh-secure-free \
+ --enable-zsh-hash-debug"
+ fi
+
+ if [[ ${CHOST} == *-darwin* ]]; then
+ myconf+=" --enable-libs=-liconv"
+ append-ldflags -Wl,-x
+ fi
+
+ econf \
+ --bindir="${EPREFIX}"/bin \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --enable-etcdir="${EPREFIX}"/etc/zsh \
+ --enable-runhelpdir="${EPREFIX}"/usr/share/zsh/${PV%_*}/help \
+ --enable-fndir="${EPREFIX}"/usr/share/zsh/${PV%_*}/functions \
+ --enable-site-fndir="${EPREFIX}"/usr/share/zsh/site-functions \
+ --enable-function-subdirs \
+ --with-tcsetpgrp \
+ $(use_enable maildir maildir-support) \
+ $(use_enable pcre) \
+ $(use_enable caps cap) \
+ $(use_enable unicode multibyte) \
+ $(use_enable gdbm ) \
+ ${myconf}
+
+ if use static ; then
+ # compile all modules statically, see Bug #27392
+ # removed cap and curses because linking failes
+ sed -i \
+ -e "s,link=no,link=static,g" \
+ -e "/^name=zsh\/cap/s,link=static,link=no," \
+ -e "/^name=zsh\/curses/s,link=static,link=no," \
+ "${S}"/config.modules || die
+ if ! use gdbm ; then
+ sed -i '/^name=zsh\/db\/gdbm/s,link=static,link=no,' \
+ "${S}"/config.modules || die
+ fi
+ fi
+}
+
+src_test() {
+ addpredict /dev/ptmx
+ local i
+ for i in C02cond.ztst V08zpty.ztst X02zlevi.ztst Y01completion.ztst Y02compmatch.ztst Y03arguments.ztst ; do
+ rm "${S}"/Test/${i} || die
+ done
+ emake check
+}
+
+src_install() {
+ emake DESTDIR="${D}" install install.info
+
+ insinto /etc/zsh
+ doins "${T}"/zprofile
+
+ keepdir /usr/share/zsh/site-functions
+ insinto /usr/share/zsh/${PV%_*}/functions/Prompts
+ newins "${FILESDIR}"/prompt_gentoo_setup-1 prompt_gentoo_setup
+
+ # install miscellaneous scripts; bug #54520
+ local i
+ sed -i -e "s:/usr/local/bin/perl:${EPREFIX}/usr/bin/perl:g" \
+ -e "s:/usr/local/bin/zsh:${EPREFIX}/bin/zsh:g" "${S}"/{Util,Misc}/* || die
+ for i in Util Misc ; do
+ insinto /usr/share/zsh/${PV%_*}/${i}
+ doins ${i}/*
+ done
+
+ dodoc ChangeLog* META-FAQ NEWS README config.modules
+
+ if use doc ; then
+ pushd "${WORKDIR}/${PN}-${PV%_*}" >/dev/null
+ dohtml -r Doc/*
+ insinto /usr/share/doc/${PF}
+ doins Doc/zsh.{dvi,pdf}
+ popd >/dev/null
+ fi
+
+ docinto StartupFiles
+ dodoc StartupFiles/z*
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ # should link to http://www.gentoo.org/doc/en/zsh.xml
+ echo
+ elog "If you want to enable Portage completions and Gentoo prompt,"
+ elog "emerge app-shells/gentoo-zsh-completions and add"
+ elog " autoload -U compinit promptinit"
+ elog " compinit"
+ elog " promptinit; prompt gentoo"
+ elog "to your ~/.zshrc"
+ echo
+ elog "Also, if you want to enable cache for the completions, add"
+ elog " zstyle ':completion::complete:*' use-cache 1"
+ elog "to your ~/.zshrc"
+ echo
+ elog "Note that a system zprofile startup file is installed. This will override"
+ elog "PATH and possibly other variables that a user may set in ~/.zshenv."
+ elog "Custom PATH settings and similar overridden variables can be moved to ~/.zprofile"
+ elog "or other user startup files that are sourced after the system zprofile."
+ echo
+ elog "If PATH must be set in ~/.zshenv to affect things like non-login ssh shells,"
+ elog "one method is to use a separate path-setting file that is conditionally sourced"
+ elog "in ~/.zshenv and also sourced from ~/.zprofile. For more information, see the"
+ elog "zshenv example in ${EROOT}/usr/share/doc/${PF}/StartupFiles/."
+ echo
+ fi
+}
diff --git a/app-shells/zsh/zsh-5.0.7-r2.ebuild b/app-shells/zsh/zsh-5.0.7-r2.ebuild
new file mode 100644
index 00000000000..b6e7712d5ef
--- /dev/null
+++ b/app-shells/zsh/zsh-5.0.7-r2.ebuild
@@ -0,0 +1,174 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic multilib prefix
+
+DESCRIPTION="UNIX Shell similar to the Korn shell"
+HOMEPAGE="http://www.zsh.org/"
+SRC_URI="http://www.zsh.org/pub/${P}.tar.bz2
+ doc? ( http://www.zsh.org/pub/${P}-doc.tar.bz2 )"
+
+LICENSE="ZSH gdbm? ( GPL-2 )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="caps debug doc examples gdbm maildir pcre static unicode"
+
+RDEPEND="
+ >=sys-libs/ncurses-5.1
+ static? ( >=sys-libs/ncurses-5.7-r4[static-libs] )
+ caps? ( sys-libs/libcap )
+ pcre? ( >=dev-libs/libpcre-3.9
+ static? ( >=dev-libs/libpcre-3.9[static-libs] ) )
+ gdbm? ( sys-libs/gdbm )
+"
+DEPEND="sys-apps/groff
+ ${RDEPEND}"
+PDEPEND="
+ examples? ( app-doc/zsh-lovers )
+"
+
+src_prepare() {
+ # fix zshall problem with soelim
+ ln -s Doc man1
+ mv Doc/zshall.1 Doc/zshall.1.soelim
+ soelim Doc/zshall.1.soelim > Doc/zshall.1
+
+ epatch "${FILESDIR}"/${PN}-init.d-gentoo-r1.diff
+ epatch "${FILESDIR}"/${P}-pid-ns.patch
+
+ cp "${FILESDIR}"/zprofile-1 "${T}"/zprofile || die
+ eprefixify "${T}"/zprofile || die
+ if use prefix ; then
+ sed -i -e 's|@ZSH_PREFIX@||' -e '/@ZSH_NOPREFIX@/d' "${T}"/zprofile || die
+ else
+ sed -i -e 's|@ZSH_NOPREFIX@||' -e '/@ZSH_PREFIX@/d' -e 's|""||' "${T}"/zprofile || die
+ fi
+
+ # fix cvs completion
+ epatch "${FILESDIR}"/${P}-fix-cvs-completion.patch
+}
+
+src_configure() {
+ local myconf=
+
+ if use static ; then
+ myconf+=" --disable-dynamic"
+ append-ldflags -static
+ fi
+ if use debug ; then
+ myconf+=" \
+ --enable-zsh-debug \
+ --enable-zsh-mem-debug \
+ --enable-zsh-mem-warning \
+ --enable-zsh-secure-free \
+ --enable-zsh-hash-debug"
+ fi
+
+ if [[ ${CHOST} == *-darwin* ]]; then
+ myconf+=" --enable-libs=-liconv"
+ append-ldflags -Wl,-x
+ fi
+
+ econf \
+ --bindir="${EPREFIX}"/bin \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --enable-etcdir="${EPREFIX}"/etc/zsh \
+ --enable-runhelpdir="${EPREFIX}"/usr/share/zsh/${PV%_*}/help \
+ --enable-fndir="${EPREFIX}"/usr/share/zsh/${PV%_*}/functions \
+ --enable-site-fndir="${EPREFIX}"/usr/share/zsh/site-functions \
+ --enable-function-subdirs \
+ --with-tcsetpgrp \
+ $(use_enable maildir maildir-support) \
+ $(use_enable pcre) \
+ $(use_enable caps cap) \
+ $(use_enable unicode multibyte) \
+ $(use_enable gdbm ) \
+ ${myconf}
+
+ if use static ; then
+ # compile all modules statically, see Bug #27392
+ # removed cap and curses because linking failes
+ sed -i \
+ -e "s,link=no,link=static,g" \
+ -e "/^name=zsh\/cap/s,link=static,link=no," \
+ -e "/^name=zsh\/curses/s,link=static,link=no," \
+ "${S}"/config.modules || die
+ if ! use gdbm ; then
+ sed -i '/^name=zsh\/db\/gdbm/s,link=static,link=no,' \
+ "${S}"/config.modules || die
+ fi
+ fi
+}
+
+src_test() {
+ addpredict /dev/ptmx
+ local i
+ for i in C02cond.ztst V08zpty.ztst X02zlevi.ztst Y01completion.ztst Y02compmatch.ztst Y03arguments.ztst ; do
+ rm "${S}"/Test/${i} || die
+ done
+ emake check
+}
+
+src_install() {
+ emake DESTDIR="${D}" install install.info
+
+ insinto /etc/zsh
+ doins "${T}"/zprofile
+
+ keepdir /usr/share/zsh/site-functions
+ insinto /usr/share/zsh/${PV%_*}/functions/Prompts
+ newins "${FILESDIR}"/prompt_gentoo_setup-1 prompt_gentoo_setup
+
+ # install miscellaneous scripts; bug #54520
+ local i
+ sed -i -e "s:/usr/local/bin/perl:${EPREFIX}/usr/bin/perl:g" \
+ -e "s:/usr/local/bin/zsh:${EPREFIX}/bin/zsh:g" "${S}"/{Util,Misc}/* || die
+ for i in Util Misc ; do
+ insinto /usr/share/zsh/${PV%_*}/${i}
+ doins ${i}/*
+ done
+
+ dodoc ChangeLog* META-FAQ NEWS README config.modules
+
+ if use doc ; then
+ pushd "${WORKDIR}/${PN}-${PV%_*}" >/dev/null
+ dohtml -r Doc/*
+ insinto /usr/share/doc/${PF}
+ doins Doc/zsh.{dvi,pdf}
+ popd >/dev/null
+ fi
+
+ docinto StartupFiles
+ dodoc StartupFiles/z*
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ # should link to http://www.gentoo.org/doc/en/zsh.xml
+ echo
+ elog "If you want to enable Portage completions and Gentoo prompt,"
+ elog "emerge app-shells/gentoo-zsh-completions and add"
+ elog " autoload -U compinit promptinit"
+ elog " compinit"
+ elog " promptinit; prompt gentoo"
+ elog "to your ~/.zshrc"
+ echo
+ elog "Also, if you want to enable cache for the completions, add"
+ elog " zstyle ':completion::complete:*' use-cache 1"
+ elog "to your ~/.zshrc"
+ echo
+ elog "Note that a system zprofile startup file is installed. This will override"
+ elog "PATH and possibly other variables that a user may set in ~/.zshenv."
+ elog "Custom PATH settings and similar overridden variables can be moved to ~/.zprofile"
+ elog "or other user startup files that are sourced after the system zprofile."
+ echo
+ elog "If PATH must be set in ~/.zshenv to affect things like non-login ssh shells,"
+ elog "one method is to use a separate path-setting file that is conditionally sourced"
+ elog "in ~/.zshenv and also sourced from ~/.zprofile. For more information, see the"
+ elog "zshenv example in ${EROOT}/usr/share/doc/${PF}/StartupFiles/."
+ echo
+ fi
+}
diff --git a/app-shells/zsh/zsh-5.0.8.ebuild b/app-shells/zsh/zsh-5.0.8.ebuild
new file mode 100644
index 00000000000..d2cb1232d69
--- /dev/null
+++ b/app-shells/zsh/zsh-5.0.8.ebuild
@@ -0,0 +1,210 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic multilib prefix
+
+if [[ ${PV} == 9999* ]] ; then
+ inherit git-r3 autotools
+ EGIT_REPO_URI="git://git.code.sf.net/p/zsh/code"
+else
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ SRC_URI="http://www.zsh.org/pub/${P}.tar.bz2
+ doc? ( http://www.zsh.org/pub/${P}-doc.tar.bz2 )"
+fi
+
+DESCRIPTION="UNIX Shell similar to the Korn shell"
+HOMEPAGE="http://www.zsh.org/"
+
+LICENSE="ZSH gdbm? ( GPL-2 )"
+SLOT="0"
+IUSE="caps debug doc examples gdbm maildir pcre static unicode"
+
+RDEPEND="
+ >=sys-libs/ncurses-5.1
+ static? ( >=sys-libs/ncurses-5.7-r4[static-libs] )
+ caps? ( sys-libs/libcap )
+ pcre? ( >=dev-libs/libpcre-3.9
+ static? ( >=dev-libs/libpcre-3.9[static-libs] ) )
+ gdbm? ( sys-libs/gdbm )
+"
+DEPEND="sys-apps/groff
+ ${RDEPEND}"
+PDEPEND="
+ examples? ( app-doc/zsh-lovers )
+"
+if [[ ${PV} == 9999* ]] ; then
+ DEPEND+=" app-text/yodl
+ doc? (
+ sys-apps/texinfo
+ app-text/texi2html
+ virtual/latex-base
+ )"
+fi
+
+src_prepare() {
+ # fix zshall problem with soelim
+ ln -s Doc man1
+ mv Doc/zshall.1 Doc/zshall.1.soelim
+ soelim Doc/zshall.1.soelim > Doc/zshall.1
+
+ epatch "${FILESDIR}"/${PN}-init.d-gentoo-r1.diff
+
+ cp "${FILESDIR}"/zprofile-1 "${T}"/zprofile || die
+ eprefixify "${T}"/zprofile || die
+ if use prefix ; then
+ sed -i -e 's|@ZSH_PREFIX@||' -e '/@ZSH_NOPREFIX@/d' "${T}"/zprofile || die
+ else
+ sed -i -e 's|@ZSH_NOPREFIX@||' -e '/@ZSH_PREFIX@/d' -e 's|""||' "${T}"/zprofile || die
+ fi
+
+ if [[ ${PV} == 9999* ]] ; then
+ sed -i "/^VERSION=/s/=.*/=${PV}/" Config/version.mk || die
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ local myconf=()
+
+ if use static ; then
+ myconf+=( --disable-dynamic )
+ append-ldflags -static
+ fi
+ if use debug ; then
+ myconf+=(
+ --enable-zsh-debug
+ --enable-zsh-mem-debug
+ --enable-zsh-mem-warning
+ --enable-zsh-secure-free
+ --enable-zsh-hash-debug
+ )
+ fi
+
+ if [[ ${CHOST} == *-darwin* ]]; then
+ myconf+=( --enable-libs=-liconv )
+ append-ldflags -Wl,-x
+ fi
+
+ econf \
+ --bindir="${EPREFIX}"/bin \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --enable-etcdir="${EPREFIX}"/etc/zsh \
+ --enable-runhelpdir="${EPREFIX}"/usr/share/zsh/${PV%_*}/help \
+ --enable-fndir="${EPREFIX}"/usr/share/zsh/${PV%_*}/functions \
+ --enable-site-fndir="${EPREFIX}"/usr/share/zsh/site-functions \
+ --enable-function-subdirs \
+ --with-tcsetpgrp \
+ $(use_enable maildir maildir-support) \
+ $(use_enable pcre) \
+ $(use_enable caps cap) \
+ $(use_enable unicode multibyte) \
+ $(use_enable gdbm ) \
+ "${myconf[@]}"
+
+ if use static ; then
+ # compile all modules statically, see Bug #27392
+ # removed cap and curses because linking failes
+ sed -e "s,link=no,link=static,g" \
+ -e "/^name=zsh\/cap/s,link=static,link=no," \
+ -e "/^name=zsh\/curses/s,link=static,link=no," \
+ -i "${S}"/config.modules || die
+ if ! use gdbm ; then
+ sed -i '/^name=zsh\/db\/gdbm/s,link=static,link=no,' \
+ "${S}"/config.modules || die
+ fi
+ fi
+}
+
+src_compile() {
+ default
+
+ if [[ ${PV} == 9999* ]] && use doc ; then
+ emake -C Doc everything
+ fi
+}
+
+src_test() {
+ addpredict /dev/ptmx
+ local i
+ for i in C02cond.ztst V08zpty.ztst X02zlevi.ztst Y01completion.ztst Y02compmatch.ztst Y03arguments.ztst ; do
+ rm "${S}"/Test/${i} || die
+ done
+ emake check
+}
+
+src_install() {
+ emake DESTDIR="${D}" install install.info
+
+ insinto /etc/zsh
+ doins "${T}"/zprofile
+
+ keepdir /usr/share/zsh/site-functions
+ insinto /usr/share/zsh/${PV%_*}/functions/Prompts
+ newins "${FILESDIR}"/prompt_gentoo_setup-1 prompt_gentoo_setup
+
+ local i
+
+ # install miscellaneous scripts (bug #54520)
+ sed -e "s:/usr/local/bin/perl:${EPREFIX}/usr/bin/perl:g" \
+ -e "s:/usr/local/bin/zsh:${EPREFIX}/bin/zsh:g" \
+ -i {Util,Misc}/* || die
+ for i in Util Misc ; do
+ insinto /usr/share/zsh/${PV%_*}/${i}
+ doins ${i}/*
+ done
+
+ # install header files (bug #538684)
+ insinto /usr/include/zsh
+ doins config.h Src/*.epro
+ for i in Src/{zsh.mdh,*.h} ; do
+ sed -e 's@\.\./config\.h@config.h@' \
+ -e 's@#\(\s*\)include "\([^"]\+\)"@#\1include <zsh/\2>@' \
+ -i "${i}"
+ doins "${i}"
+ done
+
+ dodoc ChangeLog* META-FAQ NEWS README config.modules
+
+ if use doc ; then
+ pushd "${WORKDIR}/${PN}-${PV%_*}" >/dev/null
+ dohtml -r Doc/*
+ insinto /usr/share/doc/${PF}
+ doins Doc/zsh.{dvi,pdf}
+ popd >/dev/null
+ fi
+
+ docinto StartupFiles
+ dodoc StartupFiles/z*
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ echo
+ elog "If you want to enable Portage completions and Gentoo prompt,"
+ elog "emerge app-shells/gentoo-zsh-completions and add"
+ elog " autoload -U compinit promptinit"
+ elog " compinit"
+ elog " promptinit; prompt gentoo"
+ elog "to your ~/.zshrc"
+ echo
+ elog "Also, if you want to enable cache for the completions, add"
+ elog " zstyle ':completion::complete:*' use-cache 1"
+ elog "to your ~/.zshrc"
+ echo
+ elog "Note that a system zprofile startup file is installed. This will override"
+ elog "PATH and possibly other variables that a user may set in ~/.zshenv."
+ elog "Custom PATH settings and similar overridden variables can be moved to ~/.zprofile"
+ elog "or other user startup files that are sourced after the system zprofile."
+ echo
+ elog "If PATH must be set in ~/.zshenv to affect things like non-login ssh shells,"
+ elog "one method is to use a separate path-setting file that is conditionally sourced"
+ elog "in ~/.zshenv and also sourced from ~/.zprofile. For more information, see the"
+ elog "zshenv example in ${EROOT}/usr/share/doc/${PF}/StartupFiles/."
+ echo
+ elog "See https://wiki.gentoo.org/wiki/Zsh/HOWTO for more introduction documentation."
+ echo
+ fi
+}
diff --git a/app-shells/zsh/zsh-9999.ebuild b/app-shells/zsh/zsh-9999.ebuild
new file mode 100644
index 00000000000..d2cb1232d69
--- /dev/null
+++ b/app-shells/zsh/zsh-9999.ebuild
@@ -0,0 +1,210 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic multilib prefix
+
+if [[ ${PV} == 9999* ]] ; then
+ inherit git-r3 autotools
+ EGIT_REPO_URI="git://git.code.sf.net/p/zsh/code"
+else
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ SRC_URI="http://www.zsh.org/pub/${P}.tar.bz2
+ doc? ( http://www.zsh.org/pub/${P}-doc.tar.bz2 )"
+fi
+
+DESCRIPTION="UNIX Shell similar to the Korn shell"
+HOMEPAGE="http://www.zsh.org/"
+
+LICENSE="ZSH gdbm? ( GPL-2 )"
+SLOT="0"
+IUSE="caps debug doc examples gdbm maildir pcre static unicode"
+
+RDEPEND="
+ >=sys-libs/ncurses-5.1
+ static? ( >=sys-libs/ncurses-5.7-r4[static-libs] )
+ caps? ( sys-libs/libcap )
+ pcre? ( >=dev-libs/libpcre-3.9
+ static? ( >=dev-libs/libpcre-3.9[static-libs] ) )
+ gdbm? ( sys-libs/gdbm )
+"
+DEPEND="sys-apps/groff
+ ${RDEPEND}"
+PDEPEND="
+ examples? ( app-doc/zsh-lovers )
+"
+if [[ ${PV} == 9999* ]] ; then
+ DEPEND+=" app-text/yodl
+ doc? (
+ sys-apps/texinfo
+ app-text/texi2html
+ virtual/latex-base
+ )"
+fi
+
+src_prepare() {
+ # fix zshall problem with soelim
+ ln -s Doc man1
+ mv Doc/zshall.1 Doc/zshall.1.soelim
+ soelim Doc/zshall.1.soelim > Doc/zshall.1
+
+ epatch "${FILESDIR}"/${PN}-init.d-gentoo-r1.diff
+
+ cp "${FILESDIR}"/zprofile-1 "${T}"/zprofile || die
+ eprefixify "${T}"/zprofile || die
+ if use prefix ; then
+ sed -i -e 's|@ZSH_PREFIX@||' -e '/@ZSH_NOPREFIX@/d' "${T}"/zprofile || die
+ else
+ sed -i -e 's|@ZSH_NOPREFIX@||' -e '/@ZSH_PREFIX@/d' -e 's|""||' "${T}"/zprofile || die
+ fi
+
+ if [[ ${PV} == 9999* ]] ; then
+ sed -i "/^VERSION=/s/=.*/=${PV}/" Config/version.mk || die
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ local myconf=()
+
+ if use static ; then
+ myconf+=( --disable-dynamic )
+ append-ldflags -static
+ fi
+ if use debug ; then
+ myconf+=(
+ --enable-zsh-debug
+ --enable-zsh-mem-debug
+ --enable-zsh-mem-warning
+ --enable-zsh-secure-free
+ --enable-zsh-hash-debug
+ )
+ fi
+
+ if [[ ${CHOST} == *-darwin* ]]; then
+ myconf+=( --enable-libs=-liconv )
+ append-ldflags -Wl,-x
+ fi
+
+ econf \
+ --bindir="${EPREFIX}"/bin \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --enable-etcdir="${EPREFIX}"/etc/zsh \
+ --enable-runhelpdir="${EPREFIX}"/usr/share/zsh/${PV%_*}/help \
+ --enable-fndir="${EPREFIX}"/usr/share/zsh/${PV%_*}/functions \
+ --enable-site-fndir="${EPREFIX}"/usr/share/zsh/site-functions \
+ --enable-function-subdirs \
+ --with-tcsetpgrp \
+ $(use_enable maildir maildir-support) \
+ $(use_enable pcre) \
+ $(use_enable caps cap) \
+ $(use_enable unicode multibyte) \
+ $(use_enable gdbm ) \
+ "${myconf[@]}"
+
+ if use static ; then
+ # compile all modules statically, see Bug #27392
+ # removed cap and curses because linking failes
+ sed -e "s,link=no,link=static,g" \
+ -e "/^name=zsh\/cap/s,link=static,link=no," \
+ -e "/^name=zsh\/curses/s,link=static,link=no," \
+ -i "${S}"/config.modules || die
+ if ! use gdbm ; then
+ sed -i '/^name=zsh\/db\/gdbm/s,link=static,link=no,' \
+ "${S}"/config.modules || die
+ fi
+ fi
+}
+
+src_compile() {
+ default
+
+ if [[ ${PV} == 9999* ]] && use doc ; then
+ emake -C Doc everything
+ fi
+}
+
+src_test() {
+ addpredict /dev/ptmx
+ local i
+ for i in C02cond.ztst V08zpty.ztst X02zlevi.ztst Y01completion.ztst Y02compmatch.ztst Y03arguments.ztst ; do
+ rm "${S}"/Test/${i} || die
+ done
+ emake check
+}
+
+src_install() {
+ emake DESTDIR="${D}" install install.info
+
+ insinto /etc/zsh
+ doins "${T}"/zprofile
+
+ keepdir /usr/share/zsh/site-functions
+ insinto /usr/share/zsh/${PV%_*}/functions/Prompts
+ newins "${FILESDIR}"/prompt_gentoo_setup-1 prompt_gentoo_setup
+
+ local i
+
+ # install miscellaneous scripts (bug #54520)
+ sed -e "s:/usr/local/bin/perl:${EPREFIX}/usr/bin/perl:g" \
+ -e "s:/usr/local/bin/zsh:${EPREFIX}/bin/zsh:g" \
+ -i {Util,Misc}/* || die
+ for i in Util Misc ; do
+ insinto /usr/share/zsh/${PV%_*}/${i}
+ doins ${i}/*
+ done
+
+ # install header files (bug #538684)
+ insinto /usr/include/zsh
+ doins config.h Src/*.epro
+ for i in Src/{zsh.mdh,*.h} ; do
+ sed -e 's@\.\./config\.h@config.h@' \
+ -e 's@#\(\s*\)include "\([^"]\+\)"@#\1include <zsh/\2>@' \
+ -i "${i}"
+ doins "${i}"
+ done
+
+ dodoc ChangeLog* META-FAQ NEWS README config.modules
+
+ if use doc ; then
+ pushd "${WORKDIR}/${PN}-${PV%_*}" >/dev/null
+ dohtml -r Doc/*
+ insinto /usr/share/doc/${PF}
+ doins Doc/zsh.{dvi,pdf}
+ popd >/dev/null
+ fi
+
+ docinto StartupFiles
+ dodoc StartupFiles/z*
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ echo
+ elog "If you want to enable Portage completions and Gentoo prompt,"
+ elog "emerge app-shells/gentoo-zsh-completions and add"
+ elog " autoload -U compinit promptinit"
+ elog " compinit"
+ elog " promptinit; prompt gentoo"
+ elog "to your ~/.zshrc"
+ echo
+ elog "Also, if you want to enable cache for the completions, add"
+ elog " zstyle ':completion::complete:*' use-cache 1"
+ elog "to your ~/.zshrc"
+ echo
+ elog "Note that a system zprofile startup file is installed. This will override"
+ elog "PATH and possibly other variables that a user may set in ~/.zshenv."
+ elog "Custom PATH settings and similar overridden variables can be moved to ~/.zprofile"
+ elog "or other user startup files that are sourced after the system zprofile."
+ echo
+ elog "If PATH must be set in ~/.zshenv to affect things like non-login ssh shells,"
+ elog "one method is to use a separate path-setting file that is conditionally sourced"
+ elog "in ~/.zshenv and also sourced from ~/.zprofile. For more information, see the"
+ elog "zshenv example in ${EROOT}/usr/share/doc/${PF}/StartupFiles/."
+ echo
+ elog "See https://wiki.gentoo.org/wiki/Zsh/HOWTO for more introduction documentation."
+ echo
+ fi
+}