commit:     20e3b7a676646264206dd5502fed8974144495f0
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  5 01:04:46 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Sep  5 01:04:46 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=20e3b7a6

sys-libs/cracklib: add 2.9.8

Signed-off-by: Sam James <sam <AT> gentoo.org>

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

diff --git a/sys-libs/cracklib/Manifest b/sys-libs/cracklib/Manifest
index a50754412673..62a492d5dc60 100644
--- a/sys-libs/cracklib/Manifest
+++ b/sys-libs/cracklib/Manifest
@@ -1 +1,2 @@
 DIST cracklib-2.9.7.tar.bz2 603630 BLAKE2B 
81a45b2fb9f34da84d4fb864e1a9f67a4b22c246f1e4db1c599a555f79d560a04d95afb01a89cd3a2e0936f0e8fc51ff5ada26098c24d7af0777a94f51b82bbd
 SHA512 
f6bf65ac092ba46ff78ddbc115692260fb76dc71219cd679d2ea935ebfb9e709fbb30259a7406743ed00dbdc415335b3ac9d9fcba1d204ea36d5eb96bf1333a2
+DIST cracklib-2.9.8.tar.bz2 613017 BLAKE2B 
d9a5d922d6ac777b08cec9c427c0cde48666cdf67bf4136eb5866a0111b101c795dceb8e206e90bff31d1c8d26505bc1a950e8ea079562d8afd601641a7caf0c
 SHA512 
bba1b82067156f44095b282c70c06a05e58572cde7ad2430dd24c4b42ae98be86708ea86ba8b7104aa5887e16ac90d7cf3ae613b84ab9c0f7602307d78b75371

diff --git a/sys-libs/cracklib/cracklib-2.9.8.ebuild 
b/sys-libs/cracklib/cracklib-2.9.8.ebuild
new file mode 100644
index 000000000000..4ce5daed7e30
--- /dev/null
+++ b/sys-libs/cracklib/cracklib-2.9.8.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2022 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_{8..10} )
+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