Diff openldap-2.6.3-r7 with a openldap-2.6.4-r1

/usr/portage/net-nds/openldap/openldap-2.6.4-r1.ebuild 2023-10-09 14:52:34.724368482 +0300
17 17
DESCRIPTION="LDAP suite of application and development tools"
18 18
HOMEPAGE="https://www.openldap.org/"
19 19
SRC_URI="
20
	https://gitlab.com/openldap/${PN}/-/archive/OPENLDAP_REL_ENG_${MY_PV}/${PN}-OPENLDAP_REL_ENG_${MY_PV}.tar.gz
20
	https://gitlab.com/openldap/${PN}/-/archive/OPENLDAP_REL_ENG_${MY_PV}/${PN}-OPENLDAP_REL_ENG_${MY_PV}.tar.bz2
21 21
	mirror://gentoo/${BIS_P}
22 22
"
23 23
S="${WORKDIR}"/${PN}-OPENLDAP_REL_ENG_${MY_PV}
......
25 25
LICENSE="OPENLDAP GPL-2"
26 26
# Subslot added for bug #835654
27 27
SLOT="0/$(ver_cut 1-2)"
28
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
28
KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
29 29

  
30 30
IUSE_DAEMON="argon2 +cleartext crypt experimental minimal samba tcpd"
31 31
IUSE_OVERLAY="overlays perl autoca"
......
41 41
	kerberos? ( ?? ( kinit smbkrb5passwd ) )"
42 42
RESTRICT="!test? ( test )"
43 43

  
44
SYSTEM_LMDB_VER=0.9.30
44 45
# openssl is needed to generate lanman-passwords required by samba
45 46
COMMON_DEPEND="
46 47
	kernel_linux? ( sys-apps/util-linux )
......
57 58
	!minimal? (
58 59
		dev-libs/libltdl
59 60
		sys-fs/e2fsprogs
60
		>=dev-db/lmdb-0.9.18:=
61
		>=dev-db/lmdb-${SYSTEM_LMDB_VER}:=
61 62
		argon2? ( app-crypt/argon2:= )
62 63
		crypt? ( virtual/libcrypt:= )
63 64
		tcpd? ( sys-apps/tcp-wrappers )
......
140 141
	"${FILESDIR}"/${PN}-2.6.1-cloak.patch
141 142
	"${FILESDIR}"/${PN}-2.6.1-flags.patch
142 143
	"${FILESDIR}"/${PN}-2.6.1-fix-missing-mapping.patch
143
	"${FILESDIR}"/${PN}-2.6.1-fix-bashism-configure.patch
144
	"${FILESDIR}"/${PN}-2.6.3-clang16.patch
144
	"${FILESDIR}"/${PN}-2.6.4-clang16.patch
145
	"${FILESDIR}"/${PN}-2.6.4-libressl.patch #903001
145 146
)
146 147

  
147 148
openldap_filecount() {
......
334 335
}
335 336

  
336 337
src_prepare() {
338
	# The system copy of dev-db/lmdb must match the version that this copy
339
	# of OpenLDAP shipped with! See bug #588792.
340
	#
341
	# Fish out MDB_VERSION_MAJOR/MDB_VERSION_MINOR/MDB_VERSION_PATCH from
342
	# the bundled lmdb's header to find out the version.
343
	local bundled_lmdb_version=$(sed -En '/^#define MDB_VERSION_(MAJOR|MINOR|PATCH)(\s+)?/{s/[^0-9.]//gp}' libraries/liblmdb/lmdb.h || die)
344
	printf -v bundled_lmdb_version "%s." ${bundled_lmdb_version}
345

  
346
	if [[ ${SYSTEM_LMDB_VER}. != ${bundled_lmdb_version} ]] ; then
347
		eerror "Source lmdb version: ${bundled_lmdb_version}"
348
		eerror "Ebuild lmdb version: ${SYSTEM_LMDB_VER}"
349
		die "Ebuild needs to update SYSTEM_LMDB_VER!"
350
	fi
351

  
337 352
	rm -r libraries/liblmdb || die 'could not removed bundled lmdb directory'
338 353

  
354
	local filename
339 355
	for filename in doc/drafts/draft-ietf-ldapext-acl-model-xx.txt; do
340
		iconv -f iso-8859-1 -t utf-8 "$filename" > "$filename.utf8"
341
		mv "$filename.utf8" "$filename"
356
		iconv -f iso-8859-1 -t utf-8 "${filename}" > "${filename}.utf8"
357
		mv "${filename}.utf8" "${filename}"
342 358
	done
343 359

  
344 360
	default
......
353 369
	einfo "Making sure upstream build strip does not do stripping too early"
354 370
	sed -i.orig \
355 371
		-e '/^STRIP/s,-s,,g' \
356
		top.mk || die "Failed to remove to early stripping"
372
		top.mk || die "Failed to remove too early stripping"
357 373
	popd &>/dev/null || die
358 374

  
375
	# Fails with OpenSSL 3, bug #848894
376
	# https://bugs.openldap.org/show_bug.cgi?id=10009
377
	rm tests/scripts/test076-authid-rewrite || die
378

  
359 379
	eautoreconf
360 380
	multilib_copy_sources
361 381
}
......
368 388
	emake \
369 389
		LDAP_BUILD="${BUILD_DIR}" prefix="${EPREFIX}/usr" \
370 390
		CC="${CC}" libexecdir="${EPREFIX}/usr/$(get_libdir)/openldap" \
371
		"$target"
391
		"${target}"
372 392
	popd &>/dev/null || die
373 393
}
374 394

  
......
388 408
		--without-fetch
389 409
	)
390 410

  
411
	if use experimental ; then
412
		# connectionless ldap per bug #342439
413
		# connectionless is a unsupported feature according to Howard Chu
414
		# see https://bugs.openldap.org/show_bug.cgi?id=9739
415
		# (see also bug #892009)
416
		append-flags -DLDAP_CONNECTIONLESS
417
	fi
418

  
391 419
	if ! use minimal && multilib_is_native_abi; then
392 420
		# SLAPD (Standalone LDAP Daemon) Options
393 421
		# overlay chaining requires '--enable-ldap' #296567
......
402 430
			$(use_enable tcpd wrappers)
403 431
		)
404 432
		if use experimental ; then
405
			# connectionless ldap per bug #342439
406
			# connectionless is a unsupported feature according to Howard Chu
407
			# see https://bugs.openldap.org/show_bug.cgi?id=9739
408
			append-cppflags -DLDAP_CONNECTIONLESS
409

  
410 433
			myconf+=(
411 434
				--enable-dynacl
412 435
				# ACI build as dynamic module not supported (yet)
......
525 548

  
526 549
	mkdir -p "${BUILD_DIR}"/contrib/ldapc++ || die "could not create ${BUILD_DIR}/contrib/ldapc++ directory"
527 550
	pushd "${BUILD_DIR}/contrib/ldapc++" &>/dev/null || die "pushd contrib/ldapc++"
528
	local LDFLAGS=${LDFLAGS}
529
	local CPPFLAGS=${CPPFLAGS}
530
	append-ldflags -L"${BUILD_DIR}"/libraries/liblber/.libs \
531
		-L"${BUILD_DIR}"/libraries/libldap/.libs
551

  
552
	local LDFLAGS="${LDFLAGS}"
553
	local CPPFLAGS="${CPPFLAGS}"
554

  
555
	append-ldflags -L"${BUILD_DIR}"/libraries/liblber/.libs -L"${BUILD_DIR}"/libraries/libldap/.libs
532 556
	append-cppflags -I"${BUILD_DIR}"/include
533
	ECONF_SOURCE=${S}/contrib/ldapc++ \
534
	econf "${myconf_ldapcpp[@]}"
557

  
558
	ECONF_SOURCE="${S}"/contrib/ldapc++ econf "${myconf_ldapcpp[@]}"
535 559
	popd &>/dev/null || die "popd contrib/ldapc++"
536 560
}
537 561

  
......
622 646
		$(tc-getCC) -shared \
623 647
			-I"${BUILD_DIR}"/include \
624 648
			-I../../../include \
649
			${CPPFLAGS} \
625 650
			${CFLAGS} \
626 651
			-fPIC \
627 652
			${LDFLAGS} \
......
633 658

  
634 659
multilib_src_test() {
635 660
	if multilib_is_native_abi; then
636
		cd "tests"
661
		cd tests || die
637 662
		pwd
663

  
664
		# Increase various test timeouts/delays, bug #894012
665
		# We can't just double everything as there's a cumulative effect.
666
		export SLEEP0=2 # originally 1
667
		export SLEEP1=10 # originally 7
668
		export SLEEP2=20 # originally 15
669
		export TIMEOUT=16 # originally 8
670

  
638 671
		# emake test => runs only lloadd & mdb, in serial; skips ldif,sql,wt,regression
639 672
		# emake partests => runs ALL of the tests in parallel
640 673
		# wt/WiredTiger is not supported in Gentoo
641 674
		TESTS=( plloadd pmdb )
642 675
		#TESTS+=( pldif ) # not done by default, so also exclude here
643 676
		#use odbc && TESTS+=( psql ) # not done by default, so also exclude here
677

  
644 678
		emake "${TESTS[@]}"
645 679
	fi
646 680
}
Thank you!