1 |
Which means that glibc needs to be masked as it's static-linking is |
2 |
broken. |
3 |
|
4 |
I considered dietlibc as a replacement to klibc but: |
5 |
- dietlibc is maintained-needed too |
6 |
- it could be a elibc_glibc? in DEPEND but this would probably be a |
7 |
noblah USE flag |
8 |
- it would mean that arches where mksh is believed to work and some of |
9 |
our libc do but not dietlibc or klibc (like alpha with bug #487672) |
10 |
would be prevented from USE=static |
11 |
|
12 |
Closes: https://bugs.gentoo.org/653388 |
13 |
Signed-off-by: Haelwenn (lanodan) Monnier <contact@×××××××××.me> |
14 |
--- |
15 |
app-shells/mksh/mksh-57-r2.ebuild | 52 +++++++++++++++++++++++ |
16 |
app-shells/mksh/mksh-9999.ebuild | 12 +++--- |
17 |
profiles/base/package.use.mask | 4 ++ |
18 |
profiles/features/musl/package.use.mask | 3 ++ |
19 |
profiles/features/uclibc/package.use.mask | 3 ++ |
20 |
5 files changed, 68 insertions(+), 6 deletions(-) |
21 |
create mode 100644 app-shells/mksh/mksh-57-r2.ebuild |
22 |
|
23 |
diff --git a/app-shells/mksh/mksh-57-r2.ebuild b/app-shells/mksh/mksh-57-r2.ebuild |
24 |
new file mode 100644 |
25 |
index 00000000000..ae3367f2066 |
26 |
--- /dev/null |
27 |
+++ b/app-shells/mksh/mksh-57-r2.ebuild |
28 |
@@ -0,0 +1,52 @@ |
29 |
+# Copyright 1999-2019 Gentoo Authors |
30 |
+# Distributed under the terms of the GNU General Public License v2 |
31 |
+ |
32 |
+EAPI=7 |
33 |
+ |
34 |
+inherit toolchain-funcs |
35 |
+ |
36 |
+if [[ $PV = 9999 ]]; then |
37 |
+ inherit cvs |
38 |
+ ECVS_SERVER="anoncvs.mirbsd.org:/cvs" |
39 |
+ ECVS_MODULE="mksh" |
40 |
+ ECVS_USER="_anoncvs" |
41 |
+ ECVS_AUTH="ext" |
42 |
+ KEYWORDS="" |
43 |
+else |
44 |
+ SRC_URI="http://www.mirbsd.org/MirOS/dist/mir/mksh/${PN}-R${PV}.tgz" |
45 |
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~sh ~sparc ~x86 ~amd64-linux ~x86-linux" |
46 |
+fi |
47 |
+ |
48 |
+DESCRIPTION="MirBSD Korn Shell" |
49 |
+HOMEPAGE="http://mirbsd.de/mksh" |
50 |
+ |
51 |
+LICENSE="BSD" |
52 |
+SLOT="0" |
53 |
+IUSE="static test" |
54 |
+ |
55 |
+DEPEND=" |
56 |
+ test? ( |
57 |
+ dev-lang/perl |
58 |
+ sys-apps/ed |
59 |
+ ) |
60 |
+" |
61 |
+ |
62 |
+S="${WORKDIR}/${PN}" |
63 |
+ |
64 |
+src_compile() { |
65 |
+ tc-export CC |
66 |
+ use static && export LDSTATIC="-static" |
67 |
+ export CPPFLAGS="${CPPFLAGS} -DMKSH_DEFAULT_PROFILEDIR=\\\"${EPREFIX}/etc\\\"" |
68 |
+ sh Build.sh -r || die |
69 |
+} |
70 |
+ |
71 |
+src_install() { |
72 |
+ into / |
73 |
+ dobin mksh |
74 |
+ doman mksh.1 |
75 |
+ dodoc dot.mkshrc |
76 |
+} |
77 |
+ |
78 |
+src_test() { |
79 |
+ sh test.sh -v || die |
80 |
+} |
81 |
diff --git a/app-shells/mksh/mksh-9999.ebuild b/app-shells/mksh/mksh-9999.ebuild |
82 |
index 3aa638fe245..ae3367f2066 100644 |
83 |
--- a/app-shells/mksh/mksh-9999.ebuild |
84 |
+++ b/app-shells/mksh/mksh-9999.ebuild |
85 |
@@ -14,28 +14,28 @@ if [[ $PV = 9999 ]]; then |
86 |
KEYWORDS="" |
87 |
else |
88 |
SRC_URI="http://www.mirbsd.org/MirOS/dist/mir/mksh/${PN}-R${PV}.tgz" |
89 |
- KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux" |
90 |
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~sh ~sparc ~x86 ~amd64-linux ~x86-linux" |
91 |
fi |
92 |
|
93 |
DESCRIPTION="MirBSD Korn Shell" |
94 |
HOMEPAGE="http://mirbsd.de/mksh" |
95 |
+ |
96 |
LICENSE="BSD" |
97 |
SLOT="0" |
98 |
IUSE="static test" |
99 |
-RDEPEND="static? ( dev-libs/klibc )" |
100 |
+ |
101 |
DEPEND=" |
102 |
- ${RDEPEND} |
103 |
test? ( |
104 |
dev-lang/perl |
105 |
sys-apps/ed |
106 |
) |
107 |
" |
108 |
+ |
109 |
S="${WORKDIR}/${PN}" |
110 |
|
111 |
src_compile() { |
112 |
tc-export CC |
113 |
- # we want to build static with klibc |
114 |
- if use static; then export CC="/usr/bin/klcc"; export LDSTATIC="-static"; fi |
115 |
+ use static && export LDSTATIC="-static" |
116 |
export CPPFLAGS="${CPPFLAGS} -DMKSH_DEFAULT_PROFILEDIR=\\\"${EPREFIX}/etc\\\"" |
117 |
sh Build.sh -r || die |
118 |
} |
119 |
@@ -48,5 +48,5 @@ src_install() { |
120 |
} |
121 |
|
122 |
src_test() { |
123 |
- ./test.sh -v || die |
124 |
+ sh test.sh -v || die |
125 |
} |
126 |
diff --git a/profiles/base/package.use.mask b/profiles/base/package.use.mask |
127 |
index 11e10e8cf56..6d573a628c2 100644 |
128 |
--- a/profiles/base/package.use.mask |
129 |
+++ b/profiles/base/package.use.mask |
130 |
@@ -7,6 +7,10 @@ |
131 |
# This file is only for generic masks. For arch-specific masks (i.e. |
132 |
# mask everywhere, unmask on arch/*) use arch/base. |
133 |
|
134 |
+# Haelwenn (lanodan) Monnier <contact@×××××××××.me> (2019-09-19) |
135 |
+# broken static-linking in glibc and maybe others |
136 |
+>app-shells/mksh-57-r1 static |
137 |
+ |
138 |
# Michał Górny <mgorny@g.o> (2019-10-05) |
139 |
# net-libs/openslp is being removed. |
140 |
net-nds/openldap slp |
141 |
diff --git a/profiles/features/musl/package.use.mask b/profiles/features/musl/package.use.mask |
142 |
index 28e05a4e490..42fe7d31b2c 100644 |
143 |
--- a/profiles/features/musl/package.use.mask |
144 |
+++ b/profiles/features/musl/package.use.mask |
145 |
@@ -16,3 +16,6 @@ sys-fs/e2fsprogs nls |
146 |
# as a fail-only stub in musl. breaks horribly if enabled. |
147 |
# bash: xmalloc: locale.c:81: cannot allocate 18 bytes (0 bytes allocated) |
148 |
app-shells/bash mem-scramble |
149 |
+ |
150 |
+# static linking works with musl |
151 |
+app-shells/mksh -static |
152 |
diff --git a/profiles/features/uclibc/package.use.mask b/profiles/features/uclibc/package.use.mask |
153 |
index eb7b5dc0216..b00ae69a84a 100644 |
154 |
--- a/profiles/features/uclibc/package.use.mask |
155 |
+++ b/profiles/features/uclibc/package.use.mask |
156 |
@@ -22,3 +22,6 @@ dev-util/geany-plugins gtkspell |
157 |
# 'append-libs', but xfsdump's build system doesn't honor $LIBS. |
158 |
# So this is the best way for now. See 570548. |
159 |
sys-fs/xfsdump nls |
160 |
+ |
161 |
+# static linking works with uClibc |
162 |
+app-shells/mksh -static |
163 |
-- |
164 |
2.23.0 |