35 |
35 |
|
36 |
36 |
DESCRIPTION="Light, fast and simple C library focused on standards-conformance and safety"
|
37 |
37 |
HOMEPAGE="https://musl.libc.org"
|
|
38 |
|
38 |
39 |
LICENSE="MIT LGPL-2 GPL-2"
|
39 |
40 |
SLOT="0"
|
40 |
|
IUSE="headers-only"
|
|
41 |
IUSE="crypt headers-only"
|
41 |
42 |
|
42 |
|
QA_SONAME="/usr/lib/libc.so"
|
43 |
|
QA_DT_NEEDED="/usr/lib/libc.so"
|
|
43 |
QA_SONAME="usr/lib/libc.so"
|
|
44 |
QA_DT_NEEDED="usr/lib/libc.so"
|
|
45 |
# bug #830213
|
|
46 |
QA_PRESTRIPPED="usr/lib/crtn.o"
|
|
47 |
|
|
48 |
# We want crypt on by default for this as sys-libs/libxcrypt isn't (yet?)
|
|
49 |
# built as part as crossdev. Also, elide the blockers when in cross-*,
|
|
50 |
# as it doesn't make sense to block the normal CBUILD libxcrypt at all
|
|
51 |
# there when we're installing into /usr/${CHOST} anyway.
|
|
52 |
if [[ ${CATEGORY} == cross-* ]] ; then
|
|
53 |
IUSE="${IUSE/crypt/+crypt}"
|
|
54 |
else
|
|
55 |
RDEPEND="crypt? ( !sys-libs/libxcrypt[system] )"
|
|
56 |
PDEPEND="!crypt? ( sys-libs/libxcrypt[system] )"
|
|
57 |
fi
|
44 |
58 |
|
45 |
59 |
is_crosscompile() {
|
46 |
60 |
[[ ${CHOST} != ${CTARGET} ]]
|
... | ... | |
132 |
146 |
local ldso=$(basename "${ED}"${sysroot}/lib/ld-musl-*)
|
133 |
147 |
dosym ${EPREFIX}${sysroot}/lib/${ldso} ${sysroot}/usr/bin/ldd
|
134 |
148 |
|
|
149 |
if ! use crypt ; then
|
|
150 |
# Allow sys-libs/libxcrypt[system] to provide it instead
|
|
151 |
rm "${ED}/usr/include/crypt.h" || die
|
|
152 |
rm "${ED}/usr/$(get_libdir)/libcrypt.a" || die
|
|
153 |
fi
|
|
154 |
|
135 |
155 |
if [[ ${CATEGORY} != cross-* ]] ; then
|
136 |
156 |
# Fish out of config:
|
137 |
157 |
# ARCH = ...
|
... | ... | |
161 |
181 |
dobin "${T}"/iconv
|
162 |
182 |
echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00musl || die
|
163 |
183 |
doenvd "${T}"/00musl
|
|
184 |
fi
|
|
185 |
|
|
186 |
if is_crosscompile ; then
|
|
187 |
into /usr/${CTARGET}
|
|
188 |
dolib.a libssp_nonshared.a
|
|
189 |
else
|
164 |
190 |
dolib.a libssp_nonshared.a
|
165 |
191 |
fi
|
166 |
192 |
}
|
167 |
193 |
|
|
194 |
pkg_preinst() {
|
|
195 |
# nothing to do if just installing headers
|
|
196 |
just_headers && return
|
|
197 |
|
|
198 |
# prepare /etc/ld.so.conf.d/ for files
|
|
199 |
mkdir -p "${EROOT}"/etc/ld.so.conf.d
|
|
200 |
}
|
|
201 |
|
168 |
202 |
pkg_postinst() {
|
169 |
203 |
is_crosscompile && return 0
|
170 |
204 |
|