Gentoo Archives: gentoo-proxy-maint

From: "Michał Górny" <mgorny@g.o>
To: "Haelwenn (lanodan) Monnier" <contact@×××××××××.me>, gentoo-proxy-maint@l.g.o
Subject: Re: [gentoo-proxy-maint] [PATCH v3 2/2] app-shells/mksh: Add USE=lksh
Date: Sun, 01 Dec 2019 23:23:26
Message-Id: bd32ab22d3e31952947a0f5aa183b0f1022c528d.camel@gentoo.org
In Reply to: [gentoo-proxy-maint] [PATCH v3 2/2] app-shells/mksh: Add USE=lksh by "Haelwenn (lanodan) Monnier"
1 On Mon, 2019-11-25 at 08:27 +0100, Haelwenn (lanodan) Monnier wrote:
2 > lksh is a variant of mksh intended for legacy scripts and strict
3 > POSIX-compatibility
4 >
5 > Signed-off-by: Haelwenn (lanodan) Monnier <contact@×××××××××.me>
6 > ---
7 > app-shells/mksh/metadata.xml | 6 ++++++
8 > app-shells/mksh/mksh-57-r2.ebuild | 28 +++++++++++++++++++++++++++-
9 > app-shells/mksh/mksh-9999.ebuild | 28 +++++++++++++++++++++++++++-
10 > 3 files changed, 60 insertions(+), 2 deletions(-)
11 >
12 > diff --git a/app-shells/mksh/metadata.xml b/app-shells/mksh/metadata.xml
13 > index 9df017effeb..c22c0afc77d 100644
14 > --- a/app-shells/mksh/metadata.xml
15 > +++ b/app-shells/mksh/metadata.xml
16 > @@ -9,4 +9,10 @@
17 > <email>proxy-maint@g.o</email>
18 > <name>Proxy Maintainers</name>
19 > </maintainer>
20 > + <use>
21 > + <flag name="lksh">
22 > +variant that uses POSIX-compliant arithmetics with the host “long” data type
23 > +and is automatically in POSIX mode when called as /bin/sh
24 > + </flag>
25 > + </use>
26 > </pkgmetadata>
27 > diff --git a/app-shells/mksh/mksh-57-r2.ebuild b/app-shells/mksh/mksh-57-r2.ebuild
28 > index b818b1caf1a..7e960b91fc5 100644
29 > --- a/app-shells/mksh/mksh-57-r2.ebuild
30 > +++ b/app-shells/mksh/mksh-57-r2.ebuild
31 > @@ -23,7 +23,7 @@ HOMEPAGE="http://mirbsd.de/mksh"
32 >
33 > LICENSE="BSD"
34 > SLOT="0"
35 > -IUSE="static test"
36 > +IUSE="lksh static test"
37 > RESTRICT="!test? ( test )"
38 >
39 > DEPEND="
40 > @@ -35,10 +35,25 @@ DEPEND="
41 >
42 > S="${WORKDIR}/${PN}"
43 >
44 > +src_prepare() {
45 > + default
46 > + if use lksh; then
47 > + cp -pr "${S}" "${S}"_lksh || die
48 > + fi
49 > +}
50 > +
51 > src_compile() {
52 > tc-export CC
53 > use static && export LDSTATIC="-static"
54 > export CPPFLAGS="${CPPFLAGS} -DMKSH_DEFAULT_PROFILEDIR=\\\"${EPREFIX}/etc\\\""
55 > +
56 > + if use lksh; then
57 > + pushd "${S}"_lksh >/dev/null || die
58 > + CPPFLAGS="${CPPFLAGS} -DMKSH_BINSHPOSIX -DMKSH_BINSHREDUCED" \
59 > + sh Build.sh -r -L || die
60 > + popd >/dev/null || die
61 > + fi
62 > +
63 > sh Build.sh -r || die
64 > }
65 >
66 > @@ -47,8 +62,19 @@ src_install() {
67 > dobin mksh
68 > doman mksh.1
69 > dodoc dot.mkshrc
70 > +
71 > + dobin "${S}"_lksh/lksh
72 > + doman "${S}"_lksh/lksh.1
73 > }
74 >
75 > src_test() {
76 > + einfo "Testing regular mksh."
77 > ./mksh test.sh -v || die
78 > +
79 > + if use lksh; then
80 > + einfo "Testing lksh, POSIX long-bit mksh."
81 > + pushd "${S}"_lksh >/dev/null || die
82 > + ./lksh test.sh -v || die
83 > + popd >/dev/null || die
84 > + fi
85 > }
86 > diff --git a/app-shells/mksh/mksh-9999.ebuild b/app-shells/mksh/mksh-9999.ebuild
87 > index b818b1caf1a..7e960b91fc5 100644
88 > --- a/app-shells/mksh/mksh-9999.ebuild
89 > +++ b/app-shells/mksh/mksh-9999.ebuild
90 > @@ -23,7 +23,7 @@ HOMEPAGE="http://mirbsd.de/mksh"
91 >
92 > LICENSE="BSD"
93 > SLOT="0"
94 > -IUSE="static test"
95 > +IUSE="lksh static test"
96 > RESTRICT="!test? ( test )"
97 >
98 > DEPEND="
99 > @@ -35,10 +35,25 @@ DEPEND="
100 >
101 > S="${WORKDIR}/${PN}"
102 >
103 > +src_prepare() {
104 > + default
105 > + if use lksh; then
106 > + cp -pr "${S}" "${S}"_lksh || die
107 > + fi
108 > +}
109 > +
110 > src_compile() {
111 > tc-export CC
112 > use static && export LDSTATIC="-static"
113 > export CPPFLAGS="${CPPFLAGS} -DMKSH_DEFAULT_PROFILEDIR=\\\"${EPREFIX}/etc\\\""
114 > +
115 > + if use lksh; then
116 > + pushd "${S}"_lksh >/dev/null || die
117 > + CPPFLAGS="${CPPFLAGS} -DMKSH_BINSHPOSIX -DMKSH_BINSHREDUCED" \
118 > + sh Build.sh -r -L || die
119 > + popd >/dev/null || die
120 > + fi
121 > +
122 > sh Build.sh -r || die
123 > }
124 >
125 > @@ -47,8 +62,19 @@ src_install() {
126 > dobin mksh
127 > doman mksh.1
128 > dodoc dot.mkshrc
129 > +
130 > + dobin "${S}"_lksh/lksh
131 > + doman "${S}"_lksh/lksh.1
132
133 You're missing big 'if use lksh' here and above.
134
135 I'll just fix that and merge. Thanks.
136
137 > }
138 >
139 > src_test() {
140 > + einfo "Testing regular mksh."
141 > ./mksh test.sh -v || die
142 > +
143 > + if use lksh; then
144 > + einfo "Testing lksh, POSIX long-bit mksh."
145 > + pushd "${S}"_lksh >/dev/null || die
146 > + ./lksh test.sh -v || die
147 > + popd >/dev/null || die
148 > + fi
149 > }
150
151 --
152 Best regards,
153 Michał Górny

Attachments

File name MIME type
signature.asc application/pgp-signature