commit:     a476c1ddfbce8387848452b5ecdacb068da337c5
Author:     Ben Kohler <bkohler <AT> gentoo <DOT> org>
AuthorDate: Thu Jun 27 17:01:39 2024 +0000
Commit:     Ben Kohler <bkohler <AT> gentoo <DOT> org>
CommitDate: Thu Jun 27 17:31:51 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a476c1dd

sys-libs/ldb: add 2.8.1

Signed-off-by: Ben Kohler <bkohler <AT> gentoo.org>

 sys-libs/ldb/Manifest         |   1 +
 sys-libs/ldb/ldb-2.8.1.ebuild | 174 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 175 insertions(+)

diff --git a/sys-libs/ldb/Manifest b/sys-libs/ldb/Manifest
index b2fa40294e5a..9ed30b01e188 100644
--- a/sys-libs/ldb/Manifest
+++ b/sys-libs/ldb/Manifest
@@ -1,4 +1,5 @@
 DIST ldb-2.7.2.tar.gz 1737849 BLAKE2B 
0aa70d8a4827448e41874db97130f18d17683c800b8f03f9940b4852e24fd6092052f6e70aae845c587939b9be16c80d7a920f6b874a746f923c4513b73d2afc
 SHA512 
beb2cd83a8f128713e0b43ec6e80d0f87ab0883c6c8f0cefbbf5bf49e29dfa327b245b78467d1906917cb5f3f11e01cb76cc6bcca58a47c5deac4f05c2e9dfbd
 DIST ldb-2.8.0.tar.gz 1747616 BLAKE2B 
19fd4cc0893ca36e7aa65eb605b050e3faeb7add6c00a2dfd8415334c58b7dc644ffaad41c24fe358b39292aaa581e3231e6b8161b03c073e903cdae16050ac5
 SHA512 
b6f289af3137e02a8e3ee0588bc300d1756b8980558e0b3a3a9eee4449100ccd42ed873187dbdb334e7e7834a8bff8478cd4f20588d4ca834d9ea14c0ee2c2f9
+DIST ldb-2.8.1.tar.gz 1745790 BLAKE2B 
7b0fb70b510da85e9b1e67e9485ed9caf7635d4709e855f46243746f3a65cb9ccc1958f151868261b4aeb4efc6e6aa0054e19cf8f43b8bbebd7d41630af29cc7
 SHA512 
37e53cee1361303398cb0366760f08f2f306ed08c98354f5eb9ab2330d67b866ed0af07b252c204f77bbb260fe911337f3585015305b9d5e0ab2fcea6761b164
 DIST ldb-2.9.0.tar.gz 1757213 BLAKE2B 
6d24ced193a64e723da65f26a055b97e5c5645b0ce17263073db997e9310509c788e7739136b70d099d171d1d0cbbe43bb43ea50746d876d74a1be06fa2fc36f
 SHA512 
b5cfbbcb2c35d6830bf1a7c85e1d4363728ae474504441add54c4c8569316b26aedbf6fb9f561ec4f187eb5a847ac76af07396e38d00e6f7632b63e02d7b64a1
 DIST ldb-2.9.1.tar.gz 1752372 BLAKE2B 
dcff2bf54a31c787504eb206453f46f3ab5b7e106a9b0978ee3f2f3d5ef267d60cb0c21864bb78c31f71b815051757bd4becf6379ea26d32e151489e09835569
 SHA512 
a7384d5b88b1b2edc1ac40f38f74b8b2eb403610d158c579a862007801586a4ad1ba11019737ecad8a83e8f2d1ae7ae16ec7e92c58f60feb2d6fed84c4212265

diff --git a/sys-libs/ldb/ldb-2.8.1.ebuild b/sys-libs/ldb/ldb-2.8.1.ebuild
new file mode 100644
index 000000000000..1150a03d4d03
--- /dev/null
+++ b/sys-libs/ldb/ldb-2.8.1.ebuild
@@ -0,0 +1,174 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_REQ_USE="threads(+)"
+inherit python-single-r1 waf-utils multilib-minimal
+
+DESCRIPTION="LDAP-like embedded database"
+HOMEPAGE="https://ldb.samba.org";
+SRC_URI="https://samba.org/ftp/pub/${PN}/${P}.tar.gz";
+
+LICENSE="LGPL-3"
+SLOT="0/${PV}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 
~riscv ~s390 ~sparc ~x86"
+IUSE="doc ldap +lmdb python test"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+       test? ( lmdb )"
+
+RESTRICT="!test? ( test )"
+
+TALLOC_VERSION="2.4.1"
+TDB_VERSION="1.4.9"
+TEVENT_VERSION="0.15.0"
+
+RDEPEND="
+       dev-libs/libbsd[${MULTILIB_USEDEP}]
+       dev-libs/popt[${MULTILIB_USEDEP}]
+       >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}]
+       >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}]
+       >=sys-libs/tevent-${TEVENT_VERSION}[${MULTILIB_USEDEP}]
+       ldap? ( net-nds/openldap:= )
+       lmdb? ( >=dev-db/lmdb-0.9.16:=[${MULTILIB_USEDEP}] )
+       python? (
+               ${PYTHON_DEPS}
+               sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}]
+               sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}]
+               sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}]
+       )
+"
+DEPEND="
+       ${RDEPEND}
+       virtual/libcrypt
+       test? ( >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}] )
+"
+BDEPEND="${PYTHON_DEPS}
+       dev-libs/libxslt
+       virtual/pkgconfig
+       doc? ( app-text/doxygen )
+"
+
+WAF_BINARY="${S}/buildtools/bin/waf"
+
+MULTILIB_WRAPPED_HEADERS=( /usr/include/pyldb.h )
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-1.5.2-optional_packages.patch
+       "${FILESDIR}"/${PN}-1.1.31-fix_PKGCONFIGDIR-when-python-disabled.patch
+       "${FILESDIR}"/${PN}-2.4.2-skip-32bit-time_t-tests.patch
+       "${FILESDIR}"/${PN}-2.5.2-skip-waf-tevent-check.patch
+       "${FILESDIR}"/cmocka-config_h.patch
+)
+
+pkg_setup() {
+       # Package fails to build with distcc
+       export DISTCC_DISABLE=1
+       export PYTHONHASHSEED=1
+
+       # waf requires a python interpreter
+       python-single-r1_pkg_setup
+}
+
+check_samba_dep_versions() {
+       actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' 
lib/talloc/wscript || die)
+       if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then
+               eerror "Source talloc version: ${TALLOC_VERSION}"
+               eerror "Ebuild talloc version: ${actual_talloc_version}"
+               die "Ebuild needs to fix TALLOC_VERSION!"
+       fi
+
+       actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' 
lib/tdb/wscript || die)
+       if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then
+               eerror "Source tdb version: ${TDB_VERSION}"
+               eerror "Ebuild tdb version: ${actual_tdb_version}"
+               die "Ebuild needs to fix TDB_VERSION!"
+       fi
+
+       actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' 
lib/tevent/wscript || die)
+       if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then
+               eerror "Source tevent version: ${TEVENT_VERSION}"
+               eerror "Ebuild tevent version: ${actual_tevent_version}"
+               die "Ebuild needs to fix TEVENT_VERSION!"
+       fi
+}
+
+src_prepare() {
+       default
+
+       check_samba_dep_versions
+
+       if use test && ! use python ; then
+               # We want to be able to run tests w/o Python as it makes
+               # automated testing much easier (as USE=python isn't 
default-enabled).
+               truncate -s0 tests/python/{repack,index,api,crash}.py || die
+       fi
+
+       multilib_copy_sources
+}
+
+multilib_src_configure() {
+       # When specifying libs for samba build you must append NONE to the end 
to
+       # stop it automatically including things
+       local bundled_libs="NONE"
+
+       # We "use" bundled cmocka when we're not running tests as we're
+       # not using it anyway. Means we avoid making users install it for
+       # no reason. bug #802531
+       if ! use test; then
+               bundled_libs="cmocka,${bundled_libs}"
+       fi
+
+       local myconf=(
+               $(usex ldap '' --disable-ldap)
+               $(usex lmdb '' --without-ldb-lmdb)
+               --disable-rpath
+               --disable-rpath-install
+               --with-modulesdir="${EPREFIX}"/usr/$(get_libdir)/samba
+               --bundled-libraries="${bundled_libs}"
+               --builtin-libraries=NONE
+       )
+
+       if ! use python || ! multilib_is_native_abi; then
+               myconf+=( --disable-python )
+       fi
+
+       waf-utils_src_configure "${myconf[@]}"
+}
+
+multilib_src_compile() {
+       waf-utils_src_compile
+       multilib_is_native_abi && use doc && doxygen Doxyfile
+}
+
+multilib_src_test() {
+       if multilib_is_native_abi; then
+               WAF_MAKE=1 \
+               
PATH=buildtools/bin:../../../buildtools/bin:${PATH}:"${BUILD_DIR}"/bin/shared/private/
 \
+               
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:"${BUILD_DIR}"/bin/shared/private/:"${BUILD_DIR}"/bin/shared
 \
+               waf test || die
+       fi
+}
+
+multilib_src_install() {
+       waf-utils_src_install
+
+       if multilib_is_native_abi && use doc; then
+               doman  apidocs/man/man3/*.3
+               docinto html
+               dodoc -r apidocs/html/.
+       fi
+
+       # bug #726454
+       use python && python_optimize
+}
+
+pkg_postinst() {
+       if has_version sys-auth/sssd; then
+               ewarn "You have sssd installed. It is known to break after ldb 
upgrades,"
+               ewarn "so please try to rebuild it before reporting bugs."
+               ewarn "See https://bugs.gentoo.org/404281";
+       fi
+}

Reply via email to