blob: 7c599a3d2a98cfe32971b457db07152c4802dca2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{8..11} )
inherit autotools pam python-r1 usr-ldscript
DESCRIPTION="Library for password quality checking and generating random passwords"
HOMEPAGE="https://github.com/libpwquality/libpwquality"
SRC_URI="https://github.com/${PN}/${PN}/releases/download/${P}/${P}.tar.bz2"
LICENSE="|| ( BSD GPL-2 )"
SLOT="0"
KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="pam python static-libs"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
BDEPEND="
>=sys-devel/gettext-0.18.2
virtual/pkgconfig
"
RDEPEND="
>=sys-libs/cracklib-2.8:=[static-libs(+)?]
pam? ( sys-libs/pam )
python? ( ${PYTHON_DEPS} )
"
DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}"/${P}-musl-fgetpwent_r.patch
"${FILESDIR}"/${PN}-1.4.4-pam_pwquality-include.patch
)
src_prepare() {
default
# ensure pkgconfig files go in /usr
sed -e "s:\(pkgconfigdir *=\).*:\1 ${EPREFIX}/usr/$(get_libdir)/pkgconfig:" \
-i src/Makefile.{am,in} || die "sed failed"
# Needed for musl patch, drop on next release
eautoreconf
if use python ; then
# bug #830397
export SETUPTOOLS_USE_DISTUTILS=stdlib
python_copy_sources
fi
}
src_configure() {
# Install library in /lib for pam
configuring() {
local sitedir
econf \
--libdir="${EPREFIX}/$(get_libdir)" \
$(use_enable pam) \
--with-securedir="${EPREFIX}/$(getpam_mod_dir)" \
$(use_enable python python-bindings) \
$(usex python "--with-pythonsitedir=$(use python && python_get_sitedir)" "") \
$(use_enable static-libs static)
}
if_use_python_python_foreach_impl configuring
}
src_compile() {
if_use_python_python_foreach_impl default
}
src_test() {
if_use_python_python_foreach_impl default
}
src_install() {
if_use_python_python_foreach_impl default
if use static-libs; then
# Do not install static libs in /lib
mkdir -p "${ED}/usr/$(get_libdir)"
mv "${ED}/$(get_libdir)/libpwquality.a" "${ED}/usr/$(get_libdir)/" || die
gen_usr_ldscript libpwquality.so
fi
find "${ED}" -name '*.la' -delete || die
}
if_use_python_python_foreach_impl() {
if use python; then
python_foreach_impl run_in_build_dir "$@"
else
"$@"
fi
}
|