summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-shells/mksh/mksh-9999.ebuild')
-rw-r--r--app-shells/mksh/mksh-9999.ebuild68
1 files changed, 53 insertions, 15 deletions
diff --git a/app-shells/mksh/mksh-9999.ebuild b/app-shells/mksh/mksh-9999.ebuild
index 3aa638fe2453..9154bea1a42e 100644
--- a/app-shells/mksh/mksh-9999.ebuild
+++ b/app-shells/mksh/mksh-9999.ebuild
@@ -1,52 +1,90 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit toolchain-funcs
-if [[ $PV = 9999 ]]; then
- inherit cvs
+if [[ ${PV} == *9999 ]] ; then
ECVS_SERVER="anoncvs.mirbsd.org:/cvs"
ECVS_MODULE="mksh"
ECVS_USER="_anoncvs"
ECVS_AUTH="ext"
- KEYWORDS=""
+ inherit cvs
else
- SRC_URI="http://www.mirbsd.org/MirOS/dist/mir/mksh/${PN}-R${PV}.tgz"
- KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+ SRC_URI="https://www.mirbsd.org/MirOS/dist/mir/mksh/${PN}-R${PV}.tgz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
fi
DESCRIPTION="MirBSD Korn Shell"
+# Host is TLSv1.0-only, keep to http for compatibility with modern browsers
HOMEPAGE="http://mirbsd.de/mksh"
-LICENSE="BSD"
+
+# See http://www.mirbsd.org/TaC-mksh.txt or ${S}/www/files/TaC-mksh.txt
+# MirOS for most of it
+# BSD for when strlcpy(3) is absent, such as with glibc
+# unicode for some included Unicode data
+# ISC if the printf builtin is used, not currently the case
+LICENSE="MirOS BSD unicode"
SLOT="0"
-IUSE="static test"
-RDEPEND="static? ( dev-libs/klibc )"
+IUSE="lksh static test"
+RESTRICT="!test? ( test )"
+
DEPEND="
- ${RDEPEND}
test? (
dev-lang/perl
sys-apps/ed
)
"
+
S="${WORKDIR}/${PN}"
+src_prepare() {
+ default
+ if use lksh; then
+ cp -pr "${S}" "${S}"_lksh || die
+ fi
+}
+
src_compile() {
tc-export CC
- # we want to build static with klibc
- if use static; then export CC="/usr/bin/klcc"; export LDSTATIC="-static"; fi
+ use static && export LDSTATIC="-static"
export CPPFLAGS="${CPPFLAGS} -DMKSH_DEFAULT_PROFILEDIR=\\\"${EPREFIX}/etc\\\""
+
+ if use lksh; then
+ pushd "${S}"_lksh >/dev/null || die
+ CPPFLAGS="${CPPFLAGS} -DMKSH_BINSHPOSIX -DMKSH_BINSHREDUCED" \
+ sh Build.sh -r -L || die
+ popd >/dev/null || die
+ fi
+
sh Build.sh -r || die
+ sh FAQ2HTML.sh || die
+}
+
+src_test() {
+ einfo "Testing regular mksh."
+ ./mksh test.sh -v || die
+
+ if use lksh; then
+ einfo "Testing lksh, POSIX long-bit mksh."
+ pushd "${S}"_lksh >/dev/null || die
+ ./lksh test.sh -v || die
+ popd >/dev/null || die
+ fi
}
src_install() {
into /
dobin mksh
+ dosym mksh /bin/rmksh
doman mksh.1
dodoc dot.mkshrc
-}
+ dodoc FAQ.htm
-src_test() {
- ./test.sh -v || die
+ if use lksh; then
+ dobin "${S}"_lksh/lksh
+ dosym lksh /bin/rlksh
+ doman "${S}"_lksh/lksh.1
+ fi
}