commit:     b7562888f8a22755fa367afe52a7edd9ac14e32a
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 16 21:59:01 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Mar 16 22:01:02 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b7562888

sys-libs/cracklib: add 2.9.10

Closes: https://bugs.gentoo.org/897312
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-libs/cracklib/Manifest               |   1 +
 sys-libs/cracklib/cracklib-2.9.10.ebuild | 123 +++++++++++++++++++++++++++++++
 2 files changed, 124 insertions(+)

diff --git a/sys-libs/cracklib/Manifest b/sys-libs/cracklib/Manifest
index 1e2de84b4772..1d66101e9c18 100644
--- a/sys-libs/cracklib/Manifest
+++ b/sys-libs/cracklib/Manifest
@@ -1 +1,2 @@
+DIST cracklib-2.9.10.tar.bz2 620648 BLAKE2B 
f4ebf4aea6da81424a8b9fae9c204260f6020937b6b2b02cec13527f812e1751522a47a4432ff0a2a233eeb88fe0c8b7e7fd371f611a40bf2d34a10ddfd4fe83
 SHA512 
0c3856833f4c58fc1ebc63cc08b189c55e8d5722ef8cdc1cad5f717cef137a83648657e005e2d0367006b27aafa1bb63e36e7998918937733816635880c85f74
 DIST cracklib-2.9.8.tar.bz2 613017 BLAKE2B 
d9a5d922d6ac777b08cec9c427c0cde48666cdf67bf4136eb5866a0111b101c795dceb8e206e90bff31d1c8d26505bc1a950e8ea079562d8afd601641a7caf0c
 SHA512 
bba1b82067156f44095b282c70c06a05e58572cde7ad2430dd24c4b42ae98be86708ea86ba8b7104aa5887e16ac90d7cf3ae613b84ab9c0f7602307d78b75371

diff --git a/sys-libs/cracklib/cracklib-2.9.10.ebuild 
b/sys-libs/cracklib/cracklib-2.9.10.ebuild
new file mode 100644
index 000000000000..71fddeb64779
--- /dev/null
+++ b/sys-libs/cracklib/cracklib-2.9.10.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Note: ideally bump with sys-apps/cracklib-words
+
+DISTUTILS_OPTIONAL=1
+PYTHON_COMPAT=( python3_{9..11} )
+inherit distutils-r1 libtool multilib-minimal usr-ldscript
+
+MY_P=${P/_}
+DESCRIPTION="Password Checking Library"
+HOMEPAGE="https://github.com/cracklib/cracklib/";
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.bz2";
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 
~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="nls python static-libs zlib"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+       python? ( ${PYTHON_DEPS} )
+       zlib? ( >=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] )
+"
+DEPEND="
+       ${RDEPEND}
+       nls? ( virtual/libintl )
+"
+BDEPEND="
+       nls? ( sys-devel/gettext )
+       python? (
+               dev-python/setuptools[${PYTHON_USEDEP}]
+       )
+"
+
+do_python() {
+       multilib_is_native_abi || return 0
+       use python || return 0
+
+       pushd python > /dev/null || die
+       distutils-r1_src_${EBUILD_PHASE}
+       popd > /dev/null || die
+}
+
+pkg_setup() {
+       # Workaround bug #195017
+       if has unmerge-orphans ${FEATURES} && has_version 
"<${CATEGORY}/${PN}-2.8.10" ; then
+               eerror "Upgrade path is broken with FEATURES=unmerge-orphans"
+               eerror "Please run: FEATURES=-unmerge-orphans emerge cracklib"
+               die "Please run: FEATURES=-unmerge-orphans emerge cracklib"
+       fi
+}
+
+src_prepare() {
+       default
+
+       # bug ##269003
+       elibtoolize
+
+       do_python
+}
+
+multilib_src_configure() {
+       local myeconfargs=(
+               # use /usr/lib so that the dictionary is shared between ABIs
+               --with-default-dict="/usr/lib/cracklib_dict"
+               --without-python
+               $(use_enable nls)
+               $(use_enable static-libs static)
+       )
+
+       export ac_cv_header_zlib_h=$(usex zlib)
+       export ac_cv_search_gzopen=$(usex zlib -lz no)
+
+       ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_compile() {
+       default
+
+       do_python
+}
+
+multilib_src_test() {
+       default
+
+       # Make sure we load the freshly built library
+       LD_LIBRARY_PATH="${BUILD_DIR}/lib/.libs:${LD_LIBRARY_PATH}" do_python
+}
+
+python_test() {
+       ${EPYTHON} -m unittest test_cracklib || die "Tests fail with ${EPYTHON}"
+}
+
+multilib_src_install() {
+       default
+
+       # Move shared libs to /
+       gen_usr_ldscript -a crack
+
+       do_python
+}
+
+multilib_src_install_all() {
+       einstalldocs
+
+       find "${ED}" -type f -name "*.la" -delete || die
+       rm -r "${ED}"/usr/share/cracklib || die
+
+       insinto /usr/share/dict
+       doins dicts/cracklib-small
+}
+
+pkg_postinst() {
+       if [[ -z ${ROOT} ]] ; then
+               ebegin "Regenerating cracklib dictionary"
+               create-cracklib-dict "${EPREFIX}"/usr/share/dict/* > /dev/null
+               eend $?
+       fi
+}

Reply via email to